LiveBroadcasts: update

ブロードキャストを更新します。たとえば、liveBroadcast リソースの contentDetails オブジェクトで定義されたブロードキャスト設定を変更できます。

一般的なユースケース

リクエスト

HTTP リクエスト

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

認可

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

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

パラメータ

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

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

パラメータ値に含めることができる part プロパティは、idsnippetcontentDetailsmonetizationDetailsstatus です。

このメソッドは、パラメータ値で指定されたすべてのパーツに含まれる変更可能なすべてのプロパティについて、既存の値をオーバーライドします。たとえば、ブロードキャストのプライバシー ステータスは status 部分で定義されます。そのため、リクエストが非公開または限定公開のブロードキャストを更新し、リクエストの part パラメータ値に 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 リソースを指定します。このリソースについて:

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

    • id
    • snippet.scheduledStartTime
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs

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

    • snippet.title
    • snippet.description
    • snippet.scheduledStartTime
    • snippet.scheduledEndTime
    • status.privacyStatus
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs
    • contentDetails.enableAutoStart
    • contentDetails.enableAutoStop
    • contentDetails.enableClosedCaptions
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • monetizationDetails.cuepointSchedule.pauseAdsUntil

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

レスポンス

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

エラー

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

エラーのタイプ エラーの詳細 説明
forbidden (403) closedCaptionsTypeModificationNotAllowed contentDetails.closedCaptionsType 値は、ブロードキャストが created または ready ステータスの場合にのみ変更できます。
forbidden (403) enabledModificationNotAllowed enabled フィールドは読み取り専用です。
forbidden (403) scheduleStrategyModificationNotAllowed scheduleStrategy フィールドは読み取り専用です。
forbidden (403) repeatIntervalSecsModificationNotAllowed repeatIntervalSecs フィールドは読み取り専用です。
forbidden (403) pauseAdsUntilModificationNotAllowed pauseAdsUntil フィールドは変更できません。このエラーは、次の理由で発生することがあります。
  • monetizationDetails.cuepointSchedule.enabled フィールドが true に設定されていない。このフィールドは YouTube Studio でのみ設定できます。
  • ブロードキャストはライブ配信されていません。
forbidden (403) enableAutoStartModificationNotAllowed contentDetails.enableAutoStart 値は、ストリームが非アクティブで、ブロードキャストのステータスが created または ready の場合にのみ変更できます。
forbidden (403) enableClosedCaptionsModificationNotAllowed contentDetails.enableClosedCaptions 値は、ブロードキャストのステータスが created または ready の場合にのみ変更できます。
forbidden (403) enableDvrModificationNotAllowed contentDetails.enableDvr 値は、ブロードキャストのステータスが created または ready の場合にのみ変更できます。
forbidden (403) enableMonitorStreamModificationNotAllowed contentDetails.monitorStream.enableMonitorStream 値は、ブロードキャストのステータスが created または ready の場合にのみ変更できます。
forbidden (403) recordFromStartModificationNotAllowed contentDetails.recordFromStart 値は、ブロードキャストのステータスが created または ready の場合にのみ変更できます。
insufficientPermissions insufficientLivePermissions リクエストには、指定されたライブ配信を更新する権限がありません。詳細については、OAuth2 認証の実装をご覧ください。
insufficientPermissions liveStreamingNotEnabled リクエストを承認したユーザーには、YouTube でライブ動画をストリーミングする権限がありません。ユーザーは https://www.youtube.com/features で詳細を確認できます。
invalidValue (400) invalidAutoStart liveBroadcast リソースcontentDetails.enableAutoStart プロパティに無効な値が含まれています。 永続ブロードキャストの enableAutoStart 設定は変更できません。
invalidValue (400) invalidAutoStop liveBroadcast リソースcontentDetails.enableAutoStop プロパティに無効な値が含まれています。永続ブロードキャストの enableAutoStop 設定は変更できません。
invalidValue (400) invalidDescription liveBroadcast リソースsnippet.description プロパティに有効な値が指定されていません。snippet.description には最大 5,000 文字を使用できます。
invalidValue (400) invalidEmbedSetting liveBroadcast リソースcontentDetails.enable_embed プロパティに無効な値が含まれています。このブロードキャストを埋め込むことはできません。
invalidValue (400) invalidEnableClosedCaptions liveBroadcast リソースcontentDetails.enableClosedCaptions プロパティの値が contentDetails.closedCaptionType 設定の値と互換性がありません。2 つのプロパティのいずれか一方のみが含まれるようにリソースを変更してから、リクエストを再送信します。
invalidValue (400) invalidLatencyPreferenceOptions liveBroadcast リソースcontentDetails.latencyPreference プロパティに無効な値が含まれています。 すべての設定がこのレイテンシ設定でサポートされているわけではありません。
invalidValue (400) invalidPauseAdsUntil liveBroadcast リソースmonetizationDetails.cuepointSchedule.pauseAdsUntil プロパティに無効な値が含まれています。 このエラーは、次の理由で発生することがあります。
  • monetizationDetails.cuepointSchedule.pauseAdsUntil の値が ISO 8601(YYYY-MM-DDThh:mm:ss.sZ)形式で指定されていません。
  • monetizationDetails.cuepointSchedule.pauseAdsUntil の値が将来の日付ではありません。
  • monetizationDetails.cuepointSchedule.pauseAdsUntil の値が現在の時刻から 10 分を超えています。
invalidValue (400) invalidPrivacyStatus liveBroadcast リソースが有効なプライバシー ステータスを指定していない。有効な privacyStatusをご覧ください。
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 プロパティに有効な値が指定されていません。snippet.title は 1 ~ 100 文字にする必要があります。
notFound (404) liveBroadcastNotFound liveBroadcast リソースで指定された id プロパティがブロードキャストを識別できませんでした。
required (400) broadcastStreamDelayMsRequired liveBroadcast リソースcontentDetails.monitorStream.broadcastStreamDelayMs プロパティを指定していない。
required (400) enableMonitorStreamRequired liveBroadcast リソースcontentDetails.monitorStream.enableMonitorStream プロパティを指定していない。
required (400) idRequired liveBroadcast リソースには id プロパティの値を含め、指定する必要があります。
required (400) scheduledEndTimeRequired liveBroadcast リソースsnippet.scheduledEndTime プロパティを指定していない。
required (400) scheduledStartTimeRequired liveBroadcast リソースsnippet.scheduledStartTime プロパティを指定していない。

試してみよう:

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