comments.markAsSpam
больше не поддерживается.В следующих примерах показано, как использовать API данных YouTube (v3) для выполнения функций, связанных с комментариями.
Получить комментарии к видео
Чтобы получить список цепочек комментариев к видео, вызовите метод commentThreads.list
. Установите следующие значения параметров в вашем запросе:
part
: установите значение параметраsnippet
, если вы хотите получать только комментарии верхнего уровня, илиsnippet,replies
если вы также хотите получать ответы на комментарии верхнего уровня. (Обратите внимание, что ресурсcommentThread
не обязательно содержит все ответы на комментарий, и вам необходимо использовать методcomments.list
, если вы хотите получить все ответы на конкретный комментарий.)videoId
: укажите идентификатор видео YouTube, для которого вы получаете комментарии.
Приведенный ниже запрос извлекает комментарии и ответы на комментарии, относящиеся к видео основного выступления на конференции Google I/O 2014 года, которое имеет идентификатор видео 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
Запрос вставляет ресурс, показанный ниже. Чтобы выполнить запрос в API Explorer, используйте значение свойства snippet.parentId
, чтобы идентифицировать комментарий верхнего уровня, связанный с ответом. В ресурсе commentThread
свойство snippet.topLevelComment[].id
указывает уникальный идентификатор ресурса.
{ "snippet": { "parentId": "COMMENT_THREAD_ID", "textOriginal": "That is true." } }
Обновление комментария верхнего уровня или ответа на комментарий
Чтобы обновить текст комментария верхнего уровня или ответа на комментарий верхнего уровня, вызовите метод comments.update
. Установите значение параметра part
snippet
. В теле запроса свойство id
идентифицирует комментарий, который вы изменяете, и текст нового комментария.
- В ресурсе
commentThread
, который идентифицирует комментарий верхнего уровня, свойствоsnippet.topLevelComment[].id
указывает уникальный идентификатор комментария. - В ресурсе
comment
, который может идентифицировать либо комментарий верхнего уровня, либо ответ на комментарий, свойствоid
указывает уникальный идентификатор комментария.
В приведенном ниже примере запроса обновляется текст существующего комментария.
https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.update? part=snippet
Тело запроса содержит фрагмент JSON, показанный ниже. Чтобы выполнить запрос в API Explorer, установите значение свойства id
, чтобы идентифицировать обновляемый комментарий. Запрос должен быть одобрен автором комментария.
{ "id": "COMMENT_ID", "snippet": { "textOriginal": "That is true." } }
Установить статус модерации комментария
Чтобы установить статус модерации комментария, вызовите метод comments.setModerationStatus
. Это действие используется, когда владелец канала модерирует комментарии к каналу или видео канала.
При вызове этого метода установите значение параметра id
, чтобы идентифицировать комментарий. Также установите параметр moderationStatus
в желаемый статус. Статус комментария может изменить только владелец канала, на котором появляется комментарий.
Шаг 1. Получите комментарии, отправленные на проверку.
Вызовите метод
commentThreads.list
, чтобы получить комментарии к каналу или видео. Установите для параметраmoderationStatus
heldForReview
. Ответ API можно использовать для отображения списка комментариев с возможностью владельца канала опубликовать или отклонить каждый из них.Шаг 2. Обновите статус модерации комментария.
Вызовите метод
comments.setModerationStatus
, чтобы обновить статус комментария. Используйте значение параметраid
, чтобы указать уникальный идентификатор комментария. Установите для параметраmoderationStatus
значениеpublished
илиrejected
. Если вы отклоняете комментарий, вы также можете установить для параметраbanAuthor
значениеtrue
, чтобы запретить автору оставлять дополнительные комментарии к каналу или видео.
Примечание. API не предоставляет возможности составить список или иным образом обнаружить отклоненные комментарии. Однако вы все равно можете изменить статус модерации отклоненного комментария на published
, если известен уникальный идентификатор комментария. Кроме того, как только статус модерации комментария изменится на published
» или rejected
, статус модерации не может быть изменен обратно на heldForReview
.
Удалить комментарий
В этом примере показано, как удалить комментарий. В примере есть следующие шаги:
Шаг 1. Получите идентификатор комментария.
Выполните описанные выше действия, чтобы получить список комментариев к видео или каналу. Помните, что комментарий может быть удален только его автором, поэтому вам нужно будет сравнить значение свойства
snippet.authorChannelId.value
ресурсаcomment
с идентификатором канала аутентифицированного пользователя, чтобы определить, может ли пользователь удалить этот конкретный комментарий.Шаг 2. Удалите комментарий или ветку комментариев.
Определив идентификатор ветки комментариев или комментария, который вы удаляете, вызовите метод
comments.delete
, чтобы удалить этот комментарий. Используйте значение параметраid
, чтобы определить идентификатор комментария или идентификатор цепочки комментариев, которую вы удаляете. Запрос должен быть авторизован с использованием OAuth 2.0. Если вы тестируете этот запрос в API Explorer, вам нужно будет заменить действительный идентификатор комментария или идентификатор потока комментариев на значение параметраid
в приведенном ниже запросе.https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.comments.delete? id=COMMENT_ID