member kaynağı, bir YouTube kanalının kanal üyesini temsil eder. Üyeler, içerik üreticilere düzenli olarak maddi destek sağlar ve özel avantajlardan yararlanır. Örneğin, içerik üretici bir sohbet için üyelere özel modunu etkinleştirdiğinde üyeler sohbet edebilir.
Aşağıdaki erişim kısıtlamaları geçerlidir:
membersvemembershipsLevelsuç noktalarına erişim, özel bir YouTube İş Ortağı Yöneticisi olan YouTube içerik üreticileriyle sınırlıdır.- Erişim, kanal düzeyinde verilir. Kanal düzeyindeki bu izin verilenler listesi nedeniyle
youtube.channel-memberships.creatorOAuth kapsamı, standart Google Cloud OAuth doğrulama sürecinden geçmez.
Yöntemler
API, member kaynakları için aşağıdaki yöntemleri destekler:
- list
- Bir kanalın üyelerini (eski adıyla "sponsorlar") listeler. API isteği, kanal sahibi tarafından yetkilendirilmelidir.
Kaynak temsili
Aşağıdaki JSON yapısı, bir member kaynağının biçimini gösterir:
{
"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,
}
]
}
}
}Özellikler
Aşağıdaki tabloda, bu kaynakta görünen özellikler tanımlanmaktadır:
| Özellikler | |
|---|---|
kind |
stringAPI kaynağının türünü tanımlar. Değer youtube#member olur. |
etag |
etagBu kaynağın Etag'i. |
snippet |
objectsnippet nesnesi, üyeyle ilgili ayrıntıları içerir. |
snippet.creatorChannelId |
stringÜyelik sunan içerik üreticinin YouTube kanal kimliği. |
snippet.memberDetails |
objectBu nesne, üyelik için ödeme yapan YouTube kanalıyla ilgili profil verilerini içerir. Bir kanalda, profil verileri kullanılamayan üyeler olabileceğini unutmayın. Örneğin, kanallarını silen ancak üyelik ücretini ödemeye devam eden üyeler bu kapsamdadır. Bu üyelerin, üyelik avantajlarına erişmeye devam edebileceğini unutmayın. API yanıtları, memberDetails nesnesindeki profil ayrıntıları ayarlanmamış olsa bile doğru sayım yapılmasını sağlamak için bu üyelerin kaynaklarını içerir. Bu üyelere membershipsDetails sunulmaya devam edilir. |
snippet.memberDetails.channelId |
stringÜye kanalın YouTube kanal kimliği. Ayarlanmışsa kanal kimliği, üye için benzersiz bir tanımlayıcı olarak da değerlendirilebilir. Bu değer ayarlanmazsa üye benzersiz şekilde tanımlanamaz ancak kaynak, üyenin erişebileceği seviyeler ve üyeliğinin süresi gibi üyelik ayrıntılarını iletmeye devam eder. |
snippet.memberDetails.channelUrl |
stringKanalın URL'si. |
snippet.memberDetails.displayName |
stringKanalın görünen adı. |
snippet.memberDetails.profileImageUrl |
stringKanalın avatar URL'si. |
snippet.membershipsDetails |
objectBu nesne, üye kanalın üyelik ayrıntılarını içerir. |
snippet.membershipsDetails.highestAccessibleLevel |
stringÜye kanalının şu anda erişebileceği en yüksek üyelik seviyesinin kimliği. Değer, id özelliğinin membershipsLevel kaynağındaki değerine karşılık gelir. |
snippet.membershipsDetails.highestAccessibleLevelDisplayName |
stringÜye kanalın şu anda erişebildiği en yüksek üyelik seviyesinin adı. Değer, bir membershipsLevel kaynağındaki displayName özellik değerine karşılık gelir. |
snippet.membershipsDetails.accessibleLevels[] |
list (of strings)Kullanıcının şu anda erişebildiği tüm üyelik seviyelerinin kimliklerinin listesi. Liste, şu anda etkin olan seviyeyi ve altındaki tüm seviyeleri içerir. |
snippet.membershipsDuration |
objectBu nesne, fiyatlandırma seviyelerine bakılmaksızın mevcut üyenin üyeliğinin toplam süresi hakkında bilgi içerir. Daha sonra snippet.membershipsDetails.membershipsDurationAtLevel[] özelliği, üyenin belirli bir üyelik seviyesine erişebildiği üyelik dönemiyle ilgili ayrıntıları içeren bir nesne listesini içerir.
Aşağıdaki örnekte bu özelliklerin işleyiş şekli gösterilmektedir: Bir üye, ocak ayında 1. üyelik seviyesinde yeni bir üyelik satın alır ve bu üyeliği mart ayına kadar devam eder. Üye, Nisan ve Mayıs aylarında üye değildir. Haziran ayında üye, üyeliğini tekrar 1. seviyeden başlatır. Ardından, Ağustos ayında üye, üyeliğini 2. seviyeye yükseltir. Dolayısıyla, Ekim ayında bir API çağrısı yapılırsa member kaynağı aşağıdakileri içerir:
"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 |
datetimeÜyenin mevcut üyeliğinin başladığı tarih ve saat. Başka bir deyişle üye, bu tarih ve saatten itibaren kesintisiz olarak üyeliğini sürdürmüştür. Üyeliğin farklı dönemlerinde farklı üyelik seviyelerinde zaman geçirilebileceğini unutmayın. |
snippet.membershipsDuration.memberTotalDurationMonths |
integerKullanıcının üye olduğu ay sayısı (en yakın tam sayıya yuvarlanır). Bu değer, üyenin üyeliğinin devam ettiği tam ay sayısını gösterir ancak üyenin bu kadar ay boyunca kesintisiz olarak üyeliğinin devam ettiği anlamına gelmez. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel[] |
list (of objects)Her nesnenin, üyenin belirli bir üyelik seviyesine erişebildiği üyelik dönemiyle ilgili ayrıntıları içerdiği nesne listesi. Liste, üyenin şu anda erişebildiği her üyelik seviyesi için bir nesne içerir. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.level |
stringÜyelik seviyesi kimliği. Değer, bir id kaynağındaki membershipsLevel özellik değerine karşılık gelir. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberSince |
datetimeÜyenin belirtilen üyelik seviyesine erişiminin başladığı tarih ve saat. Başka bir deyişle, üye bu tarih ve saatten itibaren seviyeye sürekli olarak erişmiştir. Üyeliğin farklı dönemlerinin daha yüksek üyelik seviyelerinde geçirilmiş olabileceğini unutmayın. |
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberTotalDurationMonths |
integerKullanıcının belirtilen seviyeye erişiminin olduğu ay sayısı (en yakın tam sayıya yuvarlanır). Bu değer, üyenin seviyeye erişebildiği tam ay sayısını gösterir ancak üyenin bu kadar ay boyunca kesintisiz olarak üyeliği olduğu anlamına gelmez. |