YouTube Live Streaming API - 変更履歴

このページでは、YouTube Live Streaming API の変更内容とドキュメントの更新内容の一覧を示します。この変更履歴を購読する登録

2025 年 7 月 14 日

streamList API の使用方法に関するガイダンスを提供するために、liveChatMessages.streamList メソッドの説明が更新されました。

2023 年 10 月 9 日

参考として、どのステッカー ID がどのスーパーステッカーに関連しているかは、こちらの CSV ファイルで確認できます。この情報を反映するために、liveChatMessage リソースの snippet.superStickerDetails.superStickerMetadata.stickerId プロパティと superChatEvent リソースの snippet.superStickerMetadata.stickerId プロパティの定義が更新されました。

2023 年 9 月 15 日

API で、ライブブロードキャストに広告を挿入する新しい方法がサポートされるようになりました。liveCuepoints を使用してブロードキャストに広告挿入点を手動で挿入できることに加え、YouTube では、ブロードキャストにミッドロール広告挿入点を一定の間隔で自動的に挿入する機能がサポートされるようになりました。

ブロードキャストの所有者が自動広告を有効にすると、広告の動作について次の点を確認できます。

  • ミッドロール広告ブレーク間の間隔の長さ。
  • 広告キューポイントのスケジュール設定戦略。キューポイントは、すべての視聴者に対して同時に挿入することも、視聴者ごとにタイミングを変えることもできます。後者の戦略では、YouTube でキューポイントのスケジュール設定をより高い頻度で行うことができるため、視聴者はキューポイントを受け取る資格がある場合にキューポイントを受け取ることができます。
  • ミッドロール広告が表示されない期間。この機能では、ブロードキャストの所有者が、特定の時間までミッドロール広告の挿入を一時停止するように指定します。

この機能をサポートするために、ドキュメントには次の API の変更が反映されています。

  • liveBroadcast リソースに monetizationDetails オブジェクトが含まれるようになりました。オブジェクトのフィールドは、ブロードキャストで自動広告挿入が有効になっているかどうかを示し、キューポイントのスケジュール設定に関する追加情報を指定します。
  • liveBroadcast.list メソッドの part パラメータは、値 monetizationDetails をサポートしています。
  • update メソッドを使用すると、ライブ配信でミッドロール広告の挿入を一定期間一時停止できます。また、ライブ配信の収益化の詳細を更新する際に発生する可能性のあるエラーもいくつか特定しました。

2023 年 8 月 1 日

この改訂での変更内容は次のとおりです:

  • liveBroadcasts.update メソッドでは、次のフィールドに値を指定する必要がなくなりました。

    • snippet.title
    • status.privacyStatus

    リクエストでこれらのフィールドを省略すると、変更されません。

2022 年 11 月 1 日

  • 新しい liveBroadcasts.cuepoint メソッドを使用すると、YouTube でライブ配信を行っているチャンネル所有者は、そのライブ配信にキューポイントを挿入して、広告ブレークをトリガーできます。このメソッドは liveCuepoints.insert メソッドに代わるもので、YouTube コンテンツ パートナーのみがライブブロードキャストにキューポイントを挿入できるようになります。

    この新しい方法の利用状況を反映するため、いくつかのガイドが更新されました。

  • 注: これは非推奨のお知らせです。

    liveCuepoints.insert メソッドは非推奨になりました。liveCuepoints.insert メソッドのサポートは 2023 年 5 月 1 日以降に削除されます。API ユーザーは、代わりに liveBroadcasts.cuepoint メソッドを呼び出すようにアプリケーションを更新する必要があります。

  • liveBroadcasts.control メソッドのドキュメントが削除されました。このメソッドのサポート終了に関するお知らせは 2020 年 9 月に掲載されました。

2022 年 10 月 1 日

この改訂での変更内容は次のとおりです:

  • liveBroadcasts.update メソッドでは、これらのフィールドに値を指定する必要がなくなりました。

    • contentDetails.enableContentEncryption
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • contentDetails.startWithSlate

    リクエストでこれらのフィールドを省略すると、変更されません。

  • サポートが終了した liveBroadcast フィールドのドキュメントを削除しました。

    • contentDetails.enableContentEncryption
    • contentDetails.startWithSlate

2022 年 4 月 1 日

この改訂での変更内容は次のとおりです:

  • snippet.type プロパティで、次の 2 つの新しい値がサポートされるようになりました。

    • membershipGiftingEvent
    • giftMembershipReceivedEvent
  • liveChatMessage リソースの新しい snippet.membershipGiftingDetails プロパティとその子には、メンバーシップ ギフト イベントに関する情報が含まれています。同様に、新しい snippet.giftMembershipReceivedDetails プロパティとその子には、ギフト メンバーシップの受け取りイベントに関する情報が含まれています。

2021 年 9 月 15 日

この改訂での変更内容は次のとおりです:

  • snippet.type プロパティで、次の 2 つの新しい値がサポートされるようになりました。

    • newSponsorEvent
    • memberMilestoneChatEvent
  • liveChatMessage リソースの新しい snippet.memberMilestoneChatDetails プロパティとその子には、メンバー マイルストーン チャット イベントに関する情報が含まれています。同様に、新しい snippet.newSponsorDetails プロパティとその子には、新しいスポンサー イベントに関する情報が含まれています。

2020 年 12 月 1 日

API の liveBroadcasts.transition メソッドは、新しい 403Forbidden)エラーをサポートします。このエラーは、ユーザーが一定の時間枠内に送信したリクエストが多すぎることを示します。エラーの理由は userRequestsExceedRateLimit です。

2020 年 9 月 21 日

  • liveBroadcast リソースの status.madeForKids プロパティの定義が更新され、プロパティが読み取り専用であることが明確になりました。これは API の機能の変更を反映したものではありません。

    ライブブロードキャストを子ども向けとして指定するには、ブロードキャストを作成する liveBroadcasts.insert メソッドを呼び出すときに、status.selfDeclaredMadeForKids プロパティを true に設定します。

  • 注: この変更には、非推奨の発表と、以前の非推奨の発表の更新が含まれます。

    liveBroadcasts.control メソッドは 2020 年 10 月 1 日以降に非推奨となります。この日以降、このメソッドへの呼び出しはすべて禁止(403)エラーを返し、メソッドは後で完全に削除されます。YouTube の取り込みサーバーに送信される動画にオーバーレイを追加することで、クライアントは独自のスレートを実装できます。

    2020 年 4 月 16 日に発表されたサポート終了のお知らせで、当初 2020 年 9 月 1 日に予定されていたサポート終了日が延期され、2020 年 10 月 1 日以降に変更されました。したがって、非推奨のお知らせに含まれる機能と liveBroadcasts.control メソッドはすべて同時に非推奨となります。

2020 年 7 月 17 日

注: これは、以前の非推奨のお知らせの更新です。

2016 年 4 月に非推奨となった liveStream リソースの cdn.format フィールドは、2020 年 8 月 17 日をもってサポートが終了します。この日以降、そのフィールドをまだ使用しているリクエストは失敗します。

コードで cdn.format フィールドがまだ使用されている場合は、cdn.frameRate プロパティと cdn.resolution プロパティを使用して、フレームレートと解像度を別々に指定するように更新する必要があります。

2020 年 7 月 6 日

HLS を使用した YouTube ライブ コンテンツの配信ガイドが更新され、いくつかの変更が加えられました。

また、新しい取り込みプロトコルの比較では、YouTube がサポートする取り込みプロトコル、各プロトコルでサポートされるコーデック、各プロトコルの適切なユースケースに関する追加情報が一覧表示されます。

2020 年 4 月 16 日

今回のアップデートには、新しいプロパティとサポート終了のお知らせが含まれています。

  • liveBroadcast リソースで contentDetails.enableAutoStop プロパティがサポートされるようになりました。このプロパティは、チャンネル所有者がバインドされた動画ストリームで動画のストリーミングを停止してから約 1 分後に、ブロードキャストを自動的に停止するかどうかを示します。

    ブロードキャストのライフサイクルのドキュメントが更新され、contentDetails.enableAutoStart プロパティまたは contentDetails.enableAutoStop プロパティを true に設定した場合に、YouTube ライブイベントの作成と管理の手順がどのように変わるかについて説明されています。

  • 注: これは非推奨のお知らせです。これらの変更は 2020 年 9 月 1 日以降に有効になります。変更が有効になる実際の日付は、以下で非推奨日と呼びます。

    この更新では、互換性を破る可能性のある変更について説明します。この問題は、チャンネルのデフォルトの liveStream リソースと liveBroadcast リソースを使用して YouTube でライブ コンテンツをストリーミングする API クライアント アプリケーションに影響します。具体的には、永続的なブロードキャストとストリームに関連付けられたブロードキャスト IDストリーム ID は、新しいブロードキャストの開始に使用できなくなります。

    次のいずれかに該当する場合、アプリケーションはこの問題の影響を受けます。

    • liveBroadcast リソースの isDefaultBroadcast プロパティの値を確認します。このプロパティは、非推奨日以降は返されません。
    • liveStream リソースの isDefaultStream プロパティの値を確認します。このプロパティは、非推奨日以降は返されません。
    • liveBroadcasts.list メソッドを呼び出し、broadcastType パラメータ値を persistent または all に設定します。このパラメータは、これらの変更の一環として非推奨になります。サポート終了日以降:
      • broadcastType パラメータの値が persistent の場合、liveBroadcasts.list メソッドは結果を返しません。
      • broadcastType パラメータの値が all の場合、liveBroadcasts.list メソッドは、その時間より前に存在していた永続ブロードキャストを返しません。

    これまで YouTube では、チャンネルでライブ配信が有効になると、デフォルトのストリームとデフォルトのブロードキャストが自動的に作成されていました。デフォルトのストリームは無期限に存在し、開始時刻や終了時刻が関連付けられておらず、削除できませんでした。同様に、デフォルトのブロードキャストは永続的と見なされていました。常に存在し、特定のイベントにバインドされていませんでした。

    サポート終了日以降:

    • YouTube でデフォルトのストリームとブロードキャストが作成されなくなります。デフォルトのリソースに依存するのではなく、API クライアントは liveBroadcast リソースと liveStream リソースを作成して管理し、それらのリソースをバインドできる必要があります。
    • チャンネルのデフォルトのブロードキャストとデフォルトのストリームがアクティブにライブ配信されている場合(チャンネルが非推奨化の実施時にライブ ブロードキャストに使用している場合)、進行中のブロードキャストは影響を受けません。ただし、ブロードキャストが終了すると、チャンネルはデフォルトのブロードキャストとデフォルトのストリームを再び使用できなくなります。
    • チャンネルのデフォルトのブロードキャストとデフォルトのストリームがアクティブにライブ配信されていない場合、非推奨化が有効になった後、YouTube はこれらのリソースを使用して動画をブロードキャストしようとする試みを無視します。

    アプリケーションが影響を受ける場合は、次のドキュメントを参照してください。この変更後もアプリケーションが想定どおりに動作するように、アプリケーションを更新するうえで役立ちます。

    • 新しい移行ガイドでは、現在デフォルトのブロードキャストとストリームを使用している API クライアントでデベロッパーが対応する必要がある手順について説明しています。
    • 放送のライフサイクル ガイドでは、YouTube でライブ イベントを作成して管理する方法について、手順に沿って説明します。各ステップでは、特定のアクションを完了するために必要な API 呼び出しなどの処理について説明します。YouTube がデフォルトのストリームとブロードキャストのサポートを終了した場合は、アプリでこのプロセスに沿って処理を行う必要があります。

2020 年 3 月 31 日

注: これは非推奨のお知らせです。

sponsor リソースと sponsors.list メソッドは非推奨となり、member リソースと members.list メソッドに置き換えられました。

sponsors.list メソッドは、2020 年 9 月 30 日以降はサポートされなくなります。API クライアントは、sponsors.list メソッドの呼び出しを members.list メソッドを使用するように更新する必要があります。新しいリソースについて詳しくは、YouTube Data API のリビジョン履歴をご覧ください。

2020 年 3 月 11 日

HLS を使用して YouTube ライブ コンテンツを配信するガイドの取り込みエンドポイントのセクションが更新され、プライマリとバックアップの取り込み URL を作成する際にエンコーダが file= パラメータ値を完成させるために使用するプロセスが明確になりました。

2020 年 2 月 4 日

HLS を使用した YouTube ライブ コンテンツの配信ガイドが更新され、DELETE リクエストは省略可能であり、YouTube の HLS エンドポイントでは無視されることが記載されました。パフォーマンス上の理由から、YouTube はクライアントが DELETE リクエストを送信しないことを推奨しています。

2020 年 1 月 10 日

この API は、子ども向けコンテンツ(YouTube では「子ども向け」と呼んでいます)を識別する機能をサポートするようになりました。YouTube ヘルプセンターで「子ども向け」コンテンツの詳細をご確認ください。

  • liveBroadcast リソースは、コンテンツ クリエイターと視聴者が「子ども向け」コンテンツを特定できるようにする 2 つの新しいプロパティをサポートしています。
    • selfDeclaredMadeForKids プロパティを使用すると、コンテンツ クリエイターはライブ配信が子供向けコンテンツかどうかを指定できます。このプロパティは、liveBroadcasts.insert メソッドを使用してブロードキャストを作成するときに設定できます。このプロパティは、チャンネル所有者が API リクエストを承認した場合にのみ、liveBroadcast リソースを含む API レスポンスに含まれます。
    • madeForKids プロパティを使用すると、API ユーザーはブロードキャストの「子ども向け」ステータスを取得できます。たとえば、ステータスは selfDeclaredMadeForKids プロパティの値に基づいて決定される場合があります。チャンネル、動画、ブロードキャストの視聴者層の設定について詳しくは、YouTube ヘルプセンターをご覧ください。
  • YouTube Data API では、channel リソースも新しい selfDeclaredMadeForKids プロパティと madeForKids プロパティをサポートしています。

また、YouTube API サービスの利用規約とデベロッパー ポリシーも更新しました。詳しくは、YouTube API サービスの利用規約 - 改訂履歴をご覧ください。YouTube API サービス利用規約とデベロッパー ポリシーの変更は、太平洋時間の 2020 年 1 月 10 日に有効になります。

2019 年 8 月 20 日

HLS を使用して YouTube ライブ コンテンツを配信するガイドの要件セクションが、次の 2 つの変更で更新されました。

  • 各メディア プレイリストに、確認済みのセグメントと未確認のセグメントの両方を含めることをおすすめします。この方法により、サーバー側でメディア プレイリストが失われた場合にセグメントがスキップされる可能性が低くなります。たとえば、各メディア プレイリストに最大 2 つの確認済みセグメントと最大 5 つの未処理セグメントを含めることができます。
  • すべてのメディア セグメントに対してメディア プレイリストを送信することが必須になりました。これにより、メディア プレイリストが失われた場合にサーバーを迅速に復元できます。このプラクティスは、以前は推奨事項として記載されていました。

2019 年 6 月 28 日

YouTube が HLS 取り込みに対応しました。これに伴い、liveStream リソースの ingestionType プロパティは、HLS を使用して YouTube に取り込まれたストリームを識別するための新しい値 hls をサポートします。

新しいHLS を使用した YouTube ライブ コンテンツの配信ガイドでは、エンコーダから YouTube にライブ コンテンツをストリーミングするために HLS を使用する際のガイドラインを提供しています。このガイドは、エンコーダ ベンダーが製品に HLS 配信のサポートを追加するのに役立つことを目的としています。

2019 年 4 月 4 日

この改訂での変更内容は次のとおりです:

  • API リファレンス ドキュメントが更新され、各メソッドの一般的なユースケースがより詳しく説明されるとともに、API Explorer ウィジェットを通じて動的で高品質なコードサンプルが提供されるようになりました。例については、liveBroadcasts.list メソッドのドキュメントをご覧ください。API メソッドを説明するページに、次の 2 つの新しい要素が追加されました。

    • API Explorer ウィジェットを使用すると、承認スコープを選択し、パラメータとプロパティのサンプル値を入力して、実際の API リクエストを送信し、実際の API レスポンスを確認できます。このウィジェットには、入力したスコープと値を使用するように動的に更新される完全なコードサンプルを表示する全画面表示もあります。

    • 一般的なユースケース セクションでは、このページで説明するメソッドの一般的なユースケースを 1 つ以上説明します。たとえば、liveBroadcasts.list メソッドを呼び出して、特定のブロードキャストに関するデータを取得したり、現在のユーザーのブロードキャストに関するデータを取得したりできます。

      このセクションのリンクを使用すると、ユースケースのサンプル値で API Explorer を入力したり、これらの値がすでに入力された状態で API Explorer を全画面表示で開いたりできます。これらの変更は、独自のアプリケーションで実装しようとしているユースケースに直接適用できるコードサンプルを簡単に見つけられるようにすることを目的としています。

    現在、Java、JavaScript、PHP、Python、curl のコードサンプルがサポートされています。

  • コードサンプル ページにも、上記のすべての機能を提供する新しい UI が用意されています。このツールを使用すると、さまざまなメソッドのユースケースを調べたり、API Explorer に値を読み込んだり、API Explorer を全画面表示して Java、JavaScript、PHP、Python のコードサンプルを取得したりできます。

    この変更に伴い、これまで Java、PHP、Python で利用可能なコードサンプルを掲載していたページは削除されました。

2019 年 2 月 25 日

liveChatMessage リソースと superChatEvent リソースの両方に Super Stickers に関する情報を含めることができるようになったことを反映して、これらのリソースのドキュメントが更新されました。Super Stickers は、画像を表示する Super Chat メッセージの一種です。他の Super Chat と同様に、Super Sticker メッセージは YouTube ライブ配信中にファンが購入します。

  • liveChatMessage リソースで、リソースにスーパーステッカーに関する情報が含まれていることを示すために、snippet.type プロパティが superStickerEvent に設定されるようになりました。この場合、リソースにはスーパー ステッカーに関する追加情報を含む snippet.superStickerDetails オブジェクトも含まれます。
  • superChatEvent リソースでは、ブール値 snippet.isSuperStickerEvent は、Super Chat メッセージが Super Sticker でもあるかどうかを示します。その場合、snippet.superStickerMetadata オブジェクトには Super Stickers に関する追加の詳細が含まれます。

2018 年 4 月 5 日

2017 年初頭に非推奨となった fanFundingEvents が API レスポンスに含まれなくなったことを反映して、superChatEvents.list メソッドの説明を更新しました。

2017 年 4 月 3 日

ライブチャット メッセージの一覧表示挿入削除の方法を示す新しい Java コードサンプルが追加されました。サンプルは次のメソッドを呼び出します。

2017 年 2 月 13 日

この改訂での変更内容は次のとおりです:

  • 既存のリソースとメソッドの更新

    • onBehalfOfContentOwner パラメータが現在必須であることを反映するように liveCuepoints.insert メソッドが更新されました。また、メソッドの説明が更新され、そのメソッドの呼び出しは YouTube コンテンツ所有者に関連付けられたアカウントによって承認される必要があることが明記されました。

2017 年 2 月 9 日

この改訂での変更内容は次のとおりです:

  • 既存のリソースとメソッドの更新

    • superChatEvents.list メソッドの新しい hl パラメータを使用すると、特定の言語の規則に従って snippet.displayString プロパティ値をフォーマットするように指定できます。このプロパティの定義もそれに応じて更新されています。

      パラメータ値は、i18nLanguages.list メソッドから返されるリストに含まれる言語コードである必要があります。デフォルト値は en です。つまり、デフォルトの動作では、英語で使用されるように表示文字列がフォーマットされます。たとえば、デフォルトでは、文字列は $1,00 ではなく $1.00 としてフォーマットされます。

2017 年 2 月 1 日

この改訂での変更内容は次のとおりです:

  • 新しいリソースとメソッド

    • 新しい superChatEvent リソースは、YouTube ライブ配信中にファンが購入した Super Chat メッセージを表します。YouTube のチャット ストリームでは、Super Chat は次の 2 つの方法で他のメッセージより目立つようになっています。

      • Super Chat は色付きでハイライト表示されます。
      • Super Chat は、ティッカー内で一定時間固定表示されます。

      Super Chat の色、ティッカーに固定表示される時間、メッセージの最大長は、すべて購入金額によって決まります。Super Chat について詳しくは、YouTube ヘルプセンターをご覧ください。

      この API は、過去 30 日間のチャンネルのライブ配信の Super Chat イベントを一覧表示するメソッドをサポートしています。このメソッドは、チャンネルの最後のライブ ストリームのファン ファンディング イベント(fanFundingEvents)に関するデータも返します。

  • 既存のリソースとメソッドの更新

    • snippet.type プロパティが superChatEvent 値をサポートするようになりました。これは、リソースが Super Chat を表していることを示します。

      また、liveChatMessage リソースの新しい snippet.superChatDetails プロパティとその子には、Super Chat イベントに関する情報が含まれています。

    • liveStream リソースの cdn.resolution プロパティで、値 2160p がサポートされるようになりました。

  • 新しいエラーと更新されたエラー

    • この API は、次の新しいエラーをサポートしています。

      エラーの詳細
      liveBroadcasts.insertliveBroadcasts.update liveBroadcasts.insert メソッドと liveBroadcasts.update メソッドは、挿入または更新される liveBroadcast リソースの contentDetails.enableEmbed プロパティまたは contentDetails.projection プロパティに無効な値が含まれていることを示す 400Bad Request)エラーを返します。2 つの新しいエラーのエラー理由は、それぞれ invalidEmbedSettinginvalidProjection です。

2017 年 1 月 12 日

注: これは非推奨のお知らせです。

新しい Super Chat 機能のリリースに伴い、YouTube は視聴者ファンディング機能を非推奨としました。視聴者ファンディング API は 2017 年 2 月 28 日に提供を終了します。その日付以降は、次のようになります。

2016 年 8 月 11 日

この改訂での変更内容は次のとおりです:

  • YouTube エンジニアリングとデベロッパーのブログで詳しく説明されている、新たに公開された YouTube API サービスの利用規約(以下「更新された規約」)では、現在の利用規約にさまざまな更新が加えられています。2017 年 2 月 10 日より発効する更新された利用規約に加え、今回の更新には、デベロッパーが遵守すべきポリシーを説明する複数の補足文書が含まれています。

    新しいドキュメントの完全なセットについては、更新された利用規約の変更履歴をご覧ください。また、更新された規約またはその補足資料の今後の変更についても、その改訂履歴で説明します。ドキュメント内のリンクから、その改訂履歴の変更を一覧表示する RSS フィードを購読できます。

2016 年 5 月 20 日

YouTube で DASH の取り込みがサポートされるようになりました。これに伴い、liveStream リソースの ingestionType プロパティは、DASH を使用して YouTube に取り込まれたストリームを識別する新しい値 dash をサポートします。

新しいDASH を使用した YouTube ライブ コンテンツの配信ガイドでは、DASH 配信形式を使用してエンコーダから YouTube にライブデータをストリーミングするためのガイドラインを提供しています。これは、エンコーダ ベンダーが自社の製品に DASH 配信サポートを追加できるようにすることを目的としています。

2016 年 4 月 18 日

この改訂での変更内容は次のとおりです:

  • 既存のリソースとメソッドの更新

    • liveStream リソースの更新
      • YouTube で、1440p の解像度で 30 または 60 フレーム/秒のストリームがサポートされるようになりました。

        また、liveStream リソースには、インバウンド動画データのフレームレートと解像度を指定するための新しいプロパティが含まれています。

        プロパティ
        cdn.frameRate 受信動画データのフレームレート。有効な値は 30fps60fps です。
        cdn.resolution 受信動画データの解像度。有効なプロパティ値は、1440p1080p720p480p360p240p です。
      • liveStream リソースの cdn.frameRate プロパティと cdn.resolution プロパティの導入に伴い、リソースの cdn.format は非推奨になりました。cdn.format プロパティは、解像度とフレームレートを 1 つの値で指定します。

        新しくサポートされるフィールドに移行することをおすすめします。それまでの間、cdn.format は引き続き機能します。また、現在、ライブ ストリームを挿入するリクエストは、cdn.format プロパティまたは cdn.frameRate プロパティと cdn.resolution プロパティのいずれかの値を指定する限り成功します。3 つのプロパティすべてに値を指定した場合、値が一致しないと、API からエラーが返されることがあります。

        cdn.format プロパティは非推奨になりましたが、API が 1440p ストリームを 30 fps または 60 fps でサポートしていることを反映するため、1440p1440p_hfr の 2 つの新しい値をサポートするようになりました。

    • liveBroadcast リソースの更新
      • liveBroadcast リソースには、次の新しいプロパティが含まれています。

        プロパティ
        contentDetails.boundStreamLastUpdateTimeMs ブロードキャストの contentDetails.boundStreamId プロパティで参照されるライブ ストリームが最後に更新された日時。
        contentDetails.projection ブロードキャストの投影形式。プロパティのデフォルト値は rectangular です。このプロパティの有効な値は 360rectangular です。
      • liveBroadcast リソースの statistics.totalChatCount プロパティの定義が更新され、ブロードキャストに 1 つ以上のチャット メッセージがある場合にのみプロパティ値が表示されることが明記されました。

    • liveChatMessage リソースの更新
      • snippet.type プロパティは、次の箇条書きで説明する新しいプロパティに対応する 2 つの新しい値(messageDeletedEventuserBannedEvent)をサポートしています。また、snippet.authorChannelId プロパティの定義も更新され、これらの新しいメッセージ タイプでプロパティ値が識別する内容が説明されています。

      • liveChatMessage リソースには、次の新しいプロパティが含まれています。

        プロパティ
        snippet.messageDeletedDetails このオブジェクトには、チャット モデレーターによって削除されたメッセージに関する情報が含まれます。このオブジェクトは、snippet.type プロパティの値が messageDeletedEvent の場合にのみ存在します。
        snippet.userBannedDetails このオブジェクトには、チャットへの参加を禁止されたユーザーに関する情報が含まれます。このオブジェクトには、禁止自体に関する情報(禁止が永続的か一時的かなど)も含まれます。禁止が一時的な場合、オブジェクトのプロパティの 1 つで禁止期間を指定します。

        このオブジェクトは、snippet.type プロパティの値が userBannedEvent の場合にのみ存在します。
  • 新しいエラーと更新されたエラー

    • この API は、次の新しいエラーをサポートしています。

      エラーの詳細
      liveBroadcasts.bind liveBroadcasts.bind メソッドは、ユーザーが一定の時間枠内に送信したリクエストが多すぎることを示す 403Forbidden)エラーを返します。エラーの理由は userRequestsExceedRateLimit です。

      liveBroadcasts.insert メソッドと liveBroadcasts.update メソッドは、すでに同じエラーをサポートしています。
      liveStreams.insert liveStreams.insert メソッドは、リクエストが挿入しようとした liveStream リソース内の無効なプロパティ値を特定する 4 つの新しい 400Bad Request)エラーをサポートしています。次のリストに、エラーの理由と、関連付けられているプロパティを示します。
      liveStreams.insert liveStreams.insert メソッドは 2 つの新しい 400Bad Request)エラーをサポートしています。これらのエラーは、リクエストが挿入しようとした liveStream リソースに必要な値が存在しないことを示します。次のリストに、エラーの理由と、関連付けられているプロパティを示します。
      具体的には、liveStream リソースを挿入するときに、cdn.format プロパティまたは cdn.frameRate および cdn.resolution プロパティのいずれかの値を指定する必要があります。
      • 3 つのプロパティのいずれにも値を指定しない場合、API は formatRequired エラーを返します。
      • cdn.resolution の値を指定して cdn.frameRate の値を指定しないと、API は frameRateRequired エラーを返します。
      • cdn.frameRate の値を指定して cdn.resolution の値を指定しないと、API は resolutionRequired エラーを返します。
      liveStreams.update リクエストで次の変更不可プロパティのいずれかの値を変更しようとすると、liveStreams.update メソッドは 403Forbidden)エラーを返します。 エラー レスポンスの reasonliveStreamModificationNotAllowed です。

2015 年 12 月 18 日

欧州連合(EU)の法律では、EU のエンドユーザーに対して特定の情報を開示し、同意を得ることを義務付けています。そのため、欧州連合のエンドユーザーに対しては、EU ユーザーの同意ポリシーを遵守する必要があります。この要件に関する通知を YouTube API 利用規約に追加しました。

2015 年 12 月 17 日

この改訂での変更内容は次のとおりです:

  • 新しいリソースとメソッド

    • この API は、ライブブロードキャストのチャット機能をサポートする新しいリソースをいくつかサポートしています。YouTube は、ライブ配信中にチャット機能を提供しています。これらのリソースとそのメソッドは、チャット メッセージの取得とチャットの管理機能もサポートしています。

      リソース
      liveChatMessage このリソースは、YouTube ライブチャットのメッセージを表します。YouTube では、テキスト メッセージやファン ファンディング イベントなど、さまざまな種類のメッセージがサポートされています。一部のメッセージ タイプは、スポンサー限定期間の開始やチャットの終了など、チャットの特定のフェーズを識別します。この API は、ライブチャット メッセージの一覧表示、挿入、削除を行うメソッドをサポートしています。
      liveChatModerators このリソースはチャットのモデレーターを識別します。モデレーターは、ユーザーのチャットへの参加を禁止したり、メッセージを削除したりするなど、一部の管理機能を使用できます。この API は、ライブチャットのモデレーターを一覧表示、挿入、削除するメソッドをサポートしています。
      liveChatBans このリソースは、特定のライブチャットにメッセージを投稿することを禁止されているユーザーを識別します。禁止措置は一時的なものと永続的なものがあります。API は、ライブチャットの禁止を挿入および削除するメソッドをサポートしています。
      fanFundingEvents このリソースは、YouTube チャンネルでの視聴者ファンディング イベントを表します。視聴者ファンディングは、視聴者が YouTube クリエイターを自発的にサポートできる機能です。

      API の fanFundingEvents.list メソッドは、チャンネルのファン ファンディング イベントを一覧表示します。チャンネルが所有するライブ配信中にチャットで開始されたファン ファンディング イベントでも、ライブ配信のチャットに fanFundingEvent メッセージが送信されます。

      ファン ファンドについて詳しくは、YouTube ヘルプセンターをご覧ください。
      sponsors sponsor リソースは、YouTube チャンネルのスポンサーを識別します。スポンサーはチャンネルに月額料金を支払います。チャンネルのチャットでスポンサーのメッセージの横にバッジが表示されます。また、チャンネルのスポンサー限定のチャットが開催される場合は、スポンサーはそれに参加できます。

      API の sponsors.list メソッドは、チャンネルのスポンサーを一覧表示します。ユーザーがチャンネル所有のライブ配信中にチャンネルのスポンサーに登録すると、API はブロードキャストのチャットに newSponsorEvent メッセージも追加します。

      スポンサーシップについて詳しくは、YouTube ヘルプセンターをご覧ください。

  • 既存のリソースとメソッドの更新

    • liveBroadcast リソースには、次の新しいプロパティが含まれています。

      プロパティ
      snippet.liveChatId ブロードキャストの YouTube ライブチャットの ID。この ID を使用すると、liveChatMessage リソースのメソッドを使用して、チャット メッセージの取得、挿入、削除を行うことができます。チャット モデレーターの追加や削除、ユーザーのライブチャットへの参加禁止、既存の禁止措置の解除も可能です。
      contentDetails.closedCaptionsType 注: このプロパティは contentDetails.enableClosedCaptions プロパティに代わるものです。

      このプロパティは、ブロードキャストで字幕が有効になっているかどうか、有効になっている場合はどのような種類の字幕を提供しているかを示します。
      • closedCaptionsDisabled: ライブ放送では字幕が無効になっています。
      • closedCaptionsHttpPost: HTTP POST を介して、ライブ ストリームに関連付けられた取り込み URL に字幕を送信します。
      • closedCaptionsEmbedded: 字幕は EIA-608 または CEA-708 形式を使用して動画ストリームにエンコードされます。
      contentDetails.enableClosedCaptions このプロパティは 2015 年 12 月 17 日に非推奨になりました。代わりに contentDetails.closedCaptionsType プロパティを使用してください。このプロパティをすでに使用している API クライアントの場合:
      • プロパティ値を true に設定することは、contentDetails.closedCaptionsType プロパティを closedCaptionsHttpPost に設定することと同じです。
      • プロパティ値を false に設定することは、contentDetails.closedCaptionsType プロパティを closedCaptionsDisabled に設定することと同じです。
    • liveBroadcasts.list メソッドの新しい broadcastType パラメータを使用すると、API レスポンスをフィルタして、イベント ブロードキャスト、永続ブロードキャスト、またはすべてのブロードキャストを含めることができます。

      永続ブロードキャストは、常に存在し、特定のイベントに関連付けられていないブロードキャストです。具体的には、チャンネルのデフォルトのブロードキャストは永続的なブロードキャストであり、YouTube Studio のライブ ダッシュボードからアクセスできます。チャンネルの他のブロードキャストはイベント ブロードキャストです。

  • liveStream リソースの status.healthStatus.configurationIssues[].type フィールドは、次の新しいヘルス ステータス エラーを報告します。

    エラー
    audioTooManyChannels 音声が 3 チャンネル以上ありますが、1 チャンネル(モノラル)と 2 チャンネル(ステレオ)以外はサポートされていません。音声チャンネルの数を修正してください。
    frameRateHigh 現在のフレームレートは高すぎます。フレームレートを %(framerate)s fps 以下に設定してください。
  • 以前のドキュメント更新の公開日を修正しました。

  • 新しいエラーと更新されたエラー

    • API は、上記の新しいリソース用に定義されたエラーに加えて、次の新しいエラーをサポートしています。

      エラーの詳細
      liveBroadcasts.update
      HTTP レスポンス コードforbidden (403)
      理由closedCaptionsTypeModificationNotAllowed
      説明contentDetails.closedCaptionsType 値は、ブロードキャストが created または ready ステータスの場合にのみ変更できます。
      liveBroadcasts.update
      HTTP レスポンス コードinvalidValue (400)
      理由invalidEnableClosedCaptions
      説明liveBroadcast リソースで、contentDetails.enableClosedCaptions プロパティの値が contentDetails.closedCaptionType 設定の値と互換性がありません。リソースを変更して 2 つのプロパティのいずれかのみを含め、リクエストを再送信します。

2015 年 8 月 19 日

この改訂での変更内容は次のとおりです:

  • 新しいリソースとメソッド

    • 注: liveChat リソースとそのメソッドのドキュメントは機密情報であり、一部の YouTube パートナーのみが閲覧できます。

      新しい liveChat リソースには、YouTube のライブブロードキャスト中に投稿されたコメントが含まれています。この API は、このリソースに対して次の 2 つのメソッドをサポートしています。

      メソッド
      liveChats.list ブロードキャストのチャット メッセージを一覧表示します。
      liveChats.insert 新しいチャット メッセージを作成します。

      ライブチャット メッセージは、ブロードキャストのライブ配信中にのみ取得して投稿できます。

  • 既存のリソースとメソッドの更新

    • liveStream リソースには、次の新しいプロパティが含まれています。

      プロパティ
      snippet.isDefaultStream このストリームがチャンネルのデフォルト ストリームかどうかを示します。チャンネルのデフォルト ストリームは無期限に存在し、開始時刻や終了時刻が関連付けられておらず、削除できません。デフォルト ストリームの仕組みについて詳しくは、プロパティの定義をご覧ください。
      status.healthStatus このオブジェクトには、ストリーミングの問題の特定、診断、解決に使用できる情報が含まれています。このオブジェクトには、ライブ動画ストリームの健全性を評価するのに役立つ子プロパティが多数含まれています。

      特に、status.healthStatus.configurationIssues[] オブジェクトには、動画ストリームに影響する問題が一覧表示されます。新しいドキュメント LiveStream リソースの構成に関する問題では、API が報告するすべての問題が一覧表示されています。
      contentDetails.isReusable ストリームが再利用可能かどうかを示します。再利用可能な場合、複数のブロードキャストにバインドできます。ブロードキャストが異なる時間に行われる場合、ブロードキャスト事業者が同じストリームをさまざまなブロードキャストで再利用することは一般的です。
    • liveBroadcast リソースには、次の新しいプロパティが含まれています。

      プロパティ
      snippet.isDefaultBroadcast このブロードキャストがチャンネルのデフォルトのブロードキャストかどうかを示します。YouTube チャンネルでライブ配信が有効になっている場合、YouTube はチャンネルのデフォルトのストリームとデフォルトのブロードキャストを作成します。ストリームはチャンネル所有者がライブ動画を YouTube に送信する方法を定義し、ブロードキャストは視聴者がデフォルトのストリームを視聴する方法です。デフォルト ブロードキャストの仕組みについて詳しくは、プロパティの定義をご覧ください。
      contentDetails.enableLowLatency このブロードキャストを低レイテンシ ストリーミング用にエンコードするかどうかを示します。低遅延ストリームを使用すると、ブロードキャストを視聴しているユーザーに動画が表示されるまでの時間を短縮できますが、ストリームの視聴者の解像度に影響する可能性もあります。
      statistics.totalChatCount ブロードキャストに関連付けられているチャット メッセージの総数。ブロードキャストがユーザーに表示され、ライブチャット機能が有効になっている場合、プロパティとその値が存在します。ブロードキャストが終了すると、このプロパティは値を指定しなくなります。そのため、このプロパティは、完了したライブ配信のアーカイブ動画のチャット メッセージ数を特定しません。
  • 新しいエラーと更新されたエラー

    • 新しい liveChat リソース用に定義されたエラーに加えて、API は次の新しいエラーをサポートしています。

      エラーの詳細
      liveStreams.update
      HTTP レスポンス コードforbidden (403)
      理由liveStreamModificationNotAllowed
      説明API では、再利用可能なストリームを再利用不可に変更したり、その逆の変更を行うことはできません。詳細については、ブロードキャストとストリームについてをご覧ください。

2015 年 5 月 21 日

この改訂での変更内容は次のとおりです:

  • YouTube で 60 フレーム / 秒(fps)のライブ動画ストリーミングがサポートされるようになりました。これにより、ゲームなどのアクションの速い動画をよりスムーズに再生できます。YouTube で 60 fps のライブ配信を開始すると、高フレームレートでの視聴がまだ利用できないデバイスでは、30 fps の配信も利用できるようになります。

    liveStream リソースの cdn.format プロパティは、この機能の 2 つの新しい値(720p_hfr1080p_hfr)をサポートしています。

    この機能について詳しくは、YouTube クリエイター ブログをご覧ください。

2014 年 8 月 21 日

この改訂での変更内容は次のとおりです:

  • liveBroadcasts.control メソッドの walltime パラメータの定義が更新され、プロパティ値が ISO 8601 形式(YYYY-MM-DDThh:mm:ss.sssZ)で指定されることが明記されました。

  • この API は、次のエラーをサポートするようになりました。

    エラーのタイプ エラーの詳細 説明
    insufficientPermissions liveStreamingNotEnabled liveBroadcast リソースと liveStream リソースのすべてのメソッドは、API リクエストを承認したユーザーが YouTube でライブ動画をストリーミングできるように設定されていない場合、このエラーを返します。ユーザーがライブ動画を配信できない理由の詳細については、ユーザーのチャンネル設定(https://www.youtube.com/features)で確認できます。
    rateLimitExceeded userRequestsExceedRateLimit liveBroadcasts.insert メソッドと liveStreams.insert メソッドはどちらもこのエラーを返し、ユーザーが特定の時間枠内で過剰な数のリクエストを送信したことを示します。

2014 年 5 月 2 日

この改訂での変更内容は次のとおりです:

  • liveStream リソースと liveBroadcasts.bind メソッドの説明が更新され、ブロードキャストは 1 つの動画ストリームにのみバインドできますが、動画ストリームは複数のブロードキャストにバインドできることが明記されました。この変更はドキュメントの修正のみであり、基盤となる API の機能は変更されていません。

  • liveBroadcast リソースの contentDetails.monitorStream.enableMonitorStream プロパティが更新され、プロパティの値が true の場合、ブロードキャストを live 状態に移行する前に testing 状態に移行する必要があることが説明されています。(プロパティの値が false の場合、ブロードキャストに testing ステージを含めることはできません。そのため、ブロードキャストを live 状態に直接移行できます。

  • liveCuepoint リソースの settings.offsetTimeMs プロパティが更新され、ブロードキャストにモニター ストリームがない場合は、このプロパティの値を指定しないように注意書きが追加されました。

  • liveBroadcast リソースと liveStream リソースのすべてのメソッドが、onBehalfOfContentOwner パラメータと onBehalfOfContentOwnerChannel パラメータをサポートするようになりました。これらのパラメータを使用すると、同じコンテンツ所有者に関連付けられているさまざまなチャンネルの API リクエストを、同じ認証情報を使用して完了できます。

  • liveCuepoints.insert メソッドのドキュメントが更新され、このメソッドを呼び出すときに settings.walltime プロパティの値を設定できることが記載されました。

  • エラーに関するドキュメントで、各エラータイプの HTTP レスポンス コードが指定されるようになりました。

  • この API は、次のエラーをサポートするようになりました。

    エラーのタイプ エラーの詳細 説明
    insufficientPermissions livePermissionBlocked liveBroadcasts.insertliveBroadcasts.transitionliveStreams.insert メソッドは、リクエストを承認したユーザーが YouTube でライブ動画をストリーミングできない場合に、このエラーを返します。ユーザーがライブ動画を配信できない理由の詳細については、ユーザーのチャンネル設定(https://www.youtube.com/features)で確認できます。
  • liveBroadcasts.insert メソッドの invalidScheduledStartTime エラーが更新され、ブロードキャストを確実にスケジュール設定できるほど、スケジュール設定された開始時刻が現在の日付に近い必要があることが明確になりました。

2013 年 12 月 13 日

この改訂での変更内容は次のとおりです:

  • liveBroadcast リソースの新しい status.recordingStatus プロパティは、ブロードキャストの現在のステータスを示します。

  • liveBroadcast リソースの新しい contentDetails.enableClosedCaptions プロパティは、ブロードキャストで字幕を取り込めるかどうかを示します。プロパティ値はブロードキャストの挿入時または更新時に設定できますが、ブロードキャストが testing または live 状態になると更新できなくなります。このプロパティを true に設定すると、ブロードキャストにバインドされている liveStream リソースで、ブロードキャストのクローズド キャプションに使用する取り込み URL が指定されます。

  • liveBroadcast リソースの snippet.scheduledEndTime プロパティで、無期限に継続するようスケジュールされたブロードキャストがサポートされるようになりました。この変更により、liveBroadcasts.insert リクエストと liveBroadcasts.update リクエストでこのプロパティが不要になりました。

    このプロパティの値を指定していない liveBroadcast リソースを取得すると、ブロードキャストは無期限に継続されるようにスケジュールされます。同様に、liveBroadcasts.insert メソッドまたは liveBroadcasts.update メソッドを呼び出すときに、このプロパティの値を指定しないと、ブロードキャストは無期限に継続するようにスケジュールされます。

  • liveBroadcast リソースの contentDetails.recordFromStart プロパティ(デフォルト値は true)は、放送チャンネルでライブ放送の録画を無効にできる場合にのみ false に設定できるようになりました。

    チャンネルに録画を無効にする権限がない場合に、recordFromStart プロパティが false に設定されたブロードキャストを挿入しようとすると、API は Forbidden エラーを返します。また、チャンネルにその権限がなく、ブロードキャストを更新して recordFromStart プロパティを false に設定しようとすると、API は modificationNotAllowed エラーを返します。

  • liveBroadcast リソースに enableArchive プロパティが含まれなくなりました。このプロパティは、contentDetails.enableDvr プロパティと contentDetails.enableEmbed プロパティの説明で言及されていました。

  • liveBroadcast リソースの status.lifeCycleStatus プロパティの有効な値のリストが更新され、各ステータスの説明が含まれるようになりました。

  • liveCuepoint リソースの新しい settings.walltime プロパティは、キューポイントを挿入する日時を指定します。リクエストでこのプロパティと settings.offsetTimeMs プロパティの両方の値を指定するキューポイントを挿入しようとすると、API はエラーを返します。

  • liveStream リソースの新しい contentDetails オブジェクトには、ストリームに関する情報が含まれています。現在、オブジェクトのプロパティは contentDetails.closedCaptionsIngestionUrl のみです。これは、動画ストリームに関連付けられたクローズド キャプションの取り込み URL を指定します。

  • liveStream リソースの status.streamStatus プロパティの有効な値のリストが更新され、各ステータスの説明が含まれるようになりました。

  • liveBroadcasts.control メソッドの新しい walltime パラメータを使用すると、スレートの変更が発生する日時を指定できます。リクエストでこのパラメータと offsetTimeMs パラメータの両方に値を指定すると、API はエラーを返します。

  • liveBroadcasts.list リクエストに対する API レスポンスで、kind プロパティの値が youtube#liveBroadcastList から youtube#liveBroadcastListResponse に変更されました。

  • liveStreams.list リクエストに対する API レスポンスで、kind プロパティの値が youtube#liveStreamList から youtube#liveStreamListResponse に変更されました。

  • eventId プロパティは liveBroadcastListResponseliveStreamListResponse の両方で非推奨になりました。

  • この API は、次の新しいエラーをサポートしています。

    エラーのタイプ エラーの詳細 説明
    invalidValue conflictingTimeFields リクエストで offsetTimeMs パラメータと walltime パラメータの値を指定すると、liveBroadcasts.control メソッドはこのエラーを返します。リクエストでは、両方のパラメータを省略するか、2 つのパラメータのいずれか 1 つに値を指定できます。
    invalidValue invalidWalltime walltime パラメータの値が無効な場合、liveBroadcasts.control メソッドはこのエラーを返します。
    forbidden enableClosedCaptionsModificationNotAllowed contentDetails.enableClosedCaptions 値を更新しようとしたときに、ブロードキャストのステータスが created または ready でない場合、liveBroadcasts.update メソッドはこのエラーを返します。
    invalidValue conflictingTimeFields リクエストで settings.offsetTimeMs プロパティと settings.walltime プロパティの値を指定すると、liveCuepoints.insert メソッドはこのエラーを返します。リクエストでは、両方のプロパティを省略するか、2 つのプロパティのいずれかに値を指定できます。

    また、liveStreams.update メソッドは、liveStreams.insert メソッドがサポートするエラーと同様の cdnRequired エラーをサポートしなくなりました。

2013 年 5 月 10 日

この改訂での変更内容は次のとおりです。

2013 年 5 月 2 日

この改訂での変更内容は次のとおりです:

2013 年 3 月 27 日

この改訂での変更内容は次のとおりです:

  • liveBroadcast リソースで次のプロパティが変更されました。

    • startWithSlateCuepoint プロパティの名前が startWithSlate に変更されました。
    • enableArchive プロパティの名前が recordFromStart に変更されました。
    • slateSettings オブジェクトは非推奨となり、ドキュメントから削除されました。slateSettings オブジェクトまたはそのプロパティに関連するエラー メッセージも削除されました。最後に、スタートガイドの「スレートの表示」セクションが削除されました。

  • この API では、liveCuepoints.insert メソッドを使用してインライン スレートを挿入する機能がサポートされなくなりました。この変更に伴い、次のドキュメントが更新されました。

2013 年 3 月 18 日

この改訂での変更内容は次のとおりです:

  • API のエラー メッセージがすべて更新され、考えられるエラーがより明確に説明されるとともに、可能であれば、エラーの修正方法に関するガイダンスが提供されるようになりました。

  • API が新しいエラーを返すことがあります。次のリストに、エラーと、そのエラーを返す可能性のある API メソッドを示します。

    • liveBroadcasts.insert - ブロードキャストの終了予定時間は、開始予定時間よりも後にする必要があります。
    • liveBroadcasts.insert - ブロードキャストで無効なプライバシー ステータスが指定されています。
    • liveBroadcasts.update - リソースに contentDetails.enableArchive プロパティが含まれていないか、値が設定されていません。
    • liveBroadcasts.update - リソースに contentDetails.enableContentEncryption プロパティが含まれていないか、値が設定されていません。
    • liveBroadcasts.update - リソースに contentDetails.enableDvr プロパティが含まれていないか、値が設定されていません。
    • liveStreams.insert - スニペットのタイトルは 1 ~ 128 文字にする必要があります。
    • liveStreams.update - リソースに snippet.title プロパティが含まれていないか、値が設定されていません。

  • liveStream リソースのドキュメントが更新され、以前に示されていたように、マルチキャストと WebM が取り込み方法としてサポートされていないことが反映されました。これに伴い、cdn.format プロパティの形式のリストが更新され、cdn.multicastIngestionInfo オブジェクトとその子プロパティがリソースのドキュメントから削除されました。また、サポートされている cdn.ingestionType 値のリストから http が削除されました。