YouTube API サービス - 必要な最低限の機能

注: YouTube デベロッパー ポリシーに準拠するには、YouTube API サービスの利用規約ポリシー(API TOS)の特定の部分に API クライアントが準拠するようにするためのガイダンスと例が記載されています。このガイドには、YouTube が API TOS の一部をどのように適用しているかについての情報を提供しますが、既存のドキュメントを置き換えるものではありません。

このドキュメントでは、YouTube API サービスの特定の機能を実装または提供する API クライアント(「API クライアント」)の最小機能要件を定義します。

これらの要件とガイドラインは、YouTube ユーザー、コンテンツ所有者、広告主の利益を保護する一貫したユーザー エクスペリエンスを API クライアントに提供するためのものです。これらのルールは YouTube API 利用規約に不可欠な要素であり、API クライアントの開発と実装において遵守する必要があります。

このドキュメントの要件は、既存の YouTube の機能でユーザー エクスペリエンスを向上させるために変更される予定です。また、YouTube の新機能や更新された機能に伴って変更される場合もあります。そのような変更に伴い、新しい要件に対応するために API クライアントの更新が必要になる場合があります。変更内容は利用規約の変更履歴にすべて記載されます。API クライアントに影響する可能性のある変更についてすぐに確認できるように、このドキュメントを頻繁に確認するか、RSS フィードを購読してください。

このドキュメントの要件に加えて、YouTube API サービス ポリシーや YouTube API サービスのドキュメントの他の場所で説明されているベスト プラクティスに従うことを強くおすすめします。厳密には必要でない場合でも、これらのプラクティスは、API クライアントがエラーからより迅速に回復し、クォータを割り当てる YouTube API サービスを使用している場合、クォータ使用量を最適化するのに役立ちます。同時に、これらのプラクティスは、YouTube エコシステムの健全性を確保し、何よりも API クライアントと YouTube アプリケーションのユーザーに可能な限り最高のエクスペリエンスを提供するのに役立ちます。

YouTube 埋め込みプレーヤーと動画再生

このセクションの要件は、特に埋め込み YouTube プレーヤーに関連するものです。YouTube API サービス ポリシーには、YouTube のオーディオビジュアル コンテンツを再生する API クライアントに関連するポリシーもいくつか含まれています。

埋め込み YouTube プレーヤーのサイズ

埋め込みプレーヤーには少なくとも 200px x 200px のビューポートが必要です。プレーヤーにコントロールが表示される場合は、ビューポートを最小サイズより小さくしなくてもコントロールが表示されるよう、十分な大きさを確保する必要があります。少なくとも幅 480 ピクセル、高さ 270 ピクセルの、アスペクト比 16:9 のプレーヤーをおすすめします。

自動再生とスクリプト再生

このセクションでは、自動再生について説明します。このポリシーは、autoplay プレーヤー パラメータを使用する、または YouTube IFrame Player API サービス、YouTube Android Player API サービス、または別の YouTube API サービスを使用してプログラマティックに自動再生を開始する YouTube 埋め込みプレーヤーに適用されます。

  • 動画を自動再生する埋め込みプレーヤーでは、ページが読み込まれた直後、または埋め込みプレーヤーが完全に表示されたらすぐに再生を開始する必要があります。ただし、プレーヤーが表示され、プレーヤーの半分以上がページまたは画面に表示されるまでは、API クライアントで自動再生を開始することはできません。

  • コンテンツを同時に再生する YouTube プレーヤーは、ページまたはスクリーンに複数の YouTube プレーヤーを配置してはいけません。

  • 再生を開始する YouTube サムネイルは、幅 120 ピクセル、高さ 70 ピクセル以上である必要があります。

YouTube プレーヤーの属性

YouTube プレーヤーの属性とパラメータ(たとえば、プレーヤーに YouTube ブランドがどのように表示されるかなど)は、YouTube API のドキュメントと仕様(https://developers.google.com/youtube)に記載されています。API ドキュメントに明記されていない YouTube プレーヤーへの変更は行わないでください。

オーバーレイとフレーム

YouTube の埋め込みプレーヤーのどの部分(プレーヤー コントロールを含む)の前にも、オーバーレイ、フレーム、その他の視覚要素を表示することはできません。同様に、オーバーレイ、フレーム、その他の視覚要素を使用して、プレーヤー コントロールを含む埋め込みプレーヤーの部分を隠すことも禁止されています。

マウスオーバー

YouTube プレーヤーでのマウスオーバーまたはタッチイベントを使用して、ウィンドウを開く、チャンネルに登録するなど、ユーザーに代わってアクションを開始することはできません。

動画のアップロード

API クライアントを使用してユーザーが複数のプラットフォームにコンテンツをアップロードできる場合は、動画をアップロードするプラットフォームをユーザーが選択および選択解除できるようにする必要があります。

データ要件

ユーザーが YouTube に動画をアップロードできるようにする API クライアントでは、ユーザーが次のリストの値を設定できるようにする必要があります。ここに記載されていないプロパティは省略可能です。

  名前 説明
リソース プロパティ
snippet.title 必須。動画のタイトル。値が 100 文字を超えると、エラーが返されます。YouTube では、<> を除くすべての有効な UTF-8 文字をサポートしています。

snippet.description 必須。動画の説明値が 5,000 バイトを超えると、エラーが返されます。YouTube では、<> を除くすべての有効な UTF-8 文字をサポートしています。
status.privacyStatus 必須。動画のプライバシー設定。ユーザーが、アップロードした動画を公開、非公開、限定公開のいずれにするかを選択できるようにする必要があります。
リクエスト パラメータ
onBehalfOfContentOwnerChannel 条件付き必須。リクエストの承認認証情報でコンテンツ所有者を識別でき、onBehalfOfContentOwner パラメータが設定されている場合、API ユーザーは動画のアップロード先となる YouTube チャンネルも指定できなければなりません。

コメントを表示しています

  名前 説明
リソース プロパティ
snippet.textDisplay 必須。コメントのテキスト。API クライアントは、(a)コメントまたはコメント返信の全文を表示するか、(b)テキストを切り捨て、閲覧者が短縮版から全文に簡単にアクセスする方法を提供する必要があります。

この要件は、コメントが関連付けられているリソースの種類(動画、チャンネルなど)に関係なく、すべてのコメントとコメント返信に適用されます。

commentThread リソースの snippet.topLevelComment プロパティ値は comment リソースであり、replies.comments[] リソースです。commentそのため、この要件は snippet.topLevelComment.snippet.textDisplay プロパティと replies.comments[].snippet.textDisplay プロパティにも適用されます。
snippet.title
(channel)
必須(候補)。チャンネルのタイトル。
  • コメントがチャンネルに関する場合、API クライアントはチャンネルの名前を表示する必要があります。
  • コメントが動画に関する場合、API クライアントは動画をアップロードしたチャンネルの名前を表示する必要があります。
snippet.title
(video)
条件付き必須(提案)。動画のタイトル。コメントが動画に関する場合、この値を表示する必要があります。
snippet.moderationStatus 条件付き必須。API リクエストの moderationStatus パラメータ値が heldForReview または likelySpam の場合、プロパティ値、類似の表現(「このコメントは確認のために保留中です」など)、ヘッダー(「確認のために保留中」など)、その他の明確な表現を使用して、ステータスを明示する必要があります。commentThreads.list メソッドでは、管理ステータスに基づいてコメントを取得できます。

コメントの追加

  名前 説明
リソース プロパティ
snippet.title
(channel)
必須。チャンネルのタイトル。
  • ユーザーがチャンネルに関するコメントを追加する場合は、API クライアントにチャンネルの名前を表示する必要があります。
  • ユーザーが動画に関するコメントを追加する場合は、動画をアップロードしたチャンネルの名前を API クライアントで表示する必要があります。
snippet.title
(video)
必須。ユーザーが動画に関するコメントを追加する場合は、API クライアントに動画のタイトルを表示する必要があります。
その他の要件
Comment author's channel name 必須。API クライアントは、コメントが帰属する YouTube ユーザー アカウントを明示する必要があります。リクエストの承認認証情報でコンテンツ所有者を識別でき、onBehalfOfContentOwner パラメータが設定されている場合、API ユーザーはコメントの帰属先となる YouTube チャンネルも指定できなければなりません。

コメント返信の追加

  名前 説明
リソース プロパティ
snippet.textDisplay 必須。コメントのテキスト。API クライアントは、このドキュメントのコメントの表示セクションで定義されているルールに従って、ユーザーが返信しているコメントのテキストを表示する必要があります。
snippet.title
(channel)
必須。チャンネルのタイトル。
  • ユーザーがチャンネルに関するコメントに返信する場合、API クライアントはチャンネルの名前を表示する必要があります。
  • ユーザーが動画に関するコメントに返信する場合、API クライアントは動画をアップロードしたチャンネルの名前を表示する必要があります。
snippet.title
(video)
必須。ユーザーが動画に関するコメントに返信する場合、API クライアントは動画のタイトルを表示する必要があります。
その他の要件
Comment author's channel name 必須。API クライアントは、コメント返信が関連付けられる YouTube ユーザー アカウントを明示する必要があります。リクエストの承認認証情報でコンテンツ所有者を識別でき、onBehalfOfContentOwner パラメータが設定されている場合、API ユーザーはコメント返信の帰属先となる YouTube チャンネルも指定できなければなりません。

コメントへの返信の編集と削除

  名前 説明
リソース プロパティ
snippet.textDisplay 必須。コメントのテキスト。API クライアントは、このドキュメントのコメントの表示セクションで定義されているルールに従って、ユーザーが編集または削除するコメントのテキストを表示する必要があります。
snippet.title
(channel)
必須。チャンネルのタイトル。
  • ユーザーがチャンネルに関するコメントを編集または削除する場合、API クライアントはチャンネルの名前を表示する必要があります。
  • ユーザーが動画に関するコメントを編集または削除する場合、API クライアントは動画をアップロードしたチャンネルの名前を表示する必要があります。
snippet.title
(video)
必須。ユーザーが動画に関するコメントを編集または削除する場合、API クライアントは動画のタイトルを表示する必要があります。
その他の要件
Comment author's channel name 必須。API クライアントは、コメントが帰属する YouTube ユーザー アカウントを明示する必要があります。

ユーザーのチャットへの参加を禁止する(または参加禁止を解除する)

  名前 説明
リソース プロパティ
snippet.title
(channel)
必須。参加禁止または参加禁止を解除する YouTube チャンネルの名前。また、名前はチャンネルにリンクしているか、チャンネルの URL を表示する必要があります。
その他の要件
コメント投稿者のチャンネル名 必須。API クライアントは、参加禁止の追加または削除に使用された YouTube ユーザー アカウントを明確に特定する必要があります。