API 現在可以支援將現場直播標示為「兒童專屬」,而
liveBroadcast
資源現在包含一項資源,可指出該直播活動的「兒童專屬」狀態。YouTube API 的《服務條款》和《開發人員政策》也已於 2020 年 1 月 10 日更新。如需更多資訊,請參閱 YouTube Live Streaming API 服務的修訂版本記錄和《YouTube API 服務條款》。建立廣播。
常見用途
要求
HTTP 要求
POST https://www.googleapis.com/youtube/v3/liveBroadcasts
授權
這項要求需要至少下列其中一個範圍的授權 (進一步瞭解驗證和授權)。
內容範圍 |
---|
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
參數
下表列出此查詢支援的參數。這裡列出的參數全都是查詢參數。
參數 | ||
---|---|---|
必要參數 | ||
part |
string 在這項作業中, part 參數有兩個用途。它會識別寫入作業將設定的屬性,以及 API 回應會包含的屬性。您可以加入參數值中的 part 屬性為 id 、snippet 、contentDetails 和 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 資源。針對該資源:
-
您必須指定下列屬性的值:
snippet.title
snippet.scheduledStartTime
status.privacyStatus
-
您可以設定下列屬性的值:
snippet.title
snippet.description
snippet.scheduledStartTime
snippet.scheduledEndTime
status.privacyStatus
status.selfDeclaredMadeForKids
contentDetails.monitorStream.enableMonitorStream
contentDetails.monitorStream.broadcastStreamDelayMs
contentDetails.enableAutoStart
contentDetails.enableAutoStop
contentDetails.enableClosedCaptions
contentDetails.enableDvr
contentDetails.enableEmbed
contentDetails.recordFromStart
回應
如果成功的話,這個方法會在回應內文中傳回 liveBroadcast 資源。
錯誤
下表列出 API 回應此方法時可能傳回的錯誤訊息。詳情請參閱錯誤訊息的說明文件。
錯誤類型 | 錯誤詳細資料 | 說明 |
---|---|---|
insufficientPermissions |
insufficientLivePermissions |
這項要求未獲授權,無法建立現場直播。 |
insufficientPermissions |
livePermissionBlocked |
提出要求的使用者目前無法在 YouTube 上串流播放即時影片。如要瞭解使用者無法串流播放直播影片的原因,請前往使用者的頻道設定,網址為:https://www.youtube.com/features。 |
insufficientPermissions |
liveStreamingNotEnabled |
要求授權的使用者未啟用 YouTube 即時影像串流。使用者可以前往 https://www.youtube.com/features 瞭解更多資訊。 |
invalidValue (400) |
invalidAutoStart |
liveBroadcast 資源含有對 contentDetails.enableAutoStart 屬性無效的值。部分廣播功能不支援這項設定。 |
invalidValue (400) |
invalidAutoStop |
liveBroadcast 資源含有對 contentDetails.enableAutoStop 屬性無效的值。您無法修改永久廣播的 enableAutoStop 設定。 |
invalidValue (400) |
invalidDescription |
liveBroadcast 資源未指定 snippet.description 屬性的有效值。屬性值最多可包含 5,000 個字元。 |
invalidValue (400) |
invalidEmbedSetting |
liveBroadcast 資源含有對 contentDetails.enable_embed 屬性無效的值。無法嵌入這則廣播訊息。 |
invalidValue (400) |
invalidLatencyPreferenceOptions |
liveBroadcast 資源含有對 contentDetails.latencyPreference 屬性無效的值。這項延遲時間偏好設定僅支援部分設定。
|
invalidValue (400) |
invalidPrivacyStatus |
liveBroadcast 資源含有對 status.privacy_status 屬性無效的值。 |
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 屬性的有效值。屬性值長度必須介於 1 到 100 個半形字元之間。 |
limitExceeded |
userBroadcastsExceedLimit |
使用者建立的直播或已排定的直播過多,必須停止或刪除部分直播。 |
rateLimitExceeded |
userRequestsExceedRateLimit |
使用者在指定時間範圍內傳送過多要求。 |
required (400) |
privacyStatusRequired |
liveBroadcast 資源必須指明隱私設定狀態。請參閱有效的 privacyStatus 值。 |
required (400) |
scheduledEndTimeRequired |
liveBroadcast 資源必須指定 snippet.scheduledEndTime 屬性。 |
required (400) |
scheduledStartTimeRequired |
liveBroadcast 資源必須指定 snippet.scheduledStartTime 屬性。 |
required (400) |
titleRequired |
liveBroadcast 資源必須指定 snippet.title 屬性。 |
試試看!
使用 APIs Explorer 呼叫這個 API 並查看 API 要求和回應。