Resource member mewakili pelanggan channel untuk channel YouTube. Pelanggan memberikan dukungan finansial berulang kepada kreator dan menerima manfaat khusus. Misalnya, pelanggan dapat melakukan chat saat kreator mengaktifkan mode khusus pelanggan untuk
chat.
Batasan akses berikut berlaku:
- Akses ke endpoint
membersdanmembershipsLevelshanya tersedia untuk kreator YouTube yang memiliki Partner Manager YouTube khusus. - Akses diberikan di tingkat channel. Karena daftar yang diizinkan di tingkat channel ini, cakupan OAuth
youtube.channel-memberships.creatortidak melalui proses verifikasi OAuth Google Cloud standar.
Metode
API mendukung metode berikut untuk resource member:
- list
- Mencantumkan pelanggan (sebelumnya dikenal sebagai "sponsor") untuk channel. Permintaan API harus diizinkan oleh pemilik channel.
Representasi resource
Struktur JSON berikut menunjukkan format resource member:
{
"kind": "youtube#member",
"etag": etag,
"snippet": {
"creatorChannelId": string,
"memberDetails": {
"channelId": string,
"channelUrl": string,
"displayName": string,
"profileImageUrl": string
},
"membershipsDetails": {
"highestAccessibleLevel": string,
"highestAccessibleLevelDisplayName": string,
"accessibleLevels": [
string
],
"membershipsDuration": {
"memberSince": datetime,
"memberTotalDurationMonths": integer,
},
"membershipsDurationAtLevel": [
{
"level": string,
"memberSince": datetime,
"memberTotalDurationMonths": integer,
}
]
}
}
}Properti
Tabel berikut menentukan properti yang muncul di resource ini:
| Properti | |
|---|---|
kind |
stringMengidentifikasi jenis resource API. Nilainya adalah youtube#member. |
etag |
etagEtag resource ini. |
snippet |
objectObjek snippet berisi detail tentang pelanggan. |
snippet.creatorChannelId |
stringID channel YouTube kreator yang menawarkan langganan. |
snippet.memberDetails |
objectObjek ini berisi data profil tentang channel YouTube yang membayar langganan. Perhatikan bahwa channel dapat memiliki pelanggan dengan data profil yang tidak tersedia. Misalnya, hal ini terjadi pada pelanggan yang telah menghapus channel mereka, tetapi masih membayar langganan. Perhatikan bahwa pelanggan ini masih dapat mengakses manfaat langganan mereka. Respons API menyertakan resource untuk pelanggan tersebut guna memastikan jumlah yang akurat meskipun detail profil di dalam objek memberDetails tidak ditetapkan. The
membershipsDetails masih diberikan untuk pelanggan tersebut. |
snippet.memberDetails.channelId |
stringID channel YouTube channel pelanggan. Jika ditetapkan, ID channel juga dapat diperlakukan sebagai ID unik untuk pelanggan. Jika tidak ditetapkan, pelanggan tidak dapat diidentifikasi secara unik, tetapi resource tetap menyampaikan detail langganan seperti level yang dapat diakses pelanggan dan durasi langganan mereka. |
snippet.memberDetails.channelUrl |
stringURL channel. |
snippet.memberDetails.displayName |
stringNama tampilan channel. |
snippet.memberDetails.profileImageUrl |
stringURL avatar channel. |
snippet.membershipsDetails |
objectObjek ini berisi detail langganan untuk channel pelanggan. |
snippet.membershipsDetails.highestAccessibleLevel |
stringID level langganan tertinggi yang saat ini dapat diakses oleh channel pelanggan. Nilai ini sesuai dengan nilai properti id dalam resource membershipsLevel. |
snippet.membershipsDetails.highestAccessibleLevelDisplayName |
stringNama level langganan tertinggi yang saat ini dapat diakses oleh channel pelanggan. Nilai ini sesuai dengan nilai properti displayName
dalam resource membershipsLevel. |
snippet.membershipsDetails.accessibleLevels[] |
list (of strings)Daftar ID untuk semua level langganan yang saat ini dapat diakses oleh pengguna. Daftar ini mencakup level yang saat ini aktif dan semua level di bawahnya. |
snippet.membershipsDuration |
objectObjek ini berisi informasi tentang durasi keseluruhan langganan pelanggan saat ini tanpa memperhatikan level harga. Properti snippet.membershipsDetails.membershipsDurationAtLevel[]
kemudian berisi daftar objek yang berisi detail tentang periode langganan
selama pelanggan memiliki akses ke level langganan tertentu.
Contoh berikut menunjukkan cara kerja properti ini: Pelanggan membeli langganan baru pada bulan Januari di level langganan 1 dan memiliki langganan tersebut hingga bulan Maret. Pada bulan April dan Mei, the pelanggan tidak memiliki langganan. Pada bulan Juni, pelanggan memulai ulang langganan mereka, lagi di level 1. Kemudian, pada bulan Agustus, pelanggan mengupgrade langganan mereka ke level 2. Jadi, jika panggilan API dilakukan pada bulan Oktober, resource member akan berisi hal berikut:
"membershipsDetails": {
"membershipsDuration": {
"memberSince": "2020-06-01T12:00:00",
"memberTotalDurationMonths": 7,
},
"membershipsDurationAtLevel": [
{
"level": "level_1_ID",
"memberSince": "2020-06-01T12:00:00",
"memberTotalDurationMonths": 7
},
{
"level": "level_2_ID",
"memberSince": "2020-08-01T12:00:00",
"memberTotalDurationMonths": 2
},
]
} |
snippet.membershipsDuration.memberSince |
datetimeTanggal dan waktu langganan pelanggan saat ini dimulai. Dengan kata lain, pelanggan terus memiliki langganan sejak tanggal dan waktu ini. Perhatikan bahwa periode langganan yang berbeda mungkin telah dihabiskan di level langganan yang berbeda. |
snippet.membershipsDuration.memberTotalDurationMonths |
integerJumlah bulan, dibulatkan ke bawah ke bilangan bulat terdekat, yang telah menjadi pelanggan. Nilai ini mencerminkan jumlah bulan lengkap yang telah dimiliki pelanggan, tetapi angka tersebut tidak menyiratkan bahwa pelanggan terus memiliki langganan selama beberapa bulan tersebut. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel[] |
list (of objects)Daftar objek, yang setiap objeknya berisi detail tentang periode langganan selama pelanggan memiliki akses ke level langganan tertentu. Daftar ini mencakup satu objek untuk setiap level langganan yang saat ini dapat diakses oleh pelanggan. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.level |
stringID level langganan. Nilai ini sesuai dengan nilai properti id dalam resource
membershipsLevel. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberSince |
datetimeTanggal dan waktu sejak pelanggan memiliki akses ke level langganan yang ditentukan. Dengan kata lain, pelanggan terus memiliki akses ke level tersebut sejak tanggal dan waktu ini. Perhatikan bahwa periode langganan yang berbeda mungkin telah dihabiskan di level langganan yang lebih tinggi. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberTotalDurationMonths |
integerJumlah bulan, dibulatkan ke bawah ke bilangan bulat terdekat, yang telah diakses oleh pengguna ke level yang ditentukan. Nilai ini mencerminkan jumlah bulan lengkap yang telah diakses oleh pelanggan ke level tersebut, tetapi angka tersebut tidak menyiratkan bahwa pelanggan terus memiliki langganan selama beberapa bulan tersebut. |