LiveBroadcasts: update

Bir yayını günceller. Örneğin, liveBroadcast kaynağının contentDetails nesnesinde tanımlanan yayın ayarlarını değiştirebilirsiniz.

Yaygın kullanım alanları

İstek

HTTP isteği

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

Yetkilendirme

Bu istek için aşağıdaki kapsamlardan en az biriyle yetkilendirme gerekir (kimlik doğrulama ve yetkilendirme hakkında daha fazla bilgi edinin).

Kapsam
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 parametrelerin tümü sorgu parametreleridir.

Parametreler
Gerekli parametreler
part string
Bu işlemde part parametresi iki amaca hizmet eder. Yazma işleminin ayarlanacağı özelliklerin yanı sıra API yanıtının içereceği özellikleri de tanımlar.

Parametre değerine ekleyebileceğiniz part özellikleri id, snippet, contentDetails, monetizationDetails ve status şeklindedir.

Bu yöntemin, parametre değerinin belirttiği herhangi bir bölümde yer alan değişken özelliklerin tümü için mevcut değerleri geçersiz kılacağını unutmayın. Örneğin, bir yayının gizlilik durumu status bölümünde tanımlanır. Bu nedenle, isteğiniz gizli veya liste dışı bir yayını güncelliyorsa ve isteğin part parametre değeri status bölümünü içeriyorsa yayının gizlilik ayarı, istek gövdesinde belirtilen değere güncellenir. İsteğin gövdesinde bir değer belirtilmezse mevcut gizlilik ayarı kaldırılır ve yayın varsayılan gizlilik ayarına geri döner.
İsteğe bağlı parametreler
onBehalfOfContentOwner string
Bu parametre yalnızca doğru şekilde yetkilendirilmiş bir istekte kullanılabilir. Not: Bu parametre yalnızca YouTube içerik iş ortaklarına yöneliktir.

onBehalfOfContentOwner parametresi, isteğin yetkilendirme kimlik bilgilerinin parametre değerinde belirtilen içerik sahibi adına hareket eden bir YouTube CMS kullanıcısını tanımladığını gösterir. Bu parametre, birçok farklı YouTube kanalına sahip olan ve bunları yöneten YouTube içerik iş ortakları için tasarlanmıştır. İçerik sahiplerinin, her kanal için kimlik doğrulama bilgileri sağlamak zorunda kalmadan bir kez kimlik doğrulaması yaparak tüm video ve kanal verilerine erişmelerine olanak tanır. Kullanıcının kimlik doğrulaması yaptığı CMS hesabı, belirtilen YouTube içerik sahibine bağlanmalıdır.
onBehalfOfContentOwnerChannel string
Bu parametre yalnızca doğru şekilde yetkilendirilmiş bir istekte kullanılabilir. Bu parametre yalnızca uygun şekilde yetkilendirilen bir istekte kullanılabilir. Not: Bu parametre yalnızca YouTube içerik iş ortakları için tasarlanmıştır.

onBehalfOfContentOwnerChannel parametresi, videonun eklendiği kanalın YouTube kanal kimliğini belirtir. Bu parametre, bir istek onBehalfOfContentOwner parametresi için bir değer belirttiğinde zorunludur ve yalnızca bu parametreyle birlikte kullanılabilir. Ayrıca istek, onBehalfOfContentOwner parametresinin belirttiği içerik sahibine bağlı bir İYS hesabı kullanılarak yetkilendirilmelidir. Son olarak, onBehalfOfContentOwnerChannel parametre değerinin belirttiği kanal, onBehalfOfContentOwner parametresinin belirttiği içerik sahibine bağlanmalıdır.

Bu parametre, birçok farklı YouTube kanalına sahip olan ve bunları yöneten YouTube içerik iş ortakları içindir. İçerik sahiplerinin, bir kez kimlik doğrulaması yaparak parametre değerinde belirtilen kanal adına her ayrı kanal için kimlik doğrulama bilgileri sağlamak zorunda kalmadan işlem gerçekleştirmesine olanak tanır.

İstek içeriği

İstek gövdesinde bir liveBroadcast kaynağı sağlayın. Söz konusu kaynak için:

  • Şu özellikler için bir değer belirtmelisiniz:

    • id
    • snippet.scheduledStartTime
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs

  • Şu özellikler için değer ayarlayabilirsiniz:

    • snippet.title
    • snippet.description
    • snippet.scheduledStartTime
    • snippet.scheduledEndTime
    • status.privacyStatus
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs
    • contentDetails.enableAutoStart
    • contentDetails.enableAutoStop
    • contentDetails.enableClosedCaptions
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • monetizationDetails.cuepointSchedule.pauseAdsUntil

    Güncelleme isteği gönderiyorsanız ve isteğinizde halihazırda değer bulunan bir mülk için bir değer belirtmiyorsa mülkün mevcut değeri silinir.

Yanıt

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

Hatalar

Aşağıdaki tabloda, API'nin bu yönteme yapılan çağrıya yanıt olarak döndürebileceği hata mesajları tanımlanmaktadır. Daha fazla bilgi için lütfen hata mesajı dokümanlarına bakın.

Hata türü Hata ayrıntısı Açıklama
forbidden (403) closedCaptionsTypeModificationNotAllowed contentDetails.closedCaptionsType değeri yalnızca yayın created veya ready durumunda olduğunda değiştirilebilir.
forbidden (403) enabledModificationNotAllowed enabled alanı salt okunurdur.
forbidden (403) scheduleStrategyModificationNotAllowed scheduleStrategy alanı salt okunurdur.
forbidden (403) repeatIntervalSecsModificationNotAllowed repeatIntervalSecs alanı salt okunurdur.
forbidden (403) pauseAdsUntilModificationNotAllowed pauseAdsUntil alanı değiştirilemez. Bu hata aşağıdaki nedenlerden kaynaklanabilir:
  • monetizationDetails.cuepointSchedule.enabled alanı true olarak ayarlanmadı. Bu alan yalnızca YouTube Studio üzerinden ayarlanabilir.
  • Yayın canlı değil.
forbidden (403) enableAutoStartModificationNotAllowed contentDetails.enableAutoStart değeri yalnızca akış etkin olmadığında ve yayın created veya ready durumunda olduğunda değiştirilebilir.
forbidden (403) enableClosedCaptionsModificationNotAllowed contentDetails.enableClosedCaptions değeri yalnızca yayının durumu created veya ready olduğunda değiştirilebilir.
forbidden (403) enableDvrModificationNotAllowed contentDetails.enableDvr değeri yalnızca yayının durumu created veya ready olduğunda değiştirilebilir.
forbidden (403) enableMonitorStreamModificationNotAllowed contentDetails.monitorStream.enableMonitorStream değeri yalnızca yayının durumu created veya ready olduğunda değiştirilebilir.
forbidden (403) recordFromStartModificationNotAllowed contentDetails.recordFromStart değeri yalnızca yayının durumu created veya ready olduğunda değiştirilebilir.
insufficientPermissions insufficientLivePermissions İsteğin, belirtilen canlı yayını güncelleme yetkisi yok. Daha fazla bilgi edinmek için OAuth2 kimlik doğrulamasını uygulama başlıklı makaleye göz atın.
insufficientPermissions liveStreamingNotEnabled İsteği yetkilendiren kullanıcı, YouTube'da canlı video akışı gerçekleştiremez. Kullanıcılar, https://www.youtube.com/features adresinde daha fazla bilgiye ulaşabilir.
invalidValue (400) invalidAutoStart liveBroadcast kaynağı, contentDetails.enableAutoStart özelliği için geçersiz bir değer içeriyordu. Kalıcı bir yayın için enableAutoStart ayarını değiştiremezsiniz.
invalidValue (400) invalidAutoStop liveBroadcast kaynağı, contentDetails.enableAutoStop özelliği için geçersiz bir değer içeriyordu. Kalıcı bir yayın için enableAutoStop ayarını değiştiremezsiniz.
invalidValue (400) invalidDescription liveBroadcast kaynağı, snippet.description özelliği için geçerli bir değer belirtmedi. snippet.description en fazla 5.000 karakter içerebilir.
invalidValue (400) invalidEmbedSetting liveBroadcast kaynağı, contentDetails.enable_embed özelliği için geçersiz bir değer içeriyordu. Bu yayını yerleştiremezsiniz.
invalidValue (400) invalidEnableClosedCaptions liveBroadcast kaynağında, contentDetails.enableClosedCaptions özelliğinin değeri contentDetails.closedCaptionType ayarının değeriyle uyumlu değil. Kaynağı yalnızca iki mülkten birini içerecek şekilde değiştirip isteği yeniden gönderin.
invalidValue (400) invalidLatencyPreferenceOptions liveBroadcast kaynağı, contentDetails.latencyPreference özelliği için geçersiz bir değer içeriyordu. Bu gecikme tercihi tüm ayarları desteklemez.
invalidValue (400) invalidPauseAdsUntil liveBroadcast kaynağı, monetizationDetails.cuepointSchedule.pauseAdsUntil özelliği için geçersiz bir değer içeriyor. Bu hata aşağıdaki nedenlerden kaynaklanabilir:
  • monetizationDetails.cuepointSchedule.pauseAdsUntil değeri, ISO 8601 (YYYY-AA-GGTsa:dk:sn.sZ) biçiminde belirtilmemiştir.
  • monetizationDetails.cuepointSchedule.pauseAdsUntil değeri gelecekteki bir değer değil.
  • monetizationDetails.cuepointSchedule.pauseAdsUntil değeri, geçerli saatten 10 dakikadan daha uzak.
invalidValue (400) invalidPrivacyStatus liveBroadcast kaynağı geçerli bir gizlilik durumu belirtmedi. Geçerli privacyStatus değerlerini inceleyin.
invalidValue (400) invalidProjection liveBroadcast kaynağı, contentDetails.projection özelliği için geçersiz bir değer içeriyordu. Kalıcı bir yayının projeksiyonu 360 olarak ayarlanamaz.
invalidValue (400) invalidScheduledEndTime liveBroadcast kaynağı, snippet.scheduledEndTime özelliği için geçersiz bir değer içeriyordu. Planlanan bitiş zamanı, planlanan başlangıç saatine uygun olmalıdır.
invalidValue (400) invalidScheduledStartTime liveBroadcast kaynağı, snippet.scheduledStartTime özelliği için geçersiz bir değer içeriyordu. Planlanan başlangıç zamanı gelecekte olmalıdır.
invalidValue (400) invalidTitle liveBroadcast kaynağı, snippet.title özelliği için geçerli bir değer belirtmedi. snippet.title 1-100 karakter uzunluğunda olmalıdır.
notFound (404) liveBroadcastNotFound liveBroadcast kaynağında belirtilen id özelliği bir yayını tanımlamadı.
required (400) broadcastStreamDelayMsRequired liveBroadcast kaynağı, contentDetails.monitorStream.broadcastStreamDelayMs özelliğini belirtmedi.
required (400) enableMonitorStreamRequired liveBroadcast kaynağı, contentDetails.monitorStream.enableMonitorStream özelliğini belirtmedi.
required (400) idRequired liveBroadcast kaynağı, id özelliği için bir değer içermeli ve belirtmelidir.
required (400) scheduledEndTimeRequired liveBroadcast kaynağı, snippet.scheduledEndTime özelliğini belirtmedi.
required (400) scheduledStartTimeRequired liveBroadcast kaynağı, snippet.scheduledStartTime özelliğini belirtmedi.

Deneyin.

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