Videos: update

この API で、チャンネル動画を「子ども向け」としてマークする機能がサポートされるようになりました。さらに、channel リソースと video リソースに、そのチャンネルまたは動画の「子ども向け」ステータスを識別するプロパティが含まれるようになりました。YouTube API サービスの利用規約とデベロッパー ポリシーも 2020 年 1 月 10 日に更新されました。詳しくは、YouTube Data API サービスYouTube API サービス利用規約の変更履歴をご覧ください。

動画のメタデータを更新します。

割り当てへの影響: このメソッドの呼び出しにより、50 ユニットの割り当てコストが発生します。

一般的なユースケース

リクエスト

HTTP リクエスト

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

認可

このリクエストは、少なくとも次のうち 1 つのスコープでの承認が必要です(認証と承認の詳細をご確認ください)。

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

パラメータ

次の表に、このクエリでサポートされているパラメータを示します。このリストのパラメータはすべてクエリ パラメータです。

パラメータ
必須パラメータ
part string
この操作では、part パラメータは 2 つの目的を果たします。書き込み操作で設定されるプロパティと、API レスポンスに含まれるプロパティを指定します。

このメソッドは、パラメータ値で指定されたすべての部分に含まれるすべての変更可能なプロパティの既存の値をオーバーライドします。たとえば、動画のプライバシー設定は status 部分に含まれています。そのため、リクエストで非公開動画を更新する場合に、リクエストの part パラメータ値に status の部分が含まれている場合、動画のプライバシー設定はリクエストの本文で指定された値に更新されます。リクエストの本文で値を指定しない場合、既存のプライバシー設定が削除され、動画はデフォルトのプライバシー設定に戻ります。

また、動画の挿入時または更新時に設定できるプロパティがすべてのパーツに含まれているわけではありません。たとえば、statistics オブジェクトは、動画について YouTube が計算した統計情報をカプセル化します。ユーザーが設定または変更できる値は含まれません。パラメータ値で、変更可能な値を含まない part が指定されていても、その part は API レスポンスに引き続き含まれます。

次のリストは、パラメータ値に含めることができる part 名を示します。
  • contentDetails
  • fileDetails
  • id
  • liveStreamingDetails
  • localizations
  • 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
    • recordingDetails.locationDescription(非推奨
    • recordingDetails.location.latitude(非推奨
    • recordingDetails.location.longitude(非推奨
    • recordingDetails.recordingDate
    • localizations.(key)
    • localizations.(key).title
    • localizations.(key).description

    更新リクエストを送信する場合、既に値が設定されているプロパティの値を指定していないと、そのプロパティの既存の値が削除されます。

レスポンス

成功すると、このメソッドはレスポンスの本文で動画のリソースを返します。

エラー

次の表に、このメソッドの呼び出しに対して 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 のリクエストとレスポンスを確認します。