Implementasi: Komentar

Metode comments.markAsSpam tidak lagi didukung.

Contoh berikut menunjukkan cara menggunakan YouTube Data API (v3) untuk menjalankan fungsi yang terkait dengan komentar.

Mengambil komentar untuk video

Untuk mengambil daftar rangkaian komentar untuk video, panggil metode commentThreads.list. Tetapkan parameter value berikut dalam permintaan Anda:

  • part: Setel nilai parameter ke snippet jika Anda hanya ingin mengambil komentar tingkat teratas atau ke snippet,replies jika Anda juga ingin mengambil balasan untuk komentar tingkat teratas. (Perhatikan bahwa resource commentThread tidak selalu berisi semua balasan untuk komentar, dan Anda perlu menggunakan metode comments.list jika ingin mengambil semua balasan untuk komentar tertentu.)

  • videoId: Menentukan ID video YouTube dari video yang komentarnya akan Anda terima.

Permintaan di bawah ini mengambil komentar dan balasan komentar terkait video keynote pada konferensi Google I/O 2014, yang memiliki ID video wtLJPvx7-ys.

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

Mengambil komentar tentang atau yang terkait dengan channel

API ini mendukung kemampuan untuk mengambil rangkaian komentar tentang channel atau mengambil semua rangkaian komentar yang terkait dengan channel. Untuk kasus yang kedua, API ini dapat berisi komentar tentang channel atau video apa pun di channel tersebut.

Permintaan di bawah ini mengambil semua rangkaian komentar yang terkait dengan channel YouTube GoogleDevelopers:

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

Menambahkan komentar

Panggil metode commentThreads.insert untuk menambahkan komentar tingkat atas baru ke channel atau video. Tetapkan parameter value part permintaan ke snippet. Isi permintaan adalah commentThread resource tempat properti snippet.topLevelComment[].snippet[].textOriginal berisi teks komentar. Permintaan ini harus diotorisasi menggunakan OAuth 2.0.

  • Untuk menambahkan komentar ke channel, gunakan properti snippet.channelId untuk mengidentifikasi channel.
  • Untuk menambahkan komentar pada video, gunakan properti snippet.channelId untuk mengidentifikasi channel yang mengupload video tersebut. Selain itu, gunakan properti snippet.videoId untuk mengidentifikasi video.

Contoh permintaan berikut menambahkan komentar ke video.

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

Permintaan menyisipkan resource yang ditampilkan di bawah ini.

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

Membalas komentar

Panggil metode comments.insert untuk membalas komentar. Tetapkan parameter value part permintaan ke snippet. Isi permintaan adalah comment resource tempat properti snippet.textOriginal berisi teks komentar. Properti snippet.parentId mengidentifikasi komentar yang terkait dengan balasan, dan nilainya adalah commentThread resource's ID. Permintaan ini harus diotorisasi menggunakan OAuth 2.0.

Contoh permintaan berikut menambahkan balasan ke komentar yang ada.

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

Permintaan menyisipkan resource yang ditampilkan di bawah ini. Untuk menjalankan permintaan di Penjelajah API, gunakan nilai properti snippet.parentId untuk mengidentifikasi komentar tingkat teratas yang terkait dengan balasan. Dalam resource commentThread, properti snippet.topLevelComment[].id menentukan ID unik resource.

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

Memperbarui komentar tingkat atas atau balasan komentar

Untuk memperbarui teks komentar tingkat atas atau balasan untuk komentar tingkat atas, panggil metode comments.update. Tetapkan nilai parameter part ke snippet. Dalam isi permintaan, properti id mengidentifikasi komentar yang Anda ubah dan teks komentar baru.

  • Di resource commentThread, yang mengidentifikasi komentar tingkat teratas, properti snippet.topLevelComment[].id menentukan ID unik komentar.
  • Di resource comment, yang dapat mengidentifikasi komentar tingkat atas atau balasan untuk komentar, properti id akan menentukan ID unik komentar.

Contoh permintaan di bawah ini memperbarui teks komentar yang sudah ada.

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

Isi permintaan berisi cuplikan JSON yang ditampilkan di bawah ini. Untuk menjalankan permintaan di Penjelajah API, setel nilai properti id guna mengidentifikasi komentar yang Anda perbarui. Permintaan ini harus diotorisasi oleh penulis komentar.

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

Menetapkan status moderasi komentar

Untuk menetapkan status moderasi komentar, panggil metode comments.setModerationStatus. Tindakan ini digunakan saat pemilik channel memoderasi komentar di channel atau video channel.

Saat memanggil metode ini, tetapkan nilai parameter id untuk mengidentifikasi komentar. Tetapkan juga parameter moderationStatus ke status yang diinginkan. Status komentar hanya dapat disesuaikan oleh pemilik channel tempat komentar tersebut muncul.

  • Langkah 1: Ambil komentar yang ditahan untuk ditinjau

    Panggil metode commentThreads.list untuk mengambil komentar untuk channel atau video. Tetapkan nilai parameter moderationStatus ke heldForReview. Respons API dapat digunakan untuk menampilkan daftar komentar dengan opsi bagi pemilik channel untuk memublikasikan atau menolak setiap komentar.

  • Langkah 2: Perbarui status moderasi komentar

    Panggil metode comments.setModerationStatus untuk memperbarui status komentar. Gunakan nilai parameter id untuk menentukan ID unik komentar. Tetapkan parameter moderationStatus ke published atau rejected. Jika menolak komentar, Anda juga dapat menyetel parameter banAuthor ke true untuk mencegah penulis membuat komentar tambahan di channel atau video.

Catatan: API ini tidak menyediakan cara untuk menampilkan daftar atau menemukan komentar yang ditolak. Namun, Anda masih dapat mengubah status moderasi komentar yang ditolak menjadi published jika ID unik komentar diketahui. Selain itu, setelah status moderasi komentar diperbarui menjadi published atau rejected, status moderasi tidak dapat diubah kembali ke heldForReview.

Menghapus komentar

Contoh ini menunjukkan cara menghapus komentar. Contoh tersebut berisi langkah-langkah berikut:

  • Langkah 1: Ambil ID komentar

    Ikuti langkah-langkah di atas untuk mengambil daftar komentar untuk video atau channel. Ingat bahwa komentar hanya dapat dihapus oleh penulisnya, jadi Anda perlu membandingkan nilai properti snippet.authorChannelId.value resource comment dengan ID channel pengguna terautentikasi untuk menentukan apakah pengguna dapat menghapus komentar tersebut atau tidak.

  • Langkah 2: Hapus rangkaian komentar atau komentar

    Setelah mengidentifikasi ID rangkaian komentar atau komentar yang ingin dihapus, panggil metode comments.delete untuk menghapus komentar tersebut. Gunakan nilai parameter id untuk mengidentifikasi ID komentar atau ID rangkaian pesan komentar yang Anda hapus. Permintaan harus diotorisasi menggunakan OAuth 2.0. Jika Anda menguji kueri ini di Penjelajah API, Anda harus mengganti ID komentar atau ID rangkaian pesan komentar yang valid untuk nilai parameter id dalam permintaan di bawah ini.

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