LiveBroadcasts: transition

變更 YouTube 現場直播的狀態,並啟動與新狀態相關聯的任何程序。舉例來說,當你將廣播的狀態轉換為 testing 時,YouTube 就會開始將影片傳輸到該廣播的監控串流。在呼叫這個方法之前,應確認與廣播繫結的串流的 status.streamStatus 屬性值為 active

常見用途

要求

HTTP 要求

POST https://www.googleapis.com/youtube/v3/liveBroadcasts/transition

授權

這項要求需要至少下列其中一個範圍的授權 (進一步瞭解驗證和授權)。

內容範圍
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

參數

下表列出此查詢支援的參數。這裡列出的參數全都是查詢參數。

參數
必要參數
broadcastStatus string
broadcastStatus 參數會指出廣播變更的狀態。請注意,如要將廣播轉換成 testinglive 狀態,對於廣播要繫結的串流,status.streamStatus 必須是 active

可接受的值如下:
  • complete:廣播已結束。YouTube 會停止傳輸影片。
  • live:觀眾可以看到廣播。YouTube 會將影片傳輸至廣播的監控串流及其廣播串流。
  • testing:開始測試廣播。YouTube 會將影片傳輸到廣播的監控串流中。請注意,只有在廣播的 contentDetails.monitorStream.enableMonitorStream 屬性設為 true 時,您才能將廣播轉換為 testing 狀態。
id string
id 參數會指定要轉換為其他狀態的廣播專屬 ID。
part string
part 參數會指定一份以逗號分隔的清單,其中包含一或多個 API 回應會包含的 liveBroadcast 資源屬性。您可以在參數值中加入的 part 名稱包括 idsnippetcontentDetailsstatus
選用參數
onBehalfOfContentOwner string
這個參數只能在正確的授權要求中使用。注意:這個參數僅適用於 YouTube 內容合作夥伴。

onBehalfOfContentOwner 參數代表透過要求的授權憑證,代表 YouTube CMS 使用者,代表在參數值中指定的內容擁有者擔任代理人。這個參數適用於擁有及管理多個不同 YouTube 頻道的 YouTube 內容合作夥伴。內容擁有者只要通過一次驗證,即可存取所有影片和頻道資料,不必分別提供各個頻道的驗證憑證。用於驗證的 CMS 帳戶,必須連結至指定的 YouTube 內容擁有者。
onBehalfOfContentOwnerChannel string
這個參數只能在正確的授權要求中使用。這個參數只能在正確授權要求中使用。注意:這個參數僅適用於 YouTube 內容合作夥伴。

onBehalfOfContentOwnerChannel 參數會指定待加入影片的 YouTube 頻道 ID。如果要求指定 onBehalfOfContentOwner 參數值,就必須指定這個參數,且只能搭配該參數使用。此外,該要求都必須使用與 onBehalfOfContentOwner 參數指定的內容擁有者相連結的 CMS 帳戶進行授權。最後,onBehalfOfContentOwnerChannel 參數值指定的頻道必須與 onBehalfOfContentOwner 參數指定的內容擁有者相連結。

這個參數適用於擁有及管理多個不同 YouTube 頻道的 YouTube 內容合作夥伴。有了這項功能,內容擁有者只需驗證一次,就能代表參數值中指定的頻道執行動作,不必為每個頻道提供驗證憑證。

要求主體

呼叫此方法時,不要提供要求主體。

回應

如果成功的話,這個方法會在回應內文中傳回 liveBroadcast 資源

錯誤

下表列出 API 回應此方法時可能傳回的錯誤訊息。詳情請參閱錯誤訊息的說明文件。

錯誤類型 錯誤詳細資料 說明
backendError errorExecutingTransition 變更廣播狀態時發生錯誤。
forbidden (403) errorStreamInactive 與廣播繫結的串流處於閒置狀態時,系統不允許要求轉換。
forbidden (403) invalidTransition 現場直播無法從目前的狀態轉換為要求的狀態。
forbidden (403) redundantTransition 現場直播已處於要求的狀態,或是正在處理要求的狀態。
insufficientPermissions insufficientLivePermissions 這項要求未獲授權,無法轉換現場直播內容。
insufficientPermissions livePermissionBlocked 提出要求的使用者目前無法在 YouTube 上串流播放即時影片。如要瞭解使用者無法串流播放直播影片的原因,請前往使用者的頻道設定,網址為:https://www.youtube.com/features
insufficientPermissions liveStreamingNotEnabled 要求授權的使用者未啟用 YouTube 即時影像串流。使用者可以前往 https://www.youtube.com/features 瞭解更多資訊。
notFound (404) liveBroadcastNotFound id 參數指定的廣播訊息不存在。
rateLimitExceeded (403) userRequestsExceedRateLimit 使用者在指定時間範圍內傳送過多要求。
required (400) idRequired 必要的 id 參數必須識別要轉換狀態的廣播訊息。
required (400) statusRequired API 要求必須指定 status 參數的值。

試試看!

使用 APIs Explorer 呼叫這個 API 並查看 API 要求和回應。