comments.markAsSpam
メソッドはサポートされなくなりました。次の例は、YouTube Data API(v3)を使用してコメントに関連する機能を実行する方法を示しています。
動画のコメントを取得する
動画のコメント スレッドのリストを取得するには、commentThreads.list
メソッドを呼び出します。リクエストに次のパラメータ値を設定します。
-
part
: トップレベルのコメントのみを取得する場合はパラメータ値をsnippet
に設定し、トップレベルのコメントへの返信も取得する場合はsnippet,replies
に設定します。(commentThread
リソースにコメントへの返信がすべて含まれているとは限りません。特定のコメントのすべての返信を取得するには、comments.list
メソッドを使用する必要があります)。 -
videoId
: コメントを取得する動画の YouTube 動画 ID を指定します。
次のリクエストは、2014 年の Google I/O カンファレンスの基調講演の動画(動画 ID wtLJPvx7-ys
)に関連するコメントとコメントへの返信を取得します。
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &videoId=wtLJPvx7-ys
チャンネルに関するコメントやチャンネルに関連付けられたコメントを取得する
この API は、チャンネルに関するコメント スレッドを取得する機能と、チャンネルに関連付けられているすべてのコメント スレッドを取得する機能をサポートしています。後者の場合、API にはチャンネルに関するコメントや、チャンネルの動画に関するコメントが含まれる可能性があります。
- チャンネルに関するコメントを取得するには、動画のコメントを取得する手順に沿って操作します。ただし、
videoId
パラメータを設定する代わりに、channelId
パラメータを設定してチャネルを識別します。 - チャンネルに関連付けられているコメントを取得するには、動画のコメントを取得する手順に沿って操作します。ただし、
videoId
パラメータを設定する代わりに、allThreadsRelatedToChannelId
パラメータを設定してチャネルを識別します。
次のリクエストは、GoogleDevelopers YouTube チャンネルに関連付けられているすべてのコメント スレッドを取得します。
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.list? part=snippet,replies &allThreadsRelatedToChannelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
コメントを追加しています
commentThreads.insert
メソッドを呼び出して、チャンネルまたは動画に新しいトップレベルのコメントを追加します。リクエストの part
パラメータ値を snippet
に設定します。リクエストの本文は commentThread resource
で、snippet.topLevelComment[].snippet[].textOriginal
プロパティにコメント テキストが含まれます。このリクエストは OAuth 2.0 を使用して承認する必要があります。
- チャネルにコメントを追加するには、
snippet.channelId
プロパティを使用してチャネルを識別します。 - 動画にコメントを追加するには、
snippet.channelId
プロパティを使用して、動画をアップロードしたチャンネルを特定します。また、snippet.videoId
プロパティを使用して動画を識別します。
次のサンプル リクエストは、動画にコメントを追加します。
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.commentThreads.insert? part=snippet
このリクエストにより、次のリソースが挿入されます。
{ "snippet": { "channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw", "topLevelComment": { "snippet": { "textOriginal": "This video is awesome!" } }, "videoId": "MILSirUni5E" } }
コメントに返信する
comments.insert
メソッドを呼び出してコメントに返信します。リクエストの part
パラメータ値を snippet
に設定します。リクエストの本文は comment resource
で、snippet.textOriginal
プロパティにコメント テキストが含まれます。snippet.parentId
プロパティは、返信に関連付けられたコメントを識別します。値は commentThread resource's ID
です。このリクエストは OAuth 2.0 を使用して承認する必要があります。
次のサンプル リクエストは、既存のコメントに返信を追加します。
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.insert? part=snippet
このリクエストにより、次のリソースが挿入されます。APIs Explorer でリクエストを実行するには、snippet.parentId
プロパティの値を使用して、レスポンスに関連付けられているトップレベル コメントを特定します。commentThread
リソースの snippet.topLevelComment[].id
プロパティには、リソースの一意の ID を指定します。
{ "snippet": { "parentId": "COMMENT_THREAD_ID", "textOriginal": "That is true." } }
トップレベルのコメントまたはコメントへの返信を更新する
最上位のコメントまたは最上位のコメントへの返信のテキストを更新するには、comments.update
メソッドを呼び出します。part
パラメータの値を snippet
に設定します。リクエストの本文の id
プロパティには、変更するコメントと新しいコメント テキストを指定します。
- 最上位コメントを識別する
commentThread
リソースでは、snippet.topLevelComment[].id
プロパティでコメントの一意の ID を指定します。 - トップレベルのコメントまたはコメントへの返信を識別できる
comment
リソースでは、id
プロパティでコメントの一意の ID を指定します。
以下のサンプル リクエストは、既存のコメントのテキストを更新します。
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update? part=snippet
リクエストの本文には、次の JSON スニペットが含まれています。APIs Explorer でリクエストを実行するには、更新するコメントを識別するように id
プロパティの値を設定します。リクエストはコメントの投稿者によって承認されている必要があります。
{ "id": "COMMENT_ID", "snippet": { "textOriginal": "That is true." } }
コメントの管理ステータスを設定する
コメントの管理ステータスを設定するには、comments.setModerationStatus
メソッドを呼び出します。このアクションは、チャンネル所有者がチャンネルまたはチャンネルの動画のコメントを管理する場合に使用します。
このメソッドを呼び出すときに、コメントを識別する id
パラメータの値を設定します。また、moderationStatus
パラメータを目的のステータスに設定します。コメントのステータスを調整できるのは、コメントが表示されるチャンネルの所有者のみです。
-
ステップ 1: 確認のために保留されているコメントを取得する
commentThreads.list
メソッドを呼び出して、チャンネルまたは動画のコメントを取得します。moderationStatus
パラメータの値をheldForReview
に設定します。API レスポンスを使用して、コメントのリストを表示し、チャンネル所有者がコメントを公開または拒否するオプションを表示できます。 -
ステップ 2: コメントの管理ステータスを更新する
comments.setModerationStatus
メソッドを呼び出して、コメントのステータスを更新します。id
パラメータの値を使用して、コメントの一意の ID を指定します。moderationStatus
パラメータをpublished
またはrejected
に設定します。コメントを拒否する場合は、banAuthor
パラメータをtrue
に設定して、コメント投稿者がチャンネルまたは動画に追加のコメントを投稿できないようにすることもできます。
注: この API には、拒否されたコメントを一覧表示したり、検出したりするための方法はありません。ただし、コメントの一意の ID がわかれば、拒否されたコメントのモデレーション ステータスを published
に変更できます。また、コメントのモデレーション ステータスが published
または rejected
に更新された後、モデレーション ステータスを heldForReview
に戻すことはできません。
コメントを削除する
この例では、コメントを削除する方法を示します。この例では、次の手順を説明します。
-
ステップ 1: コメント ID を取得する
上記の手順に沿って、動画またはチャンネルのコメントのリストを取得します。コメントを削除できるのは投稿者のみであるため、そのユーザーが特定のコメントを削除できるかどうかを判断するには、
comment
リソースのsnippet.authorChannelId.value
プロパティの値を認証済みユーザーのチャンネル ID と比較する必要があります。 -
ステップ 2: コメントまたはコメント スレッドを削除する
削除するコメント スレッドまたはコメントの ID を特定したら、
comments.delete
メソッドを呼び出してそのコメントを削除します。id
パラメータ値を使用して、削除するコメント ID またはコメント スレッド ID を指定します。リクエストは OAuth 2.0 を使用して承認する必要があります。API Explorer でこのクエリをテストする場合は、次のリクエストのid
パラメータ値に有効なコメント ID またはコメント スレッド ID を指定する必要があります。https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete? id=COMMENT_ID