Videos: update

這個 API 現在支援將頻道影片標示為「兒童專屬」。此外,channelvideo 資源現在也包含屬性,可識別頻道或影片的「兒童專屬」狀態。此外,《YouTube API 服務條款》和《開發人員政策》已於 2020 年 1 月 10 日更新。詳情請參閱 YouTube Data API 服務修訂版本歷史記錄和《YouTube API 服務條款》。

更新影片的中繼資料。

配額影響:呼叫此方法的配額費用為 50 個單位。

常見用途

要求

HTTP 要求

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

授權

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

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

參數

下表列出這項查詢支援的參數。列出的所有參數都是查詢參數。

參數
必要參數
part string
在本作業中,part 參數有以下兩種用途。這個方法會指出寫入作業會設定的屬性,以及 API 回應會納入的屬性。

請注意,這個方法會覆寫參數值所指定的任何部分所包含的所有可變更屬性現有值。舉例來說,影片的隱私權設定會包含在 status 部分。因此,如果您的要求更新私人影片,且要求的 part 參數值包含 status 部分,則影片的隱私設定會更新為要求主體指定的任何值。如果要求主體未指定值,系統會移除現有的隱私權設定,並將影片還原為預設的隱私權設定。

此外,並非所有部分都含有可在插入或更新影片時設定的屬性。舉例來說,statistics 物件會封裝 YouTube 為影片計算的統計資料,且不含可設定或修改的值。如果參數值指定的 part 不包含可變動的值,該 part 仍會納入 API 回應中。

以下清單列出了可加入參數值的 part 名稱:
  • contentDetails
  • fileDetails
  • id
  • liveStreamingDetails
  • localizations
  • paidProductPlacementDetails
  • player
  • processingDetails
  • recordingDetails
  • snippet
  • statistics
  • status
  • suggestions
  • topicDetails
選用參數
onBehalfOfContentOwner string
這個參數只能用於適當的授權要求注意:這個參數僅適用於 YouTube 內容合作夥伴。

onBehalfOfContentOwner 參數代表要求的授權憑證可識別 YouTube CMS 使用者,這些使用者是代表參數值中指定的內容擁有者。這個參數適用於擁有及管理多個 YouTube 頻道的 YouTube 內容合作夥伴。這項功能可讓內容擁有者驗證一次,即可存取所有影片和頻道資料,不必為每個頻道提供驗證憑證。使用者驗證的實際 CMS 帳戶必須連結至指定的 YouTube 內容擁有者。

要求主體

在要求主體中提供影片資源。針對該資源:

  • 您必須為下列屬性指定值:

    • id
    • snippet.title:只有在要求更新 video 資源的 snippet 時,才需要這項屬性。
    • snippet.categoryId:只有在要求更新 video 資源的 snippet 時,才需要這項屬性。
  • 您可以設定這些屬性的值:

    • snippet.categoryId
    • snippet.defaultLanguage
    • snippet.description
    • snippet.tags[]
    • snippet.title
    • status.embeddable
    • status.license
    • status.privacyStatus
    • status.publicStatsViewable
    • status.publishAt:如果您為這個屬性設定值,請務必將 status.privacyStatus 屬性設為 private
    • status.selfDeclaredMadeForKids
    • status.containsSyntheticMedia
    • recordingDetails.recordingDate
    • localizations.(key)
    • localizations.(key).title
    • localizations.(key).description

    如果您提交更新要求,但未為已設有值的屬性指定值,則系統會刪除該屬性現有的值。

回應

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

錯誤

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

錯誤類型 錯誤詳情 說明
badRequest (400) defaultLanguageNotSet API 要求嘗試新增經過本地化的影片詳細資料,但未指定影片詳細資料的預設語言。
badRequest (400) invalidCategoryId snippet.categoryId 屬性指定的類別 ID 無效。使用 videoCategories.list 方法擷取支援的類別。
badRequest (400) invalidDefaultBroadcastPrivacySetting 要求嘗試為預設廣播設定無效的隱私權設定。
badRequest (400) invalidDescription 要求中繼資料指定的是無效的影片說明。
badRequest (400) invalidPublishAt 要求中繼資料指定的預定發布時間無效。
badRequest (400) invalidRecordingDetails 要求中繼資料中的 recordingDetails 物件指定無效的錄製詳細資料。
badRequest (400) invalidTags 要求中繼資料指定無效的影片關鍵字。
badRequest (400) invalidTitle 要求中繼資料指定無效或空白的影片標題。
badRequest (400) invalidVideoMetadata 要求中繼資料無效。
forbidden (403) forbidden
forbidden (403) forbiddenEmbedSetting 要求嘗試為影片設定無效的嵌入設定。請注意,部分頻道可能沒有權限提供直播的嵌入式播放器。詳情請參閱 YouTube 說明中心
forbidden (403) forbiddenLicenseSetting 要求嘗試為影片設定無效的授權。
forbidden (403) forbiddenPrivacySetting 這項要求會嘗試為影片設定無效的隱私權設定。
notFound (404) videoNotFound 找不到要更新的影片。檢查要求主體中 id 欄位的值,確認其是否正確。

試試看!

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