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 örnekleri

İstek

HTTP isteği

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

Yetkilendirme

Bu istek, aşağıdaki kapsamların en az biriyle yetkilendirme gerektiriyor. Kimlik doğrulama ve yetkilendirme hakkında daha fazla bilgi edinmek için OAuth 2.0 yetkilendirmesini uygulama sayfasına göz atın.

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

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

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

Bu yöntemin, parametre değerinin belirttiği bölümlerde yer alan tüm değişken özelliklerin mevcut değerlerini 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 özel 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övdesinin belirttiği değerle güncellenir. İstek 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 uygun şekilde yetkilendirilmiş bir istekte kullanılabilir.
Not: Bu parametre yalnızca YouTube içerik iş ortakları içindir.

onBehalfOfContentOwner parametresi, isteğin yetkilendirme kimlik bilgilerinin, parametre değerinde belirtilen içerik sahibi adına hareket eden bir YouTube İçerik Yönetim Sistemi (İYS) 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 bir kanal için kimlik doğrulama bilgileri sağlamak zorunda kalmadan bir kez kimliklerini doğrulamalarını ve tüm video ve kanal verilerine erişmelerini sağlar. Kullanıcının kimlik doğrulaması yaptığı CMS hesabı, belirtilen YouTube içerik sahibine bağlı olmalıdır.
onBehalfOfContentOwnerChannel
string Bu parametre yalnızca uygun şekilde yetkilendirilmiş bir istekte kullanılabilir.
Not: Bu parametre yalnızca YouTube içerik iş ortakları içindir.

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 gereklidir ve yalnızca söz konusu parametreyle birlikte kullanılabilir. Ayrıca isteğin, onBehalfOfContentOwner parametresinin belirttiği içerik sahibine bağlı bir İçerik Yönetim Sistemi hesabı kullanılarak yetkilendirilmesi gerekir. Son olarak, onBehalfOfContentOwnerChannel parametresi 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çin tasarlanmıştır. İçerik sahiplerinin, her bir ayrı kanal için kimlik doğrulama kimlik bilgilerini sağlamak zorunda kalmadan bir kez kimlik doğrulaması yapmalarına ve parametre değerinde belirtilen kanal adına işlem gerçekleştirmelerine olanak tanır.

İstek içeriği

İstek gövdesinde bir liveBroadcast kaynağı sağlayın. Bu 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ğerler 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

    Bir güncelleme isteği gönderiyorsanız ve isteğiniz, halihazırda bir değere sahip bir mülk için 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 bir çağrıya yanıt olarak döndürebileceği hata mesajları tanımlanmaktadır. Daha fazla bilgi için hata mesajı bölümüne göz atı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 dolayı ortaya çıkabilir:
  • monetizationDetails.cuepointSchedule.enabled alanı true olarak ayarlanmamış. Bu alan yalnızca YouTube Studio kullanılarak 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 için OAuth2 kimlik doğrulamasını uygulama başlıklı makaleye göz atın.
insufficientPermissions liveStreamingNotEnabled İsteği yetkilendiren kullanıcının YouTube'da canlı video yayını yapma izni yok. Kullanıcılar https://www.youtube.com/features adresinden daha fazla bilgi edinebilir.
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. Siz kalıcı yayın için enableAutoStop ayarı değiştirilemez.
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 özellikten birini içerecek şekilde değiştirin ve ardından 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 tercihiyle bazı ayarlar desteklenmez.
invalidValue (400) invalidPauseAdsUntil liveBroadcast kaynağı , monetizationDetails.cuepointSchedule.pauseAdsUntil mülkü. Bu hata aşağıdaki nedenlerden dolayı oluşabilir:
  • monetizationDetails.cuepointSchedule.pauseAdsUntil değeri, ISO 8601 (YYYY-AA-GGTsa:dk:sn.sZ) biçiminde belirtilmemiş.
  • monetizationDetails.cuepointSchedule.pauseAdsUntil değeri gelecekte değil.
  • monetizationDetails.cuepointSchedule.pauseAdsUntil değeri, geçerli saatten 10 dakikadan daha uzakta.
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ı 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 uzunluğu 1 ile 100 karakter arasında 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ği ile yanıtını görmek için APIs Explorer yönergesini kullanın.