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 プロパティは、id 、snippet 、contentDetails 、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 リソースを指定します。対象リソース:
-
以下のプロパティの値を指定する必要があります。
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 のリクエストとレスポンスを確認します。