Introduction

このドキュメントでは、YouTube Analytics API と YouTube Reporting API が YouTube アナリティクスのデータにアクセスする方法の類似点と相違点について説明します。これにより、アプリケーションに適した API を選択できます。

どちらの API でも YouTube アナリティクスのデータを取得できます。また、どちらの API も YouTube チャンネル所有者と YouTube コンテンツ所有者をサポートしており、それぞれが特定のレポートセットにアクセスできます。

  • チャンネル レポート : 指定したチャンネルについて、ユーザー アクティビティの指標が表示されます。

  • コンテンツ所有者レポート : 指定した YouTube コンテンツ所有者にリンクされているすべてのチャンネルの指標が集計されます。たとえば、レコード レーベルは、自社アーティストすべての YouTube チャンネルの統計情報を組み合わせたレポートを取得できます。コンテンツ所有者レポートには、ユーザー アクティビティの指標が含まれるものと、収益と広告のパフォーマンスに関連する指標が含まれるものがあります。

Reporting API を使用すると、一部のコンテンツ所有者はシステム管理の広告収入レポートにアクセスすることもできます。システム管理レポートのデータは、Reporting API でのみ取得できます。

YouTube アナリティクス API と YouTube Reporting API のリクエストはすべて、リクエストされたデータを所有するチャンネルまたはコンテンツ所有者によって承認される必要があります。

レポートの内容

API が取得するレポートには、次の 2 種類のデータが含まれています。

  • ディメンション : ユーザー アクティビティが発生した日付やユーザーの所在地など、データの集計に使用される共通の条件です。

    レポートでは、データ行ごとにディメンション値の一意の組み合わせがあります。そのため、各行のディメンション値の組み合わせは、その行の主キーとして機能します。

  • 指標 : ユーザー アクティビティ、広告のパフォーマンス、推定収益の個々の測定値です。ユーザー アクティビティの指標には、動画の再生回数や評価(高評価と低評価)などがあります。

アプリケーションに適した API を選択する

YouTube Analytics API
YouTube Analytics API は、ターゲットを絞り込んだリアルタイム クエリ に対応し、カスタムの YouTube アナリティクス レポートを生成できます。この API にはフィルタリング パラメータと並べ替えパラメータが用意されているため、呼び出し元のアプリケーションでこれらの機能をネイティブにサポートする必要はありません。

各 API リクエストでは、データが返される期間を指定します。また、この API を使用すると、週次と月次のデータセットを取得できます。そのため、呼び出し元のアプリケーションで、取得したデータセットを保存したり、期間全体の統計情報を集計したりする必要はありません。
YouTube Reporting API
YouTube Reporting API は、チャンネルまたはコンテンツ所有者の YouTube アナリティクス データを含む一括レポート を取得します。これは、大規模なデータセットをインポートし、そのデータをフィルタ、並べ替え、調査するツールを提供するアプリケーション向けに設計されています。

各レポートには、事前定義された一連のフィールドが含まれています。この API を使用して、レポートジョブをスケジュールします。各ジョブは、YouTube が生成するレポートを指定します。YouTube は、非同期でダウンロードできる日次レポートを生成します。各レポートには、一意の 24 時間の期間のデータが含まれています。

また、YouTube は、YouTube Studio で対応するレポートにアクセスできるコンテンツ所有者向けに、システム管理レポートのセットを自動的に生成します。これらのレポートを使用すると、広告収入データにプログラムでアクセスできます。

サポートされるレポート

次の表に、API を使用して取得できるレポートの種類を示します。YouTube Analytics API を使用するとターゲットを絞り込んだクエリを使用でき、YouTube Reporting API を使用すると一括レポートを使用できます。

一方の API で利用できるデータが、もう一方の API では利用できない場合があります。たとえば、YouTube Analytics API では、ユーザー アクティビティの指標を週単位または月単位で取得できますが、YouTube Reporting API では、そのデータを自分で集計する必要があります。一方、YouTube Reporting API はコンテンツ所有者向けのアセット レポートをサポートしていますが、そのデータは YouTube Analytics API からは利用できません。

レポートの種類
動画レポート チャンネル(クエリまたは一括)とコンテンツ所有者(クエリまたは一括)でサポートされています。

動画レポートには、チャンネルの動画またはコンテンツ所有者の動画に関連するすべてのユーザー アクティビティの統計情報が表示されます。たとえば、これらのレポートには、動画の再生回数が含まれています。YouTube Analytics API では、一部のコンテンツ所有者の動画レポートに、推定収益と広告のパフォーマンスの指標も含まれています。
リーチレポート チャンネル(一括)とコンテンツ所有者(一括)でサポートされています。リーチ指標は、動画レポートでターゲットを絞り込んだクエリでも使用できます。

リーチレポートには、動画のサムネイルのインプレッション数とクリック率の統計情報が表示されます。
再生リストレポート チャンネル(クエリまたは一括)とコンテンツ所有者(クエリまたは一括)でサポートされています。

再生リスト レポートには、再生リストのコンテキストで発生した動画の再生回数に固有の統計情報が表示されます。YouTube Reporting API は再生リストの視聴者維持率レポートをサポートしていますが、YouTube Analytics API は同様のレポートをサポートしていません。
広告のパフォーマンス レポート コンテンツ所有者(クエリまたは一括)でサポートされています。

広告のパフォーマンス レポートには、動画の再生中に配信された広告のインプレッションに基づく指標が表示されます。これらの指標は広告のインプレッションごとにカウントされ、1 回の動画再生で複数のインプレッションが発生する可能性があります。
推定収益レポート コンテンツ所有者(一括)でサポートされています。

推定収益レポートには、Google 広告配信元と広告以外の配信元からの動画の推定総収益が表示されます。 これらのレポートには、広告のパフォーマンスに関する指標も含まれています。システム管理レポートには実際の収益が含まれています。
アセット レポート コンテンツ所有者(一括)でサポートされています。

アセット レポートには、コンテンツ所有者のアセットにリンクされている動画に関連するユーザー アクティビティの指標が表示されます。コンテンツ所有者が、その動画をコンテンツ所有者のアセットの 1 つと一致するとして申し立てた場合、その動画はコンテンツ所有者のレポートに含まれます。動画は、コンテンツ所有者または別の YouTube ユーザーによってアップロードされた可能性があります。
システム管理レポート YouTube Studio の [レポート] メニューで対応するレポートにアクセスできるコンテンツ所有者でサポートされています。

システム管理レポートには、アセットと動画が実際に獲得した収益のデータが表示されます。申し立てが行われた動画と、それらの動画と一致するアセットの一覧を示すレポートもあります。すべての YouTube Studio レポートが API で利用できるわけではありません。

注: YouTube は、YouTube Studio で対応するレポートにアクセスできるコンテンツ所有者向けに、システム管理レポートを自動的に生成します。そのため、これらのレポートを取得するプロセスは、このリストにある他の種類のレポートとは異なります。詳しくは、システム管理レポートのドキュメントをご覧ください。

主な違い

次の表に、YouTube アナリティクス API と Reporting API の重要な違いを示します。

機能 YouTube Analytics API YouTube Reporting API
データの取得プロセス 各 API リクエストでは、返されるディメンションと指標、およびデータが返される期間を指定します。 アプリケーションはレポートジョブをスケジュールします。ジョブごとに、YouTube は非同期でダウンロードできる日次レポートを生成します。
期間 一部の API レポートでは、ユーザー アクティビティが発生した日付を指定します。これらのレポートの一部では、ユーザー アクティビティの指標を月単位で集計するディメンションがサポートされています。 すべての API レポートで、ユーザー アクティビティが発生した日付を指定します。API を使用するアプリケーションは、一定の間隔でデータを集計する機能を実装できます。
データのフィルタリング レポートをフィルタして、ディメンションに特定の値がある行のみを含めることができます。この API は、フィルタとしてのみ使用されるディメンション(大陸subContinentなど)もサポートしています。 この API は、完全なデータセットの一括ダウンロードをサポートしています。フィルタリングはサポートされておらず、フィルタ専用のディメンションのデータは返されません。クライアント アプリケーションは、ダウンロードしたデータを保存し、データをフィルタする独自の機能を実装します。
並べ替え レポートは、返された指標値に基づいて並べ替えることができます。一部のレポートでは、結果の数が制限されています。たとえば、チャンネルで最も視聴された動画の一覧を示すレポートでは、最大 200 行が返されます。 この API は、完全なデータセットの一括ダウンロードをサポートしています。クライアント アプリケーションは、ダウンロードしたデータを並べ替える独自の機能を実装できます。
列挙型 API レポートには、「ANDROID」や「CHANNEL」などのテキスト値が含まれており、列挙されたディメンション値を識別できます。 API レポートには、テキスト値にマッピングできる整数が含まれています。
Quota API サーバーは、各クエリを評価して割り当てコストを決定します。詳しくは、割り当ての使用状況をご覧ください。 データは 1 回取得され、アプリケーション内でフィルタ、並べ替え、クエリが行われるため、割り当ての使用状況は問題になりません。
固有のレポート
  • 字幕に関連するユーザー アクティビティ
  • 再生リストの視聴者維持率データ
  • コンテンツ所有者向けの推定収益レポート(2 種類のレポートを利用可能)
  • コンテンツ所有者向けのアセット レポート(11 種類のレポートを利用可能)
固有のディメンション group(フィルタ専用のディメンション)
continent(フィルタ専用のディメンション)
subContinent(フィルタ専用のディメンション)
month
viewsPerPlaylistStart
averageTimeInPlaylist
annotation_id
annotation_type
asset_id
card_id
card_type
live_or_on_demand
subscribed_status
subtitle_language
固有の指標 uniques
relativeRetentionPerformance
viewsPerPlaylistStart
averageTimeInPlaylist
card_click_rate
card_clicks
card_impressions
card_teaser_click_rate
card_teaser_clicks
card_teaser_impressions
estimated_partner_adsense_revenue
estimated_partner_doubleclick_revenue playlist_saves_added
playlist_saves_removed

API 間での命名の違い

2 つの API では、ディメンションと指標を識別するために異なる命名規則が使用されます。YouTube Analytics API の名前は、adType のようにキャメルケースを使用します。YouTube Reporting API の名前は小文字で、ad_type のようにアンダースコアを使用します。

次の表に、2 つの API で同じ指標とディメンションを識別するために使用される名前の違いを示します。場合によっては、2 つの名前の違いは、キャメルケースからアンダースコアに変換した場合よりも大きくなります。たとえば、YouTube Analytics API の video ディメンションは、YouTube Reporting API では video_id という名前になります。

ディメンション

YouTube Analytics API 名 YouTube Reporting API 名
adType ad_type
ageGroup age_group
asset asset_id
audienceType audience_retention_type
channel channel_id
claimedStatus claimed_status
contentOwner content_owner_id
country country_code
day date
deviceType device_type
elapsedVideoTimeRatio elapsed_video_time_percentage
gender gender
insightPlaybackLocationDetail playback_location_detail
insightPlaybackLocationType playback_location_type
insightTrafficSourceDetail traffic_source_detail
insightTrafficSourceType traffic_source_type
liveOrOnDemand live_or_on_demand
operatingSystem operating_system
playlist playlist_id
province province_code
sharingService sharing_service
subscribedStatus subscribed_status
subtitleLanguage subtitle_language
uploaderType uploader_type
video video_id

指標

YouTube Analytics API 名 YouTube Reporting API 名
adImpressions ad_impressions
annotationClickableImpressions annotation_clickable_impressions
annotationClicks annotation_clicks
annotationClickThroughRate annotation_click_through_rate
annotationClosableImpressions annotation_closable_impressions
annotationCloses annotation_closes
annotationCloseRate annotation_close_rate
annotationImpressions annotation_impressions
audienceWatchRatio audience_retention_percentage
averageViewDuration average_view_duration_seconds
averageViewPercentage average_view_duration_percentage
cardClickRate card_click_rate
cardClicks card_clicks
cardImpressions card_impressions
cardTeaserClickRate card_teaser_click_rate
cardTeaserClicks card_teaser_clicks
cardTeaserImpressions card_teaser_impressions
comments comments
cpm estimated_cpm
dislikes dislikes
estimatedAdRevenue estimated_partner_ad_revenue
estimatedMinutesWatched watch_time_minutes
estimatedRevenue estimated_partner_revenue
grossRevenue estimated_youtube_ad_revenue
likes likes
monetizedPlaybacks estimated_monetized_playbacks
playbackBasedCpm estimated_playback_based_cpm
playlistStarts playlist_starts
savesAdded playlist_saves_added
savesRemoved playlist_saves_removed
shares shares
subscribersGained subscribers_gained
subscribersLost subscribers_lost
videosAddedToPlaylists videos_added_to_playlists
videosRemovedFromPlaylists videos_removed_from_playlist
viewerPercentage views_percentage
views views
videoThumbnailImpressions video_thumbnail_impressions
videoThumbnailImpressionsClickRate video_thumbnail_impressions_ctr