Channels: update

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

チャンネルのメタデータを更新します。このメソッドは現在、channel リソースの brandingSettingsinvideoPromotionlocalizations オブジェクトとその子プロパティの更新のみをサポートしています。

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

一般的なユースケース

リクエスト

HTTP リクエスト

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

承認

このリクエストは、少なくとも次のうち 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 レスポンスに含まれるプロパティを指定します。

この API では現在、パラメータ値を brandingSettingsinvideoPromotionlocalizations のいずれかに設定することしかできません。(1 回のリクエストでこれらのパートのいずれか 1 つのみを更新できます)。

このメソッドは、パラメータ値で指定されたパートに含まれるすべての変更可能なプロパティの既存の値をオーバーライドします。
オプション パラメータ
onBehalfOfContentOwner string
このパラメータは、適切に承認されたリクエストでのみ使用できます。onBehalfOfContentOwner パラメータは、認証されたユーザーがパラメータ値で指定されたコンテンツ所有者の代理を務めていることを示します。このパラメータは、複数の YouTube チャンネルを所有、管理している YouTube コンテンツ パートナーを対象にしています。このパラメータを使用すると、コンテンツ所有者は一度認証されれば、すべての動画やチャンネル データにアクセスできるようになります。チャンネルごとに認証情報を指定する必要はありません。ユーザー認証に使用する実際の CMS アカウントは、指定された YouTube コンテンツ所有者にリンクされていなければなりません。

リクエスト本文

リクエストの本文にはチャンネル リソースを指定します。このリソースについて:

  • 以下のプロパティの値を指定する必要があります。

    • id

  • 以下のプロパティの値を指定することができます。

    • brandingSettings.channel.country
    • brandingSettings.channel.description
    • brandingSettings.channel.defaultLanguage
    • brandingSettings.channel.keywords
    • brandingSettings.channel.trackingAnalyticsAccountId
    • brandingSettings.channel.unsubscribedTrailer
    • localizations.(key)
    • localizations.(key).title
    • localizations.(key).description
    • status.selfDeclaredMadeForKids

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

レスポンス

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

エラー

次の表に、このメソッドの呼び出しに対して API から返されるエラー メッセージを示します。詳細については、エラー メッセージのドキュメントを参照してください。

エラーのタイプ エラーの詳細 説明
badRequest (400) brandingValidationError brandingSettings オブジェクトの値の 1 つが検証で不合格でした。channels.list メソッドを使用してチャンネルの既存の設定を取得し、channels リソース ドキュメントのガイドラインに沿ってプロパティ値を更新します。
badRequest (400) channelTitleUpdateForbidden チャンネルの brandingSettings part を更新する場合は、brandingSettings.channel.title プロパティの値をチャンネルの現在のタイトルに設定するか、このプロパティを省略する必要があります。プロパティの値を変更すると、API からエラーが返されます。
badRequest (400) defaultLanguageNotSetError localizations を更新するには、defaultLanguage を設定する必要があります。
badRequest (400) invalidBrandingOption 指定したブランド設定のいずれかが存在しません。channels.list メソッドを使用して有効な値を取得し、channels リソース ドキュメントのガイドラインに沿って値を更新してください。
badRequest (400) invalidCustomMessage リクエスト メタデータに無効なカスタム メッセージが指定されています。リクエストが送信されたリソースの invideoPromotion.items[].customMessage プロパティの値を確認します。
badRequest (400) invalidDuration リクエスト メタデータの invideoPromotion 部に無効な再生時間が指定されています。
badRequest (400) invalidDuration 動画プレーヤーでのプロモート アイテムの配置方法を決定するための、リクエスト メタデータにより指定されている位置タイプが無効です。リクエストが送信されたリソースの invideoPromotion.position.type プロパティの値を確認します。
badRequest (400) invalidRecentlyUploadedBy リクエスト メタデータに無効なチャンネル ID が指定されています。リクエストが送信されたリソースの invideoPromotion.items[].id.recentlyUploadedBy プロパティの値を確認します。
badRequest (400) invalidTimingOffset リクエスト メタデータで、invideoPromotion 部に無効なタイミング オフセットが指定されています。
badRequest (400) invalidTimingOffset リクエスト メタデータが、動画プレーヤーにプロモート アイテムを表示するタイミングを決定するために指定しているタイミング オフセットが無効です。リクエストが送信されたリソースの invideoPromotion.timing.offsetMs プロパティの値を確認します。
badRequest (400) invalidTimingType リクエスト メタデータが、動画プレーヤーにプロモート アイテムを表示するタイミングを決定するために指定しているタイミング メソッドが無効です。リクエストが送信されたリソースの invideoPromotion.timing.type プロパティの値を確認します。
badRequest (400) localizationValidationError Localizations オブジェクトの値の 1 つが検証で不合格でした。channels.list メソッドを使用して有効な値を取得し、チャネル リソース ドキュメントのガイドラインに沿って値を更新してください。
badRequest (400) tooManyPromotedItems invideoPromotion 部分で許可されるプロモート アイテムの数が超過しています。
forbidden (403) channelForbidden id パラメータで指定されたチャネルがリクエストをサポートしていないか、リクエストが適切に承認されていません。
forbidden (403) promotedVideoNotAllowed API リクエストが更新しようとしているチャンネルが見つかりません。このリクエストによって送信された channel リソースの id プロパティの値をチェックして、チャンネル ID が正しいことを確認します。
forbidden (403) websiteLinkNotAllowed 指定されたウェブサイトの URL は使用できません。
notFound (404) channelNotFound id パラメータで指定されたチャンネルが見つかりません。
notFound (404) channelNotFound id パラメータで指定されたチャンネルが見つからないか、ブランド オプションがありません。
notFound (404) unknownChannelId 指定されたチャンネル ID が見つかりませんでした。
notFound (404) unknownChannelId 指定された最近アップロードしたチャンネル ID が見つかりませんでした。
notFound (404) unknownVideoId プロモート アイテムとして指定された動画 ID が見つかりません。
required (400) requiredItemIdType リクエスト メタデータでは、invideoPromotion 部分でアイテムタイプを指定する必要があります。
required (400) requiredItemId リクエスト メタデータでは、invideoPromotion 部分のアイテム ID を指定する必要があります。
required (400) requiredTimingOffset リクエスト メタデータでは、プロモート アイテムを表示するタイミングを YouTube が決定できるように、デフォルトのタイミング オフセットを指定する必要があります。このリクエストが送信するリソースの invideoPromotion.defaultTiming.offsetMs プロパティの値を設定します。
required (400) requiredTimingOffset リクエスト メタデータでタイミング オフセットを指定して、プロモート アイテムを表示するタイミングを YouTube が判断できるようにする必要があります。このリクエストが送信するリソースの invideoPromotion.timing.offsetMs プロパティの値を設定します。
required (400) requiredTimingType リクエスト メタデータでタイミング メソッドを指定して、プロモート アイテムを表示するタイミングを YouTube が判断できるようにする必要があります。このリクエストが送信するリソースの invideoPromotion.defaultTiming.type プロパティの値を設定します。
required (400) requiredTimingType リクエスト メタデータでタイミング メソッドを指定して、プロモート アイテムを表示するタイミングを YouTube が判断できるようにする必要があります。このリクエストが送信するリソースの invideoPromotion.timing.type プロパティの値を設定します。
required (400) requiredTiming リクエスト メタデータでは、invideoPromotion 部分で各項目のタイミングを指定する必要があります。
required (400) requiredVideoId プロモート アイテムを特定するため、リクエスト メタデータには動画 ID を指定する必要があります。
required (400) requiredWebsiteUrl リクエスト メタデータでは、invideoPromotion 部分にウェブサイトの URL を指定する必要があります。このリクエストが送信するリソースの invideoPromotion.items[].id.websiteUrl プロパティの値を設定します。

試してみよう:

APIs Explorer を使用してこの API を呼び出し、API のリクエストとレスポンスを確認します。