API Reference

YouTube Data API memungkinkan Anda menggabungkan fungsi yang biasanya dijalankan di situs YouTube ke dalam situs atau aplikasi Anda sendiri. Daftar di bawah ini mengidentifikasi berbagai tipe resource yang bisa Anda ambil menggunakan API. API juga mendukung metode untuk menyisipkan, memperbarui, atau menghapus banyak resource ini.

Panduan referensi ini menjelaskan cara menggunakan API untuk melakukan semua operasi tersebut. Panduan ini disusun menurut jenis resource. Resource mewakili jenis item yang membentuk bagian pengalaman YouTube, seperti video, playlist, atau langganan. Untuk setiap jenis resource, panduan ini mencantumkan satu atau beberapa representasi data, dan resource direpresentasikan sebagai objek JSON. Panduan ini juga mencantumkan satu atau beberapa metode yang didukung (LIST, POST, DELETE, dll.) untuk setiap jenis resource dan menjelaskan cara menggunakan metode tersebut dalam aplikasi Anda.

Memanggil API

Persyaratan berikut berlaku untuk permintaan YouTube Data API:

  1. Setiap permintaan harus menentukan kunci API (dengan parameter key) atau menyediakan token OAuth 2.0. Kunci API Anda tersedia di panel Akses API Konsol Developer untuk project Anda.

  2. Anda harus mengirim token otorisasi untuk setiap permintaan penyisipan, pembaruan, dan penghapusan. Anda juga harus mengirimkan token otorisasi untuk setiap permintaan yang mengambil data pribadi pengguna terautentikasi.

    Selain itu, beberapa metode API untuk mengambil resource dapat mendukung parameter yang memerlukan otorisasi atau dapat berisi metadata tambahan saat permintaan diotorisasi. Misalnya, permintaan untuk mengambil video yang diupload pengguna juga dapat berisi video pribadi jika permintaan tersebut diizinkan oleh pengguna tertentu.

  3. API ini mendukung protokol autentikasi OAuth 2.0. Anda dapat memberikan token OAuth 2.0 dengan salah satu cara berikut:

    • Gunakan parameter kueri access_token seperti ini: ?access_token=oauth2-token
    • Gunakan header Authorization HTTP seperti ini: Authorization: Bearer oauth2-token

    Petunjuk lengkap untuk menerapkan autentikasi OAuth 2.0 pada aplikasi Anda dapat ditemukan di panduan autentikasi.

Jenis resource

Aktivitas

Referensi activity berisi informasi tentang tindakan yang dilakukan channel atau pengguna tertentu di YouTube. Tindakan yang dilaporkan dalam feed aktivitas meliputi memberi rating video, membagikan video, menandai video sebagai favorit, mengupload video, dan sebagainya. Setiap resource activity mengidentifikasi jenis tindakan, channel yang terkait dengan tindakan, dan resource yang terkait dengan tindakan, seperti video yang diberi rating atau diupload.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /activities Menampilkan daftar peristiwa aktivitas saluran yang cocok dengan kriteria permintaan. Misalnya, Anda dapat mengambil peristiwa yang terkait dengan saluran tertentu atau dengan saluran pengguna sendiri.
insert POST /activities Catatan: Metode ini tidak digunakan lagi dan tidak lagi didukung.

Teks

Resource caption merepresentasikan trek teks YouTube. Trek teks dikaitkan dengan satu video YouTube.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
delete DELETE /captions Menghapus trek teks yang ditentukan.
download GET /captions/id Mendownload trek teks. Trek teks ditampilkan dalam format aslinya kecuali jika permintaan menentukan nilai untuk parameter tfmt dan dalam bahasa aslinya, kecuali jika permintaan tersebut menentukan nilai untuk parameter tlang.
insert POST /captions Mengupload trek teks.
list GET /captions Menampilkan daftar trek teks yang terkait dengan video tertentu. Perhatikan bahwa respons API tidak berisi teks yang sebenarnya dan bahwa metode captions.download memberikan kemampuan untuk mengambil trek teks.
update PUT /captions Memperbarui trek teks. Saat memperbarui trek teks, Anda dapat mengubah status draf trek, mengupload file teks baru untuk trek tersebut, atau keduanya.

ChannelBanners

Resource channelBanner berisi URL yang akan Anda gunakan untuk menetapkan gambar yang baru diupload sebagai gambar banner untuk channel.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
insert POST /channelBanners/insert Mengupload gambar banner channel ke YouTube. Metode ini mewakili dua langkah pertama dalam proses tiga langkah untuk memperbarui gambar banner untuk channel:

  1. Panggil metode channelBanners.insert untuk mengupload data gambar biner ke YouTube. Gambar harus memiliki rasio aspek 16:9 dan minimal berukuran 2048x1152 piksel. Sebaiknya upload gambar berukuran 2560 x 1440 piksel.
  2. Ekstrak nilai properti url dari respons yang ditampilkan API untuk langkah 1.
  3. Panggil metode channels.update untuk memperbarui setelan branding channel. Tetapkan nilai properti brandingSettings.image.bannerExternalUrl ke URL yang diperoleh di langkah 2.

ChannelSections

Referensi channelSection berisi informasi tentang serangkaian video yang telah dipilih channel untuk ditampilkan. Misalnya, bagian dapat menampilkan upload terbaru dari suatu channel, upload paling populer, atau video dari satu atau beberapa playlist.

Perhatikan bahwa bagian channel hanya terlihat jika channel menampilkan konten di tampilan jelajah (bukan tampilan feed). Agar channel dapat menampilkan konten di tampilan jelajah, setel properti brandingSettings.channel.showBrowseView ke true untuk saluran yang ditentukan.

Channel dapat membuat maksimal 10 galeri.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
delete DELETE /channelSections Menghapus bagian channel.
insert POST /channelSections Menambahkan bagian saluran ke saluran pengguna terautentikasi. Satu channel dapat membuat maksimal 10 galeri.
list GET /channelSections Menampilkan daftar resource channelSection yang cocok dengan kriteria permintaan API.
update PUT /channelSections Memperbarui bagian channel.

Channel

Referensi channel berisi informasi tentang channel YouTube.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /channels Menampilkan kumpulan nol resource channel atau lebih yang cocok dengan kriteria permintaan.
update PUT /channels Memperbarui metadata channel. Perlu diperhatikan bahwa metode ini saat ini hanya mendukung update untuk objek brandingSettings dan invideoPromotion resource channel serta properti turunannya.

CommentThreads

Referensi commentThread berisi informasi tentang rangkaian komentar YouTube, yang terdiri dari komentar dan balasan tingkat atas, jika ada, pada komentar tersebut. Resource commentThread dapat merepresentasikan komentar tentang video atau channel.

Komentar tingkat atas dan balasan sebenarnya merupakan resource comment yang disusun bertingkat di dalam resource commentThread. Resource commentThread tidak selalu berisi semua balasan untuk komentar, dan Anda harus menggunakan metode comments.list jika ingin mengambil semua balasan untuk komentar tertentu. Perlu diperhatikan juga bahwa beberapa komentar tidak memiliki balasan.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /commentThreads Menampilkan daftar rangkaian komentar yang cocok dengan parameter permintaan API.
insert POST /commentThreads Membuat komentar tingkat atas baru. Untuk menambahkan balasan ke komentar yang ada, gunakan metode comments.insert.

Komentar

Resource comment berisi informasi tentang satu komentar YouTube. Resource comment dapat merepresentasikan komentar tentang video atau channel. Selain itu, komentar tersebut dapat berupa komentar tingkat teratas atau balasan untuk komentar tingkat atas.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /comments Menampilkan daftar komentar yang cocok dengan parameter permintaan API.
setModerationStatus POST /comments/setModerationStatus Menetapkan status moderasi untuk satu atau beberapa komentar. Permintaan API harus diizinkan oleh pemilik channel atau video yang terkait dengan komentar.
insert POST /comments Membuat balasan untuk komentar yang ada. Catatan: Untuk membuat komentar tingkat atas, gunakan metode commentThreads.insert.
markAsSpam POST /comments/markAsSpam Catatan: Metode ini tidak digunakan lagi dan tidak lagi didukung.
delete DELETE /comments Menghapus komentar.
update PUT /comments Memodifikasi komentar.

GuideCategories

Referensi guideCategory mengidentifikasi kategori yang ditetapkan oleh YouTube berdasarkan algoritma berdasarkan konten channel atau indikator lainnya, seperti popularitas channel. Daftar ini mirip dengan kategori video. Hanya saja, uploader video dapat menetapkan kategori video, tetapi hanya YouTube yang dapat menetapkan kategori channel.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /guideCategories Menampilkan daftar kategori yang dapat dikaitkan dengan channel YouTube.

I18nLanguages

Referensi i18nLanguage mengidentifikasi bahasa aplikasi yang didukung situs YouTube. Bahasa aplikasi juga dapat disebut sebagai bahasa UI. Untuk situs YouTube, bahasa aplikasi dapat dipilih secara otomatis berdasarkan setelan Akun Google, bahasa browser, atau lokasi IP. Pengguna juga dapat memilih bahasa UI yang diinginkan dari footer situs YouTube secara manual.

Setiap resource i18nLanguage mengidentifikasi kode bahasa dan nama. Kode bahasa dapat digunakan sebagai nilai parameter hl saat memanggil metode API seperti videoCategories.list dan guideCategories.list.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /i18nLanguages Menampilkan daftar bahasa aplikasi yang didukung situs YouTube.

I18nRegions

Resource i18nRegion mengidentifikasi area geografis yang dapat dipilih pengguna YouTube sebagai wilayah konten pilihan. Wilayah konten juga dapat disebut sebagai lokalitas konten. Untuk situs YouTube, wilayah konten dapat dipilih secara otomatis berdasarkan heuristik seperti domain YouTube atau lokasi IP pengguna. Pengguna juga dapat memilih wilayah konten yang diinginkan secara manual dari footer situs YouTube.

Setiap resource i18nRegion mengidentifikasi kode wilayah dan nama. Kode wilayah dapat digunakan sebagai nilai parameter regionCode saat memanggil metode API seperti search.list, videos.list, activities.list, dan videoCategories.list.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /i18nRegions Menampilkan daftar wilayah konten yang didukung situs YouTube.

Pelanggan

Referensi member merepresentasikan pelanggan channel untuk sebuah channel YouTube. Pelanggan memberikan dukungan moneter berulang kepada kreator dan menerima manfaat khusus. Misalnya, pelanggan dapat melakukan chat saat kreator mengaktifkan mode khusus pelanggan untuk chat.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /members Mencantumkan anggota (sebelumnya dikenal sebagai "sponsor") untuk sebuah channel. Permintaan API harus diotorisasi oleh pemilik channel.

MembershipsLevels

Resource membershipsLevel mengidentifikasi tingkat harga untuk kreator yang mengizinkan permintaan API.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /membershipsLevels Menampilkan kumpulan nol atau beberapa resource membershipsLevel yang dimiliki oleh saluran yang mengizinkan permintaan API. Level ditampilkan dalam urutan tampilan implisit.

PlaylistItems

Resource playlistItem mengidentifikasi resource lain, seperti video, yang disertakan dalam playlist. Selain itu, resource playlistItem berisi detail tentang referensi yang disertakan, yang secara khusus berkaitan dengan cara penggunaan resource tersebut dalam playlist tersebut.

YouTube juga menggunakan playlist untuk mengidentifikasi daftar video yang diupload channel, dengan setiap playlistItem dalam daftar tersebut mewakili satu video yang diupload. Anda dapat mengambil ID playlist untuk daftar itu dari channel resource untuk channel tertentu. Selanjutnya, Anda dapat menggunakan metode playlistItems.list untuk daftar tersebut.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
delete DELETE /playlistItems Menghapus item playlist.
insert POST /playlistItems Menambahkan sumber daya ke playlist.
list GET /playlistItems Menampilkan kumpulan item playlist yang cocok dengan parameter permintaan API. Anda dapat mengambil semua item playlist dalam playlist tertentu, atau mengambil satu atau beberapa item playlist dengan ID uniknya.
update PUT /playlistItems Memodifikasi item playlist. Misalnya, Anda dapat memperbarui posisi item di playlist.

Playlist

Resource playlist mewakili playlist YouTube. Playlist adalah kumpulan video yang dapat ditonton secara berurutan dan dibagikan kepada pengguna lain. Playlist dapat berisi hingga 200 video, dan YouTube tidak membatasi jumlah playlist yang dibuat setiap pengguna. Secara default, playlist dapat dilihat oleh pengguna lain, tetapi playlist dapat bersifat publik atau pribadi.

YouTube juga menggunakan playlist untuk mengidentifikasi koleksi video khusus untuk suatu channel, seperti:

  • video yang diupload
  • video yang diberi rating (disukai) secara positif
  • riwayat tontonan
  • tonton nanti
Untuk lebih spesifik, daftar ini dikaitkan dengan channel, yang merupakan kumpulan video, playlist, dan informasi YouTube lainnya dari seseorang, grup, atau perusahaan. Anda dapat mengambil ID playlist untuk setiap daftar ini dari channel resource untuk channel tertentu.

Anda kemudian dapat menggunakan metode playlistItems.list untuk mengambil salah satu daftar tersebut. Anda juga dapat menambahkan atau menghapus item dari daftar tersebut dengan memanggil metode playlistItems.insert dan playlistItems.delete.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
delete DELETE /playlists Menghapus playlist.
list GET /playlists Menampilkan kumpulan playlist yang cocok dengan parameter permintaan API. Misalnya, Anda dapat mengambil semua playlist yang dimiliki pengguna yang diautentikasi, atau Anda dapat mengambil satu atau beberapa playlist berdasarkan ID uniknya.
insert POST /playlists Membuat playlist.
update PUT /playlists Memodifikasi playlist. Misalnya, Anda dapat mengubah judul, deskripsi, atau status privasi playlist.

Hasil penelusuran berisi informasi tentang video, channel, atau playlist YouTube yang cocok dengan parameter penelusuran yang ditentukan dalam permintaan API. Meskipun hasil penelusuran mengarah ke resource yang dapat diidentifikasi secara unik, seperti video, hasil penelusuran tersebut tidak memiliki data persistennya sendiri.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /search Menampilkan kumpulan hasil penelusuran yang cocok dengan parameter kueri yang ditentukan dalam permintaan API. Secara default, kumpulan hasil penelusuran mengidentifikasi resource video, channel, dan playlist yang cocok, tetapi Anda juga dapat mengonfigurasi kueri agar hanya mengambil jenis resource tertentu.

Subscriptions

Referensi subscription berisi informasi tentang langganan pengguna YouTube. Subscription memberi tahu pengguna saat ada video baru yang ditambahkan ke channel, atau saat pengguna lain melakukan salah satu dari beberapa tindakan di YouTube, seperti mengupload video, memberi rating video, atau mengomentari video.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
delete DELETE /subscriptions Menghapus langganan.
insert POST /subscriptions Menambahkan langganan untuk saluran pengguna terautentikasi.
list GET /subscriptions Menampilkan resource langganan yang cocok dengan kriteria permintaan API.

Thumbnail

Resource thumbnail mengidentifikasi berbagai ukuran gambar thumbnail yang terkait dengan resource. Harap perhatikan karakteristik gambar thumbnail berikut:

  • Properti snippet.thumbnails resource adalah objek yang mengidentifikasi gambar thumbnail yang tersedia untuk resource tersebut.
  • Resource thumbnail berisi serangkaian objek. Nama setiap objek (default, medium, high, dll.) mengacu pada ukuran gambar thumbnail.
  • Jenis resource yang berbeda mungkin mendukung ukuran gambar thumbnail yang berbeda.
  • Jenis resource yang berbeda dapat menentukan ukuran yang berbeda untuk gambar thumbnail dengan nama yang sama. Misalnya, gambar thumbnail default untuk resource video biasanya berukuran 120x90 piksel, dan gambar thumbnail default untuk resource channel biasanya berukuran 88x88 piksel.
  • Aset dengan jenis yang sama mungkin masih memiliki ukuran gambar thumbnail yang berbeda untuk gambar tertentu, bergantung pada resolusi gambar asli atau konten yang diupload ke YouTube. Misalnya, video HD mungkin mendukung thumbnail beresolusi lebih tinggi daripada video non-HD.
  • Setiap objek yang berisi informasi tentang ukuran gambar thumbnail memiliki properti width dan properti height. Namun, properti lebar dan tinggi mungkin tidak ditampilkan untuk gambar tersebut.
  • Jika gambar thumbnail yang diupload tidak sesuai dengan dimensi yang diperlukan, gambar akan diubah ukurannya agar sesuai dengan ukuran yang benar tanpa mengubah rasio aspeknya. Gambar tidak dipangkas, namun mungkin terdapat kotak hitam agar ukurannya benar.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
set POST /thumbnails/set Mengupload thumbnail video kustom ke YouTube dan menyetelnya untuk sebuah video.

VideoAbuseReportReasons

Resource videoAbuseReportReason berisi informasi tentang alasan video akan dilaporkan karena berisi konten yang melanggar. Saat aplikasi Anda memanggil metode videos.reportAbuse untuk melaporkan video yang melanggar, permintaan tersebut menggunakan informasi dari resource videoAbuseReportReason untuk mengidentifikasi alasan video tersebut dilaporkan.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /videoAbuseReportReasons Ambil daftar alasan yang dapat digunakan untuk melaporkan video yang melanggar.

VideoCategories

Resource videoCategory mengidentifikasi kategori yang telah atau dapat dikaitkan dengan video yang diupload.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
list GET /videoCategories Menampilkan daftar kategori yang dapat dikaitkan dengan video YouTube.

Video

Resource video merepresentasikan video YouTube.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
insert POST /videos Mengupload video ke YouTube dan secara opsional menyetel metadata video.
list GET /videos Menampilkan daftar video yang cocok dengan parameter permintaan API.
delete DELETE /videos Menghapus video YouTube.
update PUT /videos Memperbarui metadata video.
rate POST /videos/rate Menambahkan rating suka atau tidak suka pada video, atau menghapus rating dari video.
getRating GET /videos/getRating Mengambil rating yang diberikan oleh pengguna yang diberi otorisasi ke daftar video yang ditentukan.
reportAbuse POST /videos/reportAbuse Melaporkan video yang berisi konten yang melanggar.

Watermark

Resource watermark mengidentifikasi gambar yang ditampilkan selama pemutaran video channel tertentu. Anda juga dapat menentukan saluran target yang akan ditautkan dengan gambar serta detail pengaturan waktu yang menentukan kapan watermark muncul selama pemutaran video dan lamanya waktu terlihat.

Untuk mengetahui informasi selengkapnya tentang resource ini, lihat representasi resource dan daftar properti-nya.

Metode Permintaan HTTP Deskripsi
URI yang relatif terhadap https://www.googleapis.com/youtube/v3
set POST /watermarks/set Mengupload gambar watermark ke YouTube dan menyetelnya untuk channel.
unset POST /watermarks/unset Menghapus gambar watermark channel.