更新廣播訊息。舉例來說,您可以修改 liveBroadcast
資源的 contentDetails
物件中定義的廣播設定。
常見用途
要求
HTTP 要求
PUT https://www.googleapis.com/youtube/v3/liveBroadcasts
授權
這項要求需要授權,至少擁有下列其中一個範圍。如要進一步瞭解驗證和授權,請參閱實作 OAuth 2.0 授權。
範圍 |
---|
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
參數
下表列出這個查詢支援的參數。這裡列出的所有參數都是查詢參數。
參數 | ||
---|---|---|
必要參數 | ||
part |
string 此作業有兩個用途。 part 參數有兩個用途。可指出寫入作業要設定的屬性,以及 API 回應包含的屬性。可加入參數值中的 part 屬性為 id 、snippet 、contentDetails 、monetizationDetails 和 status 。請注意,這個方法會覆寫參數值指定任何部分的可變動屬性現有值。舉例來說,廣播的隱私狀態是在 status 部分定義。因此,如果您的要求更新私人或不公開廣播,且要求的 part 參數值包含 status 部分,則廣播的隱私權設定會更新為要求主體指定的任何值。如果要求主體未指定任何值,系統會移除現有的隱私權設定,並將播送內容還原為預設的隱私權設定。 |
|
選用參數 | ||
onBehalfOfContentOwner |
string 這個參數只能用於正確的授權請求。 注意:這個參數僅適用於 YouTube 內容合作夥伴。 「 onBehalfOfContentOwner 」參數代表要求的授權憑證可識別 YouTube 內容管理系統 (CMS) 使用者,該使用者代表參數值中指定的內容擁有者。這個參數適用於擁有並管理許多不同 YouTube 頻道的 YouTube 內容合作夥伴。內容擁有者只要進行驗證一次,就能存取所有的影片和頻道資料,不必分別提供各個頻道的驗證憑證。使用者驗證的 CMS 帳戶必須連結至指定的 YouTube 內容擁有者。 |
|
onBehalfOfContentOwnerChannel |
string 這個參數只能用於正確的授權請求。 注意:這個參數僅適用於 YouTube 內容合作夥伴。 onBehalfOfContentOwnerChannel 參數可用於指定影片待加入頻道的 YouTube 頻道 ID。要求指定 onBehalfOfContentOwner 參數值時,這是必要參數,並只能搭配該參數使用。此外,請求必須使用與 onBehalfOfContentOwner 參數指定的內容擁有者相連結的 CMS 帳戶進行授權。最後,onBehalfOfContentOwnerChannel 參數值指定的頻道必須與 onBehalfOfContentOwner 參數指定的內容擁有者連結。這個參數適用於擁有並管理許多不同 YouTube 頻道的 YouTube 內容合作夥伴。讓內容擁有者只需進行驗證一次,就能代表參數值中指定的頻道執行動作,而不用為各個頻道提供驗證憑證。 |
要求主體
在要求主體中提供 liveBroadcast 資源。 針對該資源:
-
您必須指定這些屬性的值:
id
snippet.scheduledStartTime
contentDetails.monitorStream.enableMonitorStream
contentDetails.monitorStream.broadcastStreamDelayMs
-
您可以設定這些屬性的值:
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
如果你提交更新要求,且要求未針對已具有值的屬性指定值,系統將刪除該屬性的現有值。
回應
如果成功,這個方法會在回應主體中傳回 liveBroadcast 資源。
錯誤
下表顯示 API 為回應這個方法時,可能會傳回的錯誤訊息。詳情請參閱錯誤訊息。
錯誤類型 | 錯誤詳情 | 說明 |
---|---|---|
forbidden (403) |
closedCaptionsTypeModificationNotAllowed |
只有在廣播狀態為 created 或 ready 時,才能修改 contentDetails.closedCaptionsType 值。 |
forbidden (403) |
enabledModificationNotAllowed |
enabled 欄位處於唯讀狀態。 |
forbidden (403) |
scheduleStrategyModificationNotAllowed |
scheduleStrategy 欄位處於唯讀狀態。 |
forbidden (403) |
repeatIntervalSecsModificationNotAllowed |
repeatIntervalSecs 欄位處於唯讀狀態。 |
forbidden (403) |
pauseAdsUntilModificationNotAllowed |
無法修改「pauseAdsUntil 」欄位。
發生這個錯誤的可能原因如下:
|
forbidden (403) |
enableAutoStartModificationNotAllowed |
只有在串流已停用且廣播處於 created 或 ready 狀態時,才能修改 contentDetails.enableAutoStart 值。 |
forbidden (403) |
enableClosedCaptionsModificationNotAllowed |
只有在廣播狀態為 created 或 ready 時,才能修改 contentDetails.enableClosedCaptions 值。 |
forbidden (403) |
enableDvrModificationNotAllowed |
只有在廣播狀態為 created 或 ready 時,才能修改 contentDetails. 值。 |
forbidden (403) |
enableMonitorStreamModificationNotAllowed |
只有在廣播狀態為 created 或 ready 時,才能修改 contentDetails. 值。 |
forbidden (403) |
recordFromStartModificationNotAllowed |
只有在廣播狀態為 created 或 ready 時,才能修改 contentDetails. 值。 |
insufficientPermissions |
insufficientLivePermissions |
這項要求無權更新指定的現場直播內容。詳情請參閱「實作 OAuth2 驗證」。 |
insufficientPermissions |
liveStreamingNotEnabled |
已授權請求的使用者不具備在 YouTube 上串流播放即時影像的功能。你可以前往 https://www.youtube.com/features 查看更多資訊。 |
invalidValue (400) |
invalidAutoStart |
liveBroadcast 資源
的 contentDetails.enableAutoStart 屬性包含無效值。
您無法修改永久廣播的 enableAutoStart 設定。 |
invalidValue (400) |
invalidAutoStop |
liveBroadcast 資源
的 contentDetails.enableAutoStop 屬性包含無效值。個人中心
無法修改永久廣播的 enableAutoStop 設定。 |
invalidValue (400) |
invalidDescription |
liveBroadcast 資源並未為 snippet.description 屬性指定有效值。snippet.description 最多可包含 5000 個字元。 |
invalidValue (400) |
invalidEmbedSetting |
liveBroadcast 資源的 contentDetails.enable_embed 屬性含有無效值。您無法嵌入這個廣播。 |
invalidValue (400) |
invalidEnableClosedCaptions |
在 liveBroadcast 資源中,contentDetails.enableClosedCaptions 屬性的值與 contentDetails.closedCaptionType 設定的值不相容。請修改資源,只加入其中一種屬性,然後重新提交要求。 |
invalidValue (400) |
invalidLatencyPreferenceOptions |
liveBroadcast 資源
的 contentDetails.latencyPreference 屬性包含無效值。
此延遲時間偏好設定不支援部分設定。
|
invalidValue (400) |
invalidPauseAdsUntil |
liveBroadcast 資源
的
monetizationDetails.cuepointSchedule.pauseAdsUntil 屬性。
發生這個錯誤的可能原因如下:
|
invalidValue (400) |
invalidPrivacyStatus |
liveBroadcast 資源並未指定有效的隱私權狀態。請參閱有效的 privacyStatus 值。 |
invalidValue (400) |
invalidProjection |
liveBroadcast 資源的 contentDetails.projection 屬性含有無效值。永久廣播的投影無法設為 360。 |
invalidValue (400) |
invalidScheduledEndTime |
liveBroadcast 資源的 snippet.scheduledEndTime 屬性含有無效值。排定的結束時間必須晚於排定的開始時間。 |
invalidValue (400) |
invalidScheduledStartTime |
liveBroadcast 資源的 snippet.scheduledStartTime 屬性含有無效值。排定的開始時間必須設在未來。 |
invalidValue (400) |
invalidTitle |
liveBroadcast 資源並未為 snippet.title 屬性指定有效值。snippet.title 的長度必須介於 1 到 100 個字元之間。 |
notFound (404) |
liveBroadcastNotFound |
LiveBroadcast 資源中指定的 id 屬性無法識別廣播訊息。 |
required (400) |
broadcastStreamDelayMsRequired |
liveBroadcast 資源並未指定 contentDetails. 屬性。 |
required (400) |
enableMonitorStreamRequired |
liveBroadcast 資源並未指定 contentDetails. 屬性。 |
required (400) |
idRequired |
liveBroadcast 資源必須包含和指定 id 屬性的值。 |
required (400) |
scheduledEndTimeRequired |
liveBroadcast 資源並未指定 snippet.scheduledEndTime 屬性。 |
required (400) |
scheduledStartTimeRequired |
liveBroadcast 資源並未指定 snippet.scheduledStartTime 屬性。 |
試試看!
請使用 APIs Explorer 呼叫這個 API,並查看 API 要求和回應。