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 のリクエストとレスポンスを確認します。