Удалить комментарий, используя данные API YouTube V3?

Как владелец канала, я пытаюсь удалить комментарии, опубликованные в моих видео и в разделе обсуждений другими пользователями.

Я не могу найти какую-либо информацию о функции в документации API. Я могу вызвать функцию удаления с идентификатором комментария, но она работает только с комментариями, которые опубликовал пользователь, вошедший в API. Я хотел бы вызвать ту же функцию, описанную на этом рисунке, и она доступна на YouTube:

Мне нужно вызвать эту функцию удаления из API

Вот ссылка на комментарий API.

2 ответа

Решение

Ответ, который я получил от Google:

"Вы не можете удалять комментарии, которые не были сделаны вашей собственной учетной записью. Чтобы удалить и модерировать комментарии других пользователей к своим видео, используйте API setModerationStatus, описанный здесь: https://developers.google.com/youtube/v3/docs/comments/setModerationStatus"

Вы можете установить статус модерации как отклоненный, и он будет иметь те же функции.

Вы будете использовать Comments.delete Это потребует от вас пройти commentId удалить конкретный комментарий. Есть несколько способов получить commentId, так как я использую этот запрос URI GET:

https://www.googleapis.com/youtube/v3/commentThreads?part=snippet&videoId={VIDEO_ID}&key={API_KEY}

Вы получите ответ как:

"items": [
  {
   "kind": "youtube#commentThread",
   "etag": "\"5C5HHOaBSHC5ZXfkrT4ZlRCi01A/wQo7nKuPMjPTCeeV9ofDLff8KhY\"",
   "id": "z12ojxq5qwjlulz4o04cc5vxauuaubkbovk0k",
   "snippet": {
    "videoId": "Ez4nKZ2BeTU",
    "topLevelComment": {
     "kind": "youtube#comment",
     "etag": "\"5C5HHOaBSHC5ZXfkrT4ZlRCi01A/Ifn8tdeFUJiclXThCp44Cib6-cU\"",
     "id": "z12ojxq5qwjlulz4o04cc5vxauuaubkbovk0k", //this is the commentId you will use to delete the comment
     "snippet": {
      "authorDisplayName": "...",
      "authorProfileImageUrl": "...",
      "authorChannelUrl": "...",
      "authorChannelId": {
       "value": "..."
      },
      "videoId": "Ez4nKZ2BeTU",
      "textDisplay": "deleteme\ufeff", //this is my comment which I would like to delete
      ...

Использовать commentId и передайте это в Comments.delete Попробуйте удалить комментарий. В случае успеха он вернет статус 204. Такова концепция. Надеюсь это поможет.

Другие вопросы по тегам