LiveBroadcasts: insert

API がライブ ブロードキャストを「子ども向け」としてマークする機能をサポートするようになり、liveBroadcast リソースに、そのライブ ブロードキャストの「子ども向け」ステータスを識別するプロパティが含まれるようになりました。YouTube API サービスの利用規約とデベロッパー ポリシーも 2020 年 1 月 10 日に更新されました。詳しくは、YouTube Live Streaming API の利用規約YouTube API サービスの利用規約の変更履歴をご覧ください。

ブロードキャストを作成します。

一般的なユースケース

リクエスト

HTTP リクエスト

POST 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 プロパティは、idsnippetcontentDetailsstatus です。
オプション パラメータ
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

    注: プロパティ テーブルには、上記のプロパティに設定されているデフォルト値が記載されています。デフォルト値は、次のいずれかの場合に割り当てられます。
    • これらのプロパティは値を指定しません。
    • リクエストの part パラメータ値に、これらのプロパティを含む部分が指定されていません。

レスポンス

成功すると、このメソッドはレスポンスの本文で 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 のリクエストとレスポンスを確認します。