Channels: update

API artık kanalınızı veya videolarınızı "çocuklara özel" olarak işaretleme özelliğini destekliyor. Ayrıca, channel ve video kaynakları artık ilgili kanalın veya videonun "çocuklara özel" durumunu tanımlayan bir özelliğe de sahip. YouTube API Hizmetleri Hizmet Şartları ve Geliştirici Politikaları da 10 Ocak 2020'de güncellendi. Daha fazla bilgi için YouTube Data API Hizmeti ve YouTube API Hizmetleri Hizmet Şartları'nın düzeltme geçmişlerine bakın.

Kanalın meta verilerini günceller. Bu yöntemin yalnızca channel kaynağının brandingSettings, invideoPromotion ve localizations nesnelerindeki ve bunların alt mülklerindeki güncellemeleri desteklediğini unutmayın.

Kota etkisi: Bu yöntemin çağrısı 50 birim kota maliyetine sahiptir.

Yaygın kullanım örnekleri

İstek

HTTP isteği

PUT https://www.googleapis.com/youtube/v3/channels

Yetkilendirme

Bu istek için aşağıdaki kapsamlardan en az biri ile yetkilendirme gerekir. Kimlik doğrulama ve yetkilendirme hakkında daha fazla bilgi edinmek için OAuth 2.0 yetkilendirmesini uygulama başlıklı makaleyi inceleyin.

Kapsam
https://www.googleapis.com/auth/youtubepartner
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

Parametreler

Aşağıdaki tabloda, bu sorgunun desteklediği parametreler listelenmiştir. Listelenen tüm parametreler sorgu parametreleridir.

Parametreler
Gerekli parametreler
part string
part parametresi bu işlemde iki amaç için kullanılır. Yazma işleminin ayarlayacağı özelliklerin yanı sıra API yanıtının içereceği özellikleri tanımlar.

API, parametre değerinin yalnızca brandingSettings, invideoPromotion veya localizations olarak ayarlanmasına izin verir. (Bu bölümlerden yalnızca birini tek bir istekle güncelleyebilirsiniz.)

Bu yöntemin, parametre değerinin belirttiği bölümde bulunan tüm değiştirilebilir özelliklerin mevcut değerlerini geçersiz kılacağını unutmayın.
İsteğe bağlı parametreler
onBehalfOfContentOwner string
Bu parametre yalnızca uygun şekilde yetkilendirilmiş bir istekte kullanılabilir.

onBehalfOfContentOwner parametresi, kimliği doğrulanmış kullanıcının parametre değerinde belirtilen içerik sahibi adına hareket ettiğini belirtir. Bu parametre, birçok farklı YouTube kanalına sahip olan ve bu kanalları yöneten YouTube içerik iş ortakları için tasarlanmıştır. Bu sayede içerik sahipleri, her kanal için kimlik doğrulama kimlik bilgilerini sağlamak zorunda kalmadan tek seferde kimlik doğrulaması yapabilir ve tüm video ve kanal verilerine erişebilir. Kullanıcının kimliğini doğruladığı gerçek İYS hesabının, belirtilen YouTube içerik sahibine bağlı olması gerekir.

İstek içeriği

İstek gövdesinde bir channel kaynağı sağlayın. Bu kaynak için:

  • Aşağıdaki özellikler için bir değer belirtmeniz gerekir:

    • id
  • Aşağıdaki özellikler için değer ayarlayabilirsiniz:

    • brandingSettings.channel.country
    • brandingSettings.channel.description
    • brandingSettings.channel.defaultLanguage
    • brandingSettings.channel.keywords
    • brandingSettings.channel.trackingAnalyticsAccountId
    • brandingSettings.channel.unsubscribedTrailer
    • localizations.(key)
    • localizations.(key).title
    • localizations.(key).description
    • status.selfDeclaredMadeForKids

    Güncelleme isteği gönderiyorsanız ve isteğinizde, hâlihazırda değeri olan bir tesis için bir değer belirtilmiyorsa tesisin mevcut değeri silinir.

Yanıt

Başarılı olursa bu yöntem, yanıt gövdesinde bir channel kaynağı döndürür.

Hatalar

Aşağıdaki tabloda, API'nin bu yönteme yapılan bir çağrıya yanıt olarak döndürebileceği hata mesajları tanımlanmaktadır. Daha fazla bilgi için YouTube Data API - Errors başlıklı makaleyi inceleyin.

Hata türü Hata ayrıntısı Açıklama
badRequest (400) brandingValidationError brandingSettings nesnesindeki değerlerden biri doğrulanamadı. Kanalın mevcut ayarlarını almak için channels.list yöntemini kullanın ve channels kaynak dokümanlarında yer alan yönergelere göre mülk değerlerini güncelleyin.
badRequest (400) channelTitleUpdateForbidden Bir kanalın brandingSettings part özelliğini güncellerken brandingSettings.channel.title özelliğinin değerini kanalın mevcut başlığına ayarlamanız veya özelliği atlamanız gerekir. Mülkün değerini değiştirirseniz API hata döndürür.
badRequest (400) defaultLanguageNotSetError defaultLanguage, localizations'ü güncelleyecek şekilde ayarlanmalıdır.
badRequest (400) invalidBrandingOption Belirttiğiniz markalaşma ayarlarından biri yok. Geçerli değerleri almak için channels.list yöntemini kullanın ve bunları channels kaynak dokümanlarında yer alan yönergelere göre güncellediğinizden emin olun.
badRequest (400) invalidCustomMessage İstek meta verileri geçersiz bir özel mesaj belirtiyor. İsteğin gönderildiği kaynakta invideoPromotion.items[].customMessage mülkünün değerini kontrol edin.
badRequest (400) invalidDuration İstek meta verileri, invideoPromotion bölümünde geçersiz bir süre belirtiyor.
badRequest (400) invalidDuration İstek meta verileri, tanıtılan öğenin video oynatıcıda nasıl konumlandırılacağını belirlemek için geçersiz bir konum türü belirtir. İsteğin gönderildiği kaynakta invideoPromotion.position.type mülkünün değerini kontrol edin.
badRequest (400) invalidRecentlyUploadedBy İstek meta verileri geçersiz bir kanal kimliği belirtiyor. İsteğin gönderildiği kaynakta invideoPromotion.items[].id.recentlyUploadedBy mülkünün değerini kontrol edin.
badRequest (400) invalidTimingOffset İstek meta verileri, invideoPromotion bölümünde geçersiz bir zamanlama ofseti belirtiyor.
badRequest (400) invalidTimingOffset İstek meta verileri, tanıtılan öğenin video oynatıcıda ne zaman gösterileceğini belirlemek için geçersiz bir zamanlama ofseti belirtir. İsteğin gönderildiği kaynakta invideoPromotion.timing.offsetMs mülkünün değerini kontrol edin.
badRequest (400) invalidTimingType İstek meta verileri, tanıtılan öğenin video oynatıcıda ne zaman gösterileceğini belirlemek için geçersiz bir zamanlama yöntemi belirtiyor. İsteğin gönderildiği kaynakta invideoPromotion.timing.type mülkünün değerini kontrol edin.
badRequest (400) localizationValidationError localizations nesnesindeki değerlerden biri doğrulanamadı. Geçerli değerleri almak için channels.list yöntemini kullanın ve kanal kaynak dokümanlarındaki yönergelere göre güncellediğinizden emin olun.
badRequest (400) tooManyPromotedItems invideoPromotion bölümünde izin verilen tanıtılan öğelerin sayısı aşıldı.
forbidden (403) channelForbidden id parametresinde belirtilen kanal isteği desteklemiyor veya istek düzgün şekilde yetkilendirilmemiş.
forbidden (403) promotedVideoNotAllowed API isteğinin güncellemeye çalıştığı kanal bulunamadı. Kanal kimliğinin doğru olduğundan emin olmak için isteğin gönderdiği channel kaynağındaki id mülkünün değerini kontrol edin.
forbidden (403) websiteLinkNotAllowed Belirtilen web sitesi URL'sine izin verilmiyor.
notFound (404) channelNotFound id parametresinde belirtilen kanal bulunamıyor.
notFound (404) channelNotFound id parametresi ile belirtilen kanal bulunamıyor veya kanalda markalaşma seçenekleri yok.
notFound (404) unknownChannelId Belirtilen kanal kimliği bulunamadı.
notFound (404) unknownChannelId Belirtilen recentlyUploadedBy kanal kimliği bulunamadı.
notFound (404) unknownVideoId Tanıtılan öğe olarak belirtilen video kimliği bulunamıyor.
required (400) requiredItemIdType İstek meta verileri, invideoPromotion bölümünde bir öğe türü belirtmelidir.
required (400) requiredItemId İstek meta verileri, invideoPromotion bölümünde bir öğe kimliği belirtmelidir.
required (400) requiredTimingOffset YouTube'un tanıtılan öğeyi ne zaman göstereceğini belirleyebilmesi için istek meta verilerinde varsayılan bir zamanlama ofseti belirtilmelidir. İsteğin gönderdiği kaynakta invideoPromotion.defaultTiming.offsetMs mülkünün değerini ayarlayın.
required (400) requiredTimingOffset YouTube'un tanıtılan öğeyi ne zaman göstereceğini belirleyebilmesi için istek meta verilerinde bir zaman kayması belirtilmelidir. İsteğin gönderdiği kaynakta invideoPromotion.timing.offsetMs mülkünün değerini ayarlayın.
required (400) requiredTimingType YouTube'un tanıtılan öğeyi ne zaman göstereceğini belirleyebilmesi için istek meta verilerinde bir zamanlama yöntemi belirtilmelidir. İsteğin gönderdiği kaynakta invideoPromotion.defaultTiming.type mülkünün değerini ayarlayın.
required (400) requiredTimingType YouTube'un tanıtılan öğeyi ne zaman göstereceğini belirleyebilmesi için istek meta verilerinde bir zamanlama yöntemi belirtilmelidir. İsteğin gönderdiği kaynakta invideoPromotion.timing.type mülkünün değerini ayarlayın.
required (400) requiredTiming İstek meta verileri, invideoPromotion bölümündeki her öğe için bir zamanlama belirtmelidir.
required (400) requiredVideoId İstek meta verileri, tanıtılan öğeyi tanımlamak için bir video kimliği belirtmelidir.
required (400) requiredWebsiteUrl İstek meta verilerinde, invideoPromotion bölümünde bir web sitesi URL'si belirtilmelidir. İsteğin gönderdiği kaynakta invideoPromotion.items[].id.websiteUrl mülkünün değerini ayarlayın.

Deneyin!

Bu API'yi çağırmak ve API isteğini ve yanıtını görmek için APIs Explorer simgesini kullanın.