Implementierung: Kommentare

Die Methode comments.markAsSpam wird nicht mehr unterstützt.

In den folgenden Beispielen wird gezeigt, wie Sie mit der YouTube Data API (v3) Funktionen im Zusammenhang mit Kommentaren ausführen.

Kommentare zu einem Video abrufen

Wenn Sie eine Liste der Kommentarthreads für ein Video abrufen möchten, rufen Sie die Methode commentThreads.list auf. Legen Sie in Ihrer Anfrage die folgenden Parameterwerte fest:

  • part: Legen Sie den Parameterwert auf snippet fest, wenn Sie nur Kommentare der obersten Ebene abrufen möchten, oder auf snippet,replies, wenn Sie auch Antworten auf Kommentare der obersten Ebene abrufen möchten. Eine commentThread-Ressource enthält nicht unbedingt alle Antworten auf einen Kommentar. Wenn Sie alle Antworten auf einen bestimmten Kommentar abrufen möchten, müssen Sie die Methode comments.list verwenden.

  • videoId: Geben Sie die YouTube-Video-ID des Videos an, für das Sie Kommentare abrufen.

Mit der folgenden Anfrage werden Kommentare und Antworten auf Kommentare zum Video der Keynote-Rede auf der Google I/O 2014 abgerufen. Das Video hat die ID wtLJPvx7-ys.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list?
part=snippet,replies
&videoId=wtLJPvx7-ys

Kommentare zu oder im Zusammenhang mit einem Kanal abrufen

Mit der API können Sie entweder Kommentar-Threads zu einem Kanal oder alle Kommentar-Threads abrufen, die mit einem Kanal verknüpft sind. Im letzteren Fall kann die API Kommentare zum Kanal oder zu einem der Videos des Kanals enthalten.

Mit der folgenden Anfrage werden alle Kommentarthreads abgerufen, die mit dem YouTube-Kanal GoogleDevelopers verknüpft sind:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list?
part=snippet,replies
&allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw

Kommentar hinzufügen

Rufen Sie die Methode commentThreads.insert auf, um einen neuen Kommentar der obersten Ebene zu einem Kanal oder Video hinzuzufügen. Legen Sie den Wert des Parameters part der Anfrage auf snippet fest. Der Text der Anfrage ist eine commentThread resource in der die Eigenschaft snippet.topLevelComment[].snippet[].textOriginal den Kommentartext enthält. Diese Anfrage muss mit OAuth 2.0 autorisiert werden.

  • Wenn Sie einem Kanal einen Kommentar hinzufügen möchten, verwenden Sie die Eigenschaft snippet.channelId, um den Kanal zu identifizieren.
  • Wenn Sie einem Video einen Kommentar hinzufügen möchten, verwenden Sie die Eigenschaft snippet.channelId, um den Kanal zu identifizieren, auf den das Video hochgeladen wurde. Verwenden Sie außerdem die Eigenschaft snippet.videoId, um das Video zu identifizieren.

Mit der folgenden Beispielanfrage wird einem Video ein Kommentar hinzugefügt.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert?
part=snippet

Mit der Anfrage wird die unten gezeigte Ressource eingefügt.

{
 "snippet": {
  "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
  "topLevelComment": {
   "snippet": {
    "textOriginal": "This video is awesome!"
   }
  },
  "videoId": "MILSirUni5E"
 }
}

Auf Kommentare antworten

Rufen Sie die Methode comments.insert auf, um auf einen Kommentar zu antworten. Legen Sie den Wert des Parameters part der Anfrage auf snippet fest. Der Text der Anfrage ist eine comment resource in der die snippet.textOriginal Eigenschaft den Kommentartext enthält. Die Eigenschaft snippet.parentId identifiziert den Kommentar, mit dem die Antwort verknüpft ist. Der Wert ist ein commentThread resource's ID. Diese Anfrage muss mit OAuth 2.0 autorisiert werden.

Mit der folgenden Beispielanfrage wird einem vorhandenen Kommentar eine Antwort hinzugefügt.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert?
part=snippet

Mit der Anfrage wird die unten gezeigte Ressource eingefügt. Wenn Sie die Anfrage im APIs Explorer ausführen möchten, verwenden Sie den Wert der Eigenschaft snippet.parentId, um den Kommentar der obersten Ebene zu identifizieren, mit dem die Antwort verknüpft ist. In einer commentThread-Ressource gibt die Eigenschaft snippet.topLevelComment[].id die eindeutige ID der Ressource an.

{
  "snippet": {
    "parentId": "COMMENT_THREAD_ID",
    "textOriginal": "That is true."
  }
}

Kommentar der obersten Ebene oder Antwort auf einen Kommentar aktualisieren

Wenn Sie den Text eines Kommentars der obersten Ebene oder einer Antwort auf einen Kommentar der obersten Ebene aktualisieren möchten, rufen Sie die Methode comments.update auf. Legen Sie den Wert des Parameters part auf snippet fest. Im Anfragetext identifiziert die Eigenschaft id den Kommentar, den Sie ändern, und den neuen Kommentartext.

  • In einer commentThread-Ressource, die einen Kommentar der obersten Ebene identifiziert, gibt die Eigenschaft snippet.topLevelComment[].id die eindeutige ID des Kommentars an.
  • In einer comment-Ressource, die entweder einen Kommentar der obersten Ebene oder eine Antwort auf einen Kommentar identifizieren kann, gibt die Eigenschaft id die eindeutige ID des Kommentars an.

Mit der folgenden Beispielanfrage wird der Text eines vorhandenen Kommentars aktualisiert.

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update?
part=snippet

Der Anfragetext enthält das unten gezeigte JSON-Snippet. Wenn Sie die Anfrage im APIs Explorer ausführen möchten, legen Sie den Wert der Eigenschaft id fest, um den Kommentar zu identifizieren, den Sie aktualisieren. Die Anfrage muss vom Autor des Kommentars autorisiert werden.

{
  "id": "COMMENT_ID",
  "snippet": {
    "textOriginal": "That is true."
  }
}

Moderationsstatus eines Kommentars festlegen

Wenn Sie den Moderationsstatus eines Kommentars festlegen möchten, rufen Sie die Methode comments.setModerationStatus auf. Diese Aktion wird verwendet, wenn ein Kanalinhaber Kommentare auf dem Kanal oder in den Videos des Kanals moderiert.

Legen Sie beim Aufrufen dieser Methode den Wert des Parameters id fest, um den Kommentar zu identifizieren. Legen Sie außerdem den Parameter moderationStatus auf den gewünschten Status fest. Der Status eines Kommentars kann nur vom Inhaber des Kanals geändert werden, auf dem der Kommentar erscheint.

  • Schritt 1: Kommentare abrufen, die zur Überprüfung zurückgehalten werden

    Rufen Sie die Methode commentThreads.list auf, um Kommentare für den Kanal oder das Video abzurufen. Legen Sie den Wert des Parameters moderationStatus auf heldForReview fest. Die API-Antwort kann verwendet werden, um eine Liste von Kommentaren mit einer Option für den Kanalinhaber anzuzeigen, jeden Kommentar zu veröffentlichen oder abzulehnen.

  • Schritt 2: Moderationsstatus eines Kommentars aktualisieren

    Rufen Sie die Methode comments.setModerationStatus auf, um den Status des Kommentars zu aktualisieren. Verwenden Sie den Wert des Parameters id, um die eindeutige ID des Kommentars anzugeben. Legen Sie den Parameter moderationStatus auf published oder rejected fest. Wenn Sie einen Kommentar ablehnen, können Sie den Parameter banAuthor auch auf true setzen, um zu verhindern, dass der Autor weitere Kommentare auf dem Kanal oder im Video hinterlässt.

Hinweis:Die API bietet keine Möglichkeit, abgelehnte Kommentare aufzulisten oder anderweitig zu finden. Sie können den Moderationsstatus eines abgelehnten Kommentars jedoch weiterhin in published ändern, wenn die eindeutige ID des Kommentars bekannt ist. Außerdem kann der Moderationsstatus eines Kommentars, nachdem er auf published oder rejected aktualisiert wurde, nicht mehr in heldForReview geändert werden.

Kommentare entfernen

In diesem Beispiel wird gezeigt, wie Sie einen Kommentar löschen. Das Beispiel umfasst die folgenden Schritte:

  • Schritt 1: Kommentar-ID abrufen

    Folgen Sie der Anleitung oben, um eine Liste von Kommentaren für ein Video oder einen Kanal abzurufen. Ein Kommentar kann nur von seinem Autor gelöscht werden. Sie müssen daher den Wert der Eigenschaft snippet.authorChannelId.value einer comment-Ressource mit der Kanal-ID des authentifizierten Nutzers vergleichen, um festzustellen, ob der Nutzer diesen Kommentar löschen kann.

  • Schritt 2: Kommentar oder Kommentarthread löschen

    Sobald Sie die ID des Kommentar-Threads oder Kommentars ermittelt haben, den Sie löschen möchten, rufen Sie die Methode comments.delete auf, um den Kommentar zu löschen. Verwenden Sie den Wert des Parameters id, um die Kommentar-ID oder Kommentarthread-ID zu identifizieren, die Sie löschen. Die Anfrage muss mit OAuth 2.0 autorisiert werden. Wenn Sie diese Abfrage im APIs Explorer testen, müssen Sie den Wert des Parameters id in der folgenden Anfrage durch eine gültige Kommentar-ID oder Kommentarthread-ID ersetzen.

    https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete?
    id=COMMENT_ID