詳細
同期 vs. 非同期
同期および非同期アナリティクスエンドポイントの違いを以下の表にまとめています。この情報は、どちらのエンドポイントを使用するかを開発者が選択する際に役立てることを意図しています。| 機能 | 同期 | 非同期 |
|---|---|---|
| レート制限 | ユーザーレベル: 250 リクエスト / 15 分 | アカウントレベル: 100 件の同時\*ジョブ |
| 期間 | 7 日間 | 90 日間 (セグメント化なし) 45 日間 (セグメント化あり) |
| セグメンテーション | 不可 | 可 |
| レスポンスで返るもの | 指標データ | ジョブの処理状態\\ |
| 推奨ユースケース | リアルタイム最適化 ユーザーインターフェースリクエスト | 定期スケジュール同期 履歴データのバックフィル |
* これは、任意の時点で処理中の状態にあるジョブの最大数を指します。** ジョブの処理が正常に完了すると、URL が返されます。ここから圧縮 (gzip) された結果ファイルをダウンロードできます。この点を除き、両エンドポイントは同じ機能を提供します。
ユースケース
主要なアナリティクスのユースケースは 3 つあります。- リアルタイム最適化: パフォーマンス指標を使用してアクティブなキャンペーンを更新する
- 同期: 定期スケジュールでのバックグラウンド同期
- 新規アカウントのオンボーディング: 履歴データのバックフィル
リクエストオプション
アナリティクスリクエストは広告アカウントを対象とするため、リソースパスにアカウント ID が必要です。以下に挙げるリクエストオプションは、クエリパラメータとして指定します。次の種類の値が必要です。- エンティティ: エンティティタイプと、アナリティクスを取得したい最大 20 件のエンティティ ID
- 期間: ISO 8601 形式で表現された開始時刻と終了時刻
- 注: 時間単位 (whole hours) で指定する必要があります
- メトリクスグループ: 1 つ以上の関連メトリクスのセット (各メトリクスグループ内のメトリクスの一覧については「Metrics and Segmentation」を参照)
- 粒度 (Granularity): 指標が返される集計レベルを指定します
- プレースメント: X 上または X 以外で配信された広告の指標を取得するかを決定します
- 注: 1 リクエストあたり 1 つのプレースメント値のみ指定できます
start_time および end_time リクエストパラメータを使用して期間を指定します。これらの値は、指定された粒度に合わせて以下のように整列している必要があります。
TOTAL: (エンドポイントの制限内で) 任意の期間を指定可能DAY: 開始時刻と終了時刻の両方がアカウントのタイムゾーンにおける深夜 0 時に一致している必要がありますHOUR: (エンドポイントの制限内で) 任意の期間を指定可能
start_time=2026-01-01T00:00:00Z および end_time=2026-01-02T00:00:00Z のリクエストでは、この期間は 24 時間しかカバーしないため、(2 日ではなく) 1 日分のアナリティクス指標が返されます。
セグメンテーション
セグメンテーションは非同期アナリティクスエンドポイントでのみ利用可能であり、特定のターゲティング値ごとに分解された指標をパートナーや広告主が取得できるようにします。セグメント化された指標をリクエストするには、segmentation_type リクエストパラメータを使用します。セグメンテーションオプションの詳細については、Metrics and Segmentation を参照してください。
FAQ
Ads API の数値が X Ads UI に表示されている数値と一致しないのはなぜですか?- すべてのプレースメント (
ALL_ON_TWITTER、SPOTLIGHT、TREND) のデータをリクエストしているか確認してください。 - Ads API では終了時刻 (end time) は除外的ですが、Ads UI では包含的 (inclusive) であることに注意してください。
- レポーティング指標は利用可能になり次第すぐに取得できます。これらはほぼリアルタイムで利用可能です。ただし、これらの初期結果は推定値であり、変化することが想定されます。指標は 24 時間後に確定しますが、支出データは例外です。
- 支出指標は通常、イベントから 3 日以内に確定します。ただし、課金データは (スパムフィルタリングなどのために) イベント発生日から最大 14 日間処理されます。
- Active Entities エンドポイント を使用してください
null なのはなぜですか?
- リクエストされた期間中、キャンペーンが配信されていなかった可能性が高いです
- Active Entities エンドポイント を使用して、どのエンティティについてどの期間のアナリティクスを取得すべきかを判断してください
null 値を返すのに、UI では 0 が表示されるのはなぜですか?
- UI ではこれらの値を 0 として表示することを選んでいますが、値としては同等です
- アナリティクスでは次のプレースメント値をサポートしています:
ALL_ON_TWITTER、SPOTLIGHT、TREND
- はい。エンティティのステータスはアナリティクス指標の利用可能性には影響しません。
- セグメント化されたデータは、その情報の導出方法の都合上、セグメント化されていないデータに対して 100% ロールアップされることは想定されていません。
- API は、クエリしている特定のエンティティタイプ (CAMPAIGN、PROMOTED_TWEET) にスコープされたセグメント化された指標を返します。Ads Manager UI はエンティティタイプを横断してデータを集計します。これらは同じ基礎データの異なるビューであり、想定されている挙動です。
- マルチセグメンテーションはサポートしていません。
ベストプラクティス
Ads API から アナリティクス データを収集する際のいくつかのベストプラクティスです。レート制限とリトライ
- レート制限がかかったクエリ (
HTTP 429ステータスコードを返すもの) では、x-rate-limit-resetヘッダーを確認し、示された時刻以降にのみリトライしてください。 - HTTP 503 Service Unavailable ステータスコードを返すクエリでは、
retry-afterヘッダーを確認し、示された時刻以降にのみリトライしてください。 - リトライ時刻を尊重しないアプリケーションは、予告なく Ads API へのアクセスが取り消されたり、スロットリングされたりする可能性があります。
アナリティクス指標のポイント
- すべてのアナリティクス指標は、
billed_charge_local_microを除き、24 時間後にロックされ変更されません。 billed_charge_local_micro指標は、データが返された後最大 3 日間は推定値です。- 24 時間経過後、この指標は、超過配信 (指定された
end_time以降に配信された広告) に対するクレジットや、無効と判断された課金イベントによって減少する可能性があります。この指標は 24 時間後にはほとんど変化しません。 - 詳細については アナリティクス を参照してください。
リアルタイムでセグメント化されていないデータの取得
- 必ず
start_timeとend_timeの両方を指定してください。 - 7 日より古いエンティティについてはデータを取得しないでください。
- 理想的には
HOUR粒度でデータをリクエストしてください。常に集計してロールアップし、DAYおよびTOTAL粒度を得ることができます。 - 理想的には
line_itemsおよびpromoted_tweetsレベルでデータをリクエストしてください。これらの指標を集計してロールアップすることで、広告エンティティ階層全体 (キャンペーン、ファンディングインストゥルメント、アカウントレベル) の合計を得ることができます。 - アナリティクス指標の値は自分側 (ローカル) に保存・保管してください。
- 30 日より古いデータを繰り返しクエリしないでください。このデータは変化しないため、ローカルに保管すべきです。
- セグメント化されていないデータはすべてリアルタイムであり、イベント発生から数秒以内に利用可能になります。
- コンバージョン指標と非コンバージョン指標は別のリクエストにグループ化してください。
セグメント化されたデータの取得
- 上記「リアルタイムでセグメント化されていないデータの取得」のガイドラインを参照してください。以下に追加のアドバイスを示します。
- ほとんどのセグメント化データタイプでは、データが完了するまでに最大 1 時間かかる場合があります。
INTERESTSでセグメント化されたデータは最大 12 時間遅延する可能性があります。 - セグメント化されたデータは、その情報の導出方法の都合上、セグメント化されていないデータに対して 100% ロールアップされることは想定されていません。
履歴データの取得
- データをバックフィルする際 (新しい広告主アカウントの追加など) は、より小さい
start_timeとend_timeのチャンクで複数のリクエストを行う必要がある場合があります。 - 取得は 30 日間の日付ウィンドウに制限してください。
- これらのリクエストをスロットリングし、時間をかけて分散させ、レート制限を使い切らないようにしてください。
サンプル
これらのベストプラクティスの一部を示すサンプルスクリプト (fetch_stats) を、ads-platform-tools GitHub リポジトリで提供しています。
目的別の指標
エンティティに適用可能な指標は、キャンペーンの目的 によって異なります。このガイドを参考に、各目的タイプに対して取得すべき関連メトリクスグループや、追加の派生指標をどのように計算できるかを判断してください。ENGAGEMENTS
関連メトリクスグループ: ENGAGEMENT および BILLING。
| 派生指標 | 公開指標による計算式 |
| Engagement Rate | engagements/impressions |
| CPE | billed_charge_local_micro/engagements |
WEBSITE_CLICKS および WEBSITE_CONVERSIONS
関連メトリクスグループ: ENGAGEMENT、BILLING、および WEB_CONVERSION。
| 派生指標 | 公開指標による計算式 |
| CPM | billed_charge_local_micro/impressions/1000 |
| Click Rate | clicks/impressions |
| CPLC | billed_charge_local_micro/clicks |
| Total Conversions | conversion_custom + conversion_site_visits + conversion_sign_ups + conversion_downloads + conversion_purchases |
| Conversion Rate | Total Conversions / impressions |
| CPA | billed_charge_local_micro / Total Conversions |
APP_INSTALLS
関連メトリクスグループ: ENGAGEMENT、BILLING、MOBILE_CONVERSION、および LIFE_TIME_VALUE_MOBILE_CONVERSION。クリエイティブで video app card を使用する場合は VIDEO も該当します。
| 派生指標 | 公開指標による計算式 |
| CPM | billed_charge_local_micro/impressions/1000 |
| App Click Rate | app_clicks/impressions |
| CPAC | billed_charge_local_micro/app_clicks |
| CPI | billed_charge_local_micro/mobile_conversion_installs |
FOLLOWERS
関連メトリクスグループ: ENGAGEMENT および BILLING。
| 派生指標 | 公開指標による計算式 |
| CPM | billed_charge_local_micro/impressions/1000 |
| Follow Rate | follows/impressions |
| CPF | billed_charge_local_micro/follows |
VIDEO_VIEWS
関連メトリクスグループ: ENGAGEMENT、BILLING、および VIDEO。
| 派生指標 | 公開指標による計算式 |
| CPM | billed_charge_local_micro/impressions/1000 |
| Video Rate | video_total_views/impressions |
| Cost Per View | billed_charge_local_micro/video_total_views |
VIDEO_VIEWS_PREROLL
関連メトリクスグループ: ENGAGEMENT、BILLING、および VIDEO。
| 派生指標 | 公開指標による計算式 |
| CPM | billed_charge_local_micro/impressions/1000 |
| Video Rate | video_total_views/impressions |
| Cost Per View | billed_charge_local_micro/video_total_views |
メトリクスとセグメンテーション
このドキュメントは、エンティティタイプごとに アナリティクス で利用可能な指標と、各指標で利用可能なセグメンテーションの概要をまとめたものです。| メトリクスグループ | ||||||
| エンティティ | ENGAGEMENT | BILLING | VIDEO | WEB_CONVERSION | MOBILE_CONVERSION | LIFE_TIME_VALUE_MOBILE_CONVERSION |
ACCOUNT | ✔\* | |||||
FUNDING_INSTRUMENT | ✔\* | ✔ | ||||
CAMPAIGN | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
LINE_ITEM | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
PROMOTED_TWEET | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
ENGAGEMENT メトリクスファミリーの一部の指標は、アカウントおよびファンディングインストゥルメントレベルでは利用できません。詳細は ENGAGEMENT セクションを参照してください。
メトリクスグループ別の利用可能な指標
ENGAGEMENT
| 指標 | 説明 | セグメンテーション可否 | データ型 | アカウント / ファンディングインストゥルメントで利用可 |
engagements | エンゲージメントの総数 | ✔ | Array of ints | ✔ |
impressions | インプレッションの総数 | ✔ | Array of ints | ✔ |
retweets | リポストの総数 | ✔ | Array of ints | ✔ |
replies | 返信の総数 | ✔ | Array of ints | ✔ |
likes | いいねの総数 | ✔ | Array of ints | ✔ |
follows | フォローの総数 | ✔ | Array of ints | ✔ |
card_engagements | カードエンゲージメントの総数 | ✔ | Array of ints | |
clicks | お気に入りやその他のエンゲージメントを含むクリックの総数 | ✔ | Array of ints | |
app_clicks | アプリのインストールまたは起動の試行回数 | ✔ | Array of ints | |
| url_clicks | 広告内のリンクまたは Website Card のクリック総数 (アーンドを含む) | ✔ | Array of ints | |
qualified_impressions | 適格インプレッションの総数 | ✔ | Array of ints | |
carousel_swipes | Carousel 画像または動画のスワイプ総数 | ✔ | Array of ints |
BILLING
| 指標 | 説明 | セグメンテーション可否 | データ型 |
billed_engagements | 課金エンゲージメントの総数 | ✔ | Array of ints |
billed_charge_local_micro | 総支出 (マイクロ単位) | ✔ | Array of ints |
VIDEO
動画指標の定義変更に関する通知:
VIDEO メトリクスグループ内の video_total_views 指標は、MRC 基準に従い、少なくとも 50% が画面に表示されている状態で 2 秒間視聴されたビューを集計します。
少なくとも 3 秒間 100% が画面内に表示されたという従来の動画視聴定義は、VIDEO メトリクスグループ内の新しい指標 video_3s100pct_views として引き続き利用できます。元の視聴定義に基づいて入札・課金を継続するには、新たに利用可能になった VIEW_3S_100PCT bid_unit を使用してください。
| 指標 | 説明 | セグメンテーション可否 | データ型 |
video_total_views | 動画視聴の総数 | ✔ | Array of ints |
video_views_25 | 動画の少なくとも 25% が視聴されたビューの総数。 | ✔ | Array of ints |
video_views_50 | 動画の少なくとも 50% が視聴されたビューの総数。 | ✔ | Array of ints |
video_views_75 | 動画の少なくとも 75% が視聴されたビューの総数。 | ✔ | Array of ints |
video_views_100 | 動画の 100% が視聴されたビューの総数。 | ✔ | Array of ints |
video_cta_clicks | コールトゥアクションのクリック総数 | ✔ | Array of ints |
video_content_starts | 動画再生開始の総数 | ✔ | Array of ints |
video_3s100pct_views | 少なくとも 3 秒間 100% が画面内に表示されて再生されたビューの総数 (旧 video_total_views) | ✔ | Array of ints |
video_6s_views | 動画の少なくとも 6 秒間が視聴されたビューの総数 | ✔ | Array of ints |
video_15s_views | 動画の少なくとも 15 秒間、または総再生時間の 95% が視聴されたビューの総数 | ✔ | Array of ints |
WEB_CONVERSION
| 指標 | 説明 | セグメンテーション可否 | データ型 |
conversion_purchases | PURCHASE タイプのコンバージョン数と、それに対応する販売額と注文数量 | PLATFORMS のみ | JSON object |
conversion_sign_ups | SIGN_UP タイプのコンバージョン数と、それに対応する販売額と注文数量 | PLATFORMS のみ | JSON object |
conversion_site_visits | SITE_VISIT タイプのコンバージョン数と、それに対応する販売額と注文数量 | PLATFORMS のみ | JSON object |
conversion_downloads | DOWNLOAD タイプのコンバージョン数と、それに対応する販売額と注文数量 | PLATFORMS のみ | JSON object |
conversion_custom | CUSTOM タイプのコンバージョン数と、それに対応する販売額と注文数量 | PLATFORMS のみ | JSON object |
MOBILE_CONVERSION
モバイルコンバージョンの統計は、MACT が有効化された広告主アカウントでのみ利用できます。
| 指標 | 説明 | セグメンテーション可否 | データ型 |
mobile_conversion_spent_credits | SPENT_CREDIT タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_installs | INSTALL タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_content_views | CONTENT_VIEW タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_add_to_wishlists | ADD_TO_WISHLIST タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_checkouts_initiated | CHECKOUT_INITIATED タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_reservations | RESERVATION タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_tutorials_completed | TUTORIAL_COMPLETED タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_achievements_unlocked | ACHIEVEMENT_UNLOCKED タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_searches | SEARCH タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_add_to_carts | ADD_TO_CART タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_payment_info_additions | PAYMENT_INFO_ADDITION タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_re_engages | RE_ENGAGE タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_shares | SHARE タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_rates | RATE タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_logins | LOGIN タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_updates | UPDATE タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_levels_achieved | LEVEL_ACHIEVED タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_invites | INVITE タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
mobile_conversion_key_page_views | KEY_PAGE_VIEW タイプのモバイルコンバージョンを post_view と post_engagement に内訳 | ✔ | JSON object |
| mobile_conversion_downloads | DOWNLOAD タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
| mobile_conversion_purchases | PURCHASE タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
| mobile_conversion_sign_ups | SIGN_UP タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
| mobile_conversion_site_visits | SITE_VISIT タイプのモバイルコンバージョンを post_view、post_engagement、assisted、order_quantity、sale_amount に内訳 | ✔ | JSON object |
LIFE_TIME_VALUE_MOBILE_CONVERSION
ライフタイムモバイルコンバージョンの統計は、MACT が有効化された広告主アカウントでのみ利用できます。
| 指標 | 説明 | セグメンテーション可否 | データ型 |
mobile_conversion_lifetime_value_purchases | PURCHASE タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_sign_ups | SIGN_UP タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_updates | UPDATE タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_tutorials_completed | TUTORIAL_COMPLETED タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_reservations | RESERVATION タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_add_to_carts | ADD_TO_CART タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_add_to_wishlists | ADD_TO_WISHLIST タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_checkouts_initiated | CHECKOUT_INITIATED タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_levels_achieved | LEVEL_ACHIEVED タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_achievements_unlocked | ACHIEVEMENT_UNLOCKED タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_shares | SHARE タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_invites | INVITE タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_payment_info_additions | PAYMENT_INFO_ADDITION タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_spent_credits | SPENT_CREDIT タイプのモバイルコンバージョンの内訳 | JSON object | |
mobile_conversion_lifetime_value_rates | RATE タイプのモバイルコンバージョンの内訳 | JSON object |
セグメンテーション
セグメンテーションレポートは、指定されたターゲティングタイプの値ごとに分解された指標を取得することを可能にします。セグメンテーションは、その複雑さが大きいため、非同期アナリティクスクエリ でのみ利用可能です。 2026 年 5 月時点で、以下のセグメンテーションタイプのみが有効化されています。METROS は Nielsen DMA コードを数値文字列として返します (819 = Seattle-Tacoma)。METROS のような地理的セグメンテーションタイプには country パラメータが必要です (米国の場合は 96683cc9126741d1)。| セグメンテーションタイプ | country パラメータ必須 |
AGE | |
GENDER | |
METROS | ✔ |
PLATFORMS |
派生指標
キャンペーンの指標は キャンペーンの目的 に依存します。設定された目的に基づいて、使用する派生指標を計算する方法をこのガイドで確認してください。 中括弧で囲まれていないmetric は、Ads API の アナリティクス エンドポイントから返される指標です。{中括弧} で囲まれた名前は、そのカテゴリの派生指標を示します。
ENGAGEMENTS
| 派生指標 | 公開指標による計算式 |
promoted_tweet_search_impressions + promoted_tweet_timeline_impressions + promoted_tweet_profile_impressions | |
billed_charge_local_micro / {Impressions} / 1000 | |
{Total Engagements} | promoted_account_follows + promoted_tweet_search_engagements + promoted_tweet_timeline_engagements + promoted_tweet_profile_engagements または promoted_account_follows + promoted_tweet_search_clicks + promoted_tweet_search_replies + promoted_tweet_search_retweets + promoted_tweet_search_follows + promoted_tweet_timeline_clicks + promoted_tweet_timeline_replies + promoted_tweet_timeline_retweets + promoted_tweet_timeline_follows + promoted_tweet_profile_clicks + promoted_tweet_profile_replies + promoted_tweet_profile_retweets + promoted_tweet_profile_follows |
{Engagement Rate} | {Total Engagements} / {Impressions} |
billed_charge_local_micro / {Total Engagements} |
WEBSITE_CLICKS
| 派生指標 | 公開指標による計算式 |
promoted_tweet_search_impressions + promoted_tweet_timeline_impressions + promoted_tweet_profile_impressions | |
billed_charge_local_micro / {Impressions} / 1000 | |
{Link Clicks} | promoted_tweet_search_url_clicks + promoted_tweet_timeline_url_clicks + promoted_tweet_profile_url_clicks |
{Click Rate} | {Link Clicks} / {Impressions} |
billed_charge_local_micro / {Link Clicks} | |
conversion_site_visits | |
{Conversion Rate} | conversion_site_visits / {Impressions} |
billed_charge_local_micro / conversion_site_visits |
APP_INSTALLS
| 派生指標 | 公開指標による計算式 |
promoted_tweet_search_impressions + promoted_tweet_timeline_impressions | |
billed_charge_local_micro / {Impressions} / 1000 | |
{App Clicks} | promoted_tweet_app_install_attempts + promoted_tweet_app_open_attempts + promoted_tweet_timeline_url_clicks + promoted_tweet_search_url_clicks |
{App Click Rate} | {App Clicks} / {Impressions} |
billed_charge_local_micro / {App Clicks} | |
billed_charge_local_micro / mobile_conversion_installs |
FOLLOWERS
| 派生指標 | 公開指標による計算式 |
promoted_account_impressions | |
billed_charge_local_micro / {Impressions} / 1000 | |
promoted_account_follows | |
{Follow Rate} | promoted_account_follow_rate |
billed_charge_local_micro / promoted_account_follows |
VIDEO_VIEWS
| 派生指標 | 公開指標による計算式 |
promoted_tweet_search_impressions + promoted_tweet_timeline_impressions + promoted_tweet_profile_impressions | |
billed_charge_local_micro / {Impressions} / 1000 | |
{Video Views} | promoted_video_total_views |
{Video Rate} | promoted_video_total_views / {Impressions} |
{Cost Per View} | billed_charge_local_micro / promoted_video_total_views |
QUALIFIED_IMPRESSIONS
| 派生指標 | 公開指標による計算式 |
promoted_tweet_search_impressions + promoted_tweet_timeline_impressions + promoted_tweet_profile_impressions | |
billed_charge_local_micro / {Impressions} / 1000 | |
{Qualified Impressions} | promoted_tweet_timeline_qualified_impressions + promoted_tweet_search_qualified_impressions + promoted_tweet_profile_qualified_impressions |
{Qualified Impression Rate} | {Qualified Impressions} / {Impressions} |
{Cost Per 1000 Qualified Impressions } | billed_charge_local_micro / {Qualified Impressions} / 1000 |
CUSTOM
placement_type が PROMOTED_ACCOUNT の場合は、上記の FOLLOWERS 目的を参照してください。この目的の他のすべてのプレースメントについては、対応する派生指標について ENGAGEMENTS を参照してください。
ガイド
Active Entities
はじめに
Active Entities エンドポイント は、同期 および 非同期 アナリティクスエンドポイントと組み合わせて使用するように設計されており、どのキャンペーンに対してアナリティクスをリクエストすべきかという情報を提供します。具体的には、広告エンティティおよびその指標が変化した時点に関する詳細を返します。このエンドポイントを使用することで、コードとアナリティクス取得ロジックが大幅に簡素化されます。 このガイドには、エンドポイントとそのデータソースに関する情報とコンテキストが含まれています。また、使用ガイドライン と一連の リクエスト例 も提供しており、Active Entities をアナリティクスエンドポイントと組み合わせて使用する方法を示します。Summary セクション では、推奨されるアプローチを高レベルで説明しています。データ
広告エンティティの指標が変化するたびに、その変更に関する情報を記録します。これらの変更イベントは時間単位のバケットに保存され、エンティティの詳細と変更が適用される時刻が含まれます。後者が必要なのは、変更イベントが記録された時刻と必ずしも一致しないからです。課金調整がよくある理由ですが、他にも理由があります。エンドポイント
リクエスト
Active Entities リクエストは広告アカウントを対象にスコープされ、3 つの必須クエリパラメータ (entity、start_time、end_time) を持ちます。
twurl -H ads-api.x.com "/12/stats/accounts/18ce54d4x5t/active_entities?entity=PROMOTED_TWEET&start_time=2026-03-05T00:00:00Z&end_time=2026-03-06T00:00:00Z"
entity に指定できる値は以下のとおりです: CAMPAIGN、FUNDING_INSTRUMENT、LINE_ITEM、PROMOTED_ACCOUNT、PROMOTED_TWEET。これは、アナリティクスエンドポイントがサポートするエンティティタイプを反映しています。
start_time と end_time の値は ISO 8601 で表現する必要があり、どの時間バケットをクエリするかを指定します。これらは時間単位 (whole hours) で表現する必要があります。
このエンドポイントは結果をフィルタリングするための 3 つのオプションパラメータ (funding_instrument_ids、campaign_ids、line_item_ids) もサポートしています。これらは広告階層のすべてのレベルで、また任意の指定された entity タイプと共に機能します。
レスポンス
上記リクエストに対する Active Entities のレスポンスを以下に示します。data 配列には、後続のアナリティクスリクエストに含めるべきすべてのエンティティに対応するオブジェクトが含まれています。このセット以外の ID についてアナリティクスをリクエストすべきではありません。
各オブジェクトには 4 つのフィールドが含まれます: entity_id、activity_start_time、activity_end_time、placements。activity の開始時刻と終了時刻は、関連するエンティティの変更イベントが適用される期間を表しており、後続のアナリティクスリクエストで指定すべき日付を決定します。placements 配列には次の値を含めることができます: ALL_ON_TWITTER、SPOTLIGHT、TREND。これは、指定されたエンティティ ID に対してリクエストすべきプレースメントを示します。
使用方法
Active Entities エンドポイントは、アナリティクスリクエストの作成方法を決定するために使用すべきです。次の使用ガイドラインは、アナリティクス同期をサポートし、パートナーが自社データストアを X と同期させるために書かれています。言い換えると、定期スケジュールのバックグラウンド同期を実行する方法を説明しています。 開発者が下すべき判断は 2 つあります。- Active Entities 情報をリクエストする頻度、つまりアナリティクスを取得する頻度。
- activity の開始時刻と終了時刻を使用して、アナリティクスリクエストの
start_timeとend_timeの値をどう決定するか。
要約
Active Entities エンドポイントを次のように使用して、アナリティクスリクエストの作成方法を決定します。Active Entities 情報をリクエストする頻度、つまりアナリティクスを取得する頻度を決めた後、以下の手順に従ってください。- Active Entities リクエストを行います。
- レスポンスをプレースメント別に分割します。
ALL_ON_TWITTERで 1 グループ、SPOTLIGHTで 1 グループ、TRENDで 1 グループ。 - 各プレースメントグループについて、以下を実行します。
- エンティティ ID を抽出します。
- アナリティクスの
start_timeとend_timeの値を決定します。- 最小の
activity_start_timeを見つけます。この値を切り下げます。 - 最大の
activity_end_timeを見つけます。この値を切り上げます。
- 最小の
- アナリティクスリクエストを実行します。
- エンティティ ID を 20 件ずつのバッチにグループ化します。
- #3b で取得した
start_timeとend_timeを使用します。 - 適切な
placement値を指定します。
- データストアに書き込みます。
頻度
最初の質問への答えにより、Active Entities リクエストで使用すべき期間が決まります。例えば、Active Entities 情報を 1 時間ごとにリクエストする場合、期間は 1 時間にすべきです。1 日 1 回 Active Entities 情報をリクエストする場合、期間は 1 日にすべきです。言い換えると、期間は、現在のリクエストのstart_time が前のリクエストの end_time と等しくなるように選択する必要があります。
注: 同じ時間ウィンドウは一度だけリクエストすべきです。同じ時間ウィンドウを複数回リクエストすると、不必要なアナリティクスリクエストにつながります。(例外は以下を参照。)
| リクエスト時刻 | start_time タイムスタンプ | end_time タイムスタンプ |
| 00:15:00 | 00:00:00 | 00:15:00 |
| 00:30:00 | 00:15:00 | 00:30:00 |
| 00:45:00 | 00:30:00 | 00:45:00 |
| 01:00:00 | 00:45:00 | 01:00:00 |
アクティビティ時刻
アクティビティの開始時刻と終了時刻の扱いには、以下のアプローチを推奨します。Active Entities レスポンス内のすべてのオブジェクトを横断して、最小のactivity_start_time と最大の activity_end_time を見つけます。これらの値を、最小のアクティビティ開始時刻は切り下げ、最大のアクティビティ終了時刻は切り上げて修正します。具体的には、両方のタイムスタンプを 0 に設定し、終了時刻には 1 日を加算します (以下の表を参照)。これらが、後続のアナリティクスリクエストで指定すべき開始時刻と終了時刻になります。
| 最小、最大のアクティビティ時刻 | 導出された時刻 |
| 2026-03-04T20:55:20Z 2026-03-05T14:40:59Z | 2026-03-04T00:00:00Z 2026-03-06T00:00:00Z |
DAY 粒度を指定した場合、このような範囲は受け付けられないことに注意してください。)
例
このセクションでは、Active Entities を同期アナリティクスエンドポイントと組み合わせて使用する方法を示します。(レスポンスは読みやすさのために若干変更しています。) この例では、毎時の正時に Active Entities エンドポイントを呼び出し、それぞれのリクエストは前の 1 時間を見るようにしています。レスポンスにより、同期アナリティクスエンドポイントの使用方法が決まります。 最初の Active Entities リクエストは 03:00:00 に行われます。レスポンスは、ラインアイテム dvcz7 の指標が変化し、その変更イベントが 02:02:55 から 02:28:12 のウィンドウに適用されることを示しています。start_time と end_time の値はそれぞれ 2026-02-11T00:00:00Z および 2026-02-12T00:00:00Z に設定されます。以下の各指標配列の 3 番目の要素が非ゼロであることが分かります。これは、Active Entities 情報に基づき期待されていたとおりです。
非同期ガイド
API リファレンス
非同期アナリティクス
はじめに
非同期アナリティクスエンドポイントを使用すると、パートナーや広告主はサーバーが非同期で処理する作成リクエストを送信して指標をリクエストできます。(これらを非同期アナリティクスの「ジョブ」と呼びます。) このアプローチでは、リクエストが完了するまでクライアントの接続を開いたままにしておく必要がありません。 これらのエンドポイントは、同期版と同様に、パートナーや広告主がキャンペーンのパフォーマンスに関する詳細な統計情報をリクエストできるようにします。アカウント、ファンディングインストゥルメント、キャンペーン、ラインアイテム、プロモート投稿、メディアクリエイティブのデータをリクエストできます。同期エンドポイントとの違いは、非同期アナリティクスエンドポイントは最大 90 日間というより長い期間と、セグメンテーションをサポートしている点です。両者の違いの詳細については アナリティクス概要 ページを参照してください。 同期エンドポイントとは異なり、レート制限は所定アカウントの同時ジョブ数に基づきます。言い換えると、ある時点で処理中の状態にあるジョブの数に基づきます。これは広告アカウントレベルでカウントされます。使用方法
非同期アナリティクスエンドポイントを使用してキャンペーン指標を取得するプロセスは、複数ステップにわたります。これには、ジョブの作成、ジョブの処理が完了したかの確認、そして最後にデータのダウンロードが含まれます。データファイルは解凍する必要があります。具体的な 4 つのステップを以下に示します。- POST stats/jobs/accounts/:account_id エンドポイントを使用してジョブを作成します。
- GET stats/jobs/accounts/:account_id エンドポイントに一定間隔でリクエストを行い、ジョブの処理が完了したか確認します。
- ジョブの処理が完了したら、データファイルをダウンロードします。
- データファイルを解凍します。
segmentation_type リクエストパラメータを使用します。
例
このセクションでは、非同期アナリティクスエンドポイントの使用方法を示します。 まず、POST stats/jobs/accounts/:account_id エンドポイントを使用してジョブを作成します。以下の例では、特定のラインアイテムについて 1 週間にわたるエンゲージメント指標 (インプレッション、いいね、クリックなど) をリクエストしています。(リクエストされた期間は 3 月 20 日まで含みますが、タイムスタンプが深夜 0 時に設定されているため 3 月 20 日自体は含まないことに注意してください。)id と id_str の両方の属性に表示されます。
次に、前のレスポンスの id_str を使用して、作成したジョブの処理が完了したかをレスポンスの "status": "SUCCESS" で確認します。これは、データがダウンロード可能であることを意味します。url フィールドにダウンロードリンクが含まれています。
job_ids パラメータで最大 200 個のジョブ ID を指定して、複数のジョブの状態を同時に確認することになります。
次に、リストされた url の値を使用してデータファイルをダウンロードします。
リーチと平均フリークエンシー
GET stats/accounts/:account_id/reach/campaigns
指定したキャンペーンのリーチと平均フリークエンシーのアナリティクスを取得します。リソース URL
https://ads-api.x.com/stats/accounts/:account_id/reach/campaigns
パラメータ
| 名前 | 説明 |
|---|---|
| account_id 必須 | 利用するアカウントの識別子。リソースのパス内に表示され、GET accounts を除くすべての Advertiser API リクエストで一般に必須のパラメータです。指定するアカウントは認証されたユーザーに紐づいている必要があります。 型: string 例: 18ce54d4x5t |
| campaign_ids 必須 | 識別子のカンマ区切りリストを指定して、レスポンスを目的のキャンペーンに限定します。最大 20 個の ID を指定できます。 注: 最大 20 個のキャンペーン ID を指定できます。 型: string 例: 8fgzf |
| end_time 必須 | ISO 8601 で表現された指定の終了時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-26T07:00:00Z |
| start_time 必須 | ISO 8601 で表現された指定の開始時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-19T07:00:00Z |
リクエスト例
GET https://ads-api.x.com/12/stats/accounts/18ce54d4x5t/reach/campaigns?campaign_ids=8fgzf&start_time=2026-05-19&end_time=2026-05-26
レスポンス例
GET stats/accounts/:account_id/reach/funding_instruments
指定したファンディングインストゥルメントのリーチと平均フリークエンシーのアナリティクスを取得します。リソース URL
https://ads-api.x.com/stats/accounts/:account_id/reach/funding_instruments
パラメータ
| 名前 | 説明 |
|---|---|
| account_id 必須 | 利用するアカウントの識別子。リソースのパス内に表示され、GET accounts を除くすべての Advertiser API リクエストで一般に必須のパラメータです。指定するアカウントは認証されたユーザーに紐づいている必要があります。 型: string 例: 18ce54d4x5t |
| funding_instrument_ids 必須 | 識別子のカンマ区切りリストを指定して、レスポンスを目的のファンディングインストゥルメントに限定します。最大 20 個の ID を指定できます。 注: 最大 20 個のファンディングインストゥルメント ID を指定できます。 型: string 例: lygyi |
| end_time 必須 | ISO 8601 で表現された指定の終了時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-26T07:00:00Z |
| start_time 必須 | ISO 8601 で表現された指定の開始時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-19T07:00:00Z |
リクエスト例
レスポンス例
同期アナリティクス
GET stats/accounts/:account_id
現在のアカウントの同期アナリティクスを取得します。最大期間 (end_time - start_time) は 7 日間です。
リソース URL
https://ads-api.x.com/12/stats/accounts/:account_id
パラメータ
| 名前 | 説明 |
|---|---|
| account_id 必須 | 利用するアカウントの識別子。リソースのパス内に表示され、GET accounts を除くすべての Advertiser API リクエストで一般に必須のパラメータです。指定するアカウントは認証されたユーザーに紐づいている必要があります。 型: string 例: 18ce54d4x5t |
| end_time 必須 | ISO 8601 で表現された指定の終了時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-26T07:00:00Z |
| entity 必須 | データを取得するエンティティタイプ。 型: enum 利用可能な値: ACCOUNT, CAMPAIGN, FUNDING_INSTRUMENT, LINE_ITEM, PROMOTED_ACCOUNT, PROMOTED_TWEET |
| entity_ids 必須 | データを取得する具体的なエンティティ。エンティティ ID のカンマ区切りリストを指定します。 注: 最大 20 個のエンティティ ID を指定できます。 型: string 例: 8u94t |
| granularity 必須 | 取得するデータの粒度を指定します。 型: enum 利用可能な値: DAY, HOUR, TOTAL |
| metric_groups 必須 | 返される具体的な指標。メトリクスグループのカンマ区切りリストを指定します。詳細は Metrics and Segmentation を参照してください。 注: MOBILE_CONVERSION データは別途リクエストする必要があります。型: enum 利用可能な値: BILLING, ENGAGEMENT, LIFE_TIME_VALUE_MOBILE_CONVERSION, MOBILE_CONVERSION, VIDEO, WEB_CONVERSION |
| placement 必須 | 取得データを特定のプレースメントにスコープします。 注: 1 リクエストにつき 1 つの値のみ受け付けます。X と X Audience Platform の両方のプレースメントを持つエンティティについては、プレースメント値ごとに別々のリクエストが必要です。 型: enum 利用可能な値: ALL_ON_TWITTER, SPOTLIGHT, TREND |
| start_time 必須 | ISO 8601 で表現された指定の開始時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-19T07:00:00Z |
リクエスト例
レスポンス例
Active Entities
GET stats/accounts/:account_id/active_entities
指定した期間にアナリティクス指標が変化したエンティティに関する詳細を取得します。 このエンドポイントは、アナリティクスエンドポイントと組み合わせて使用すべきです。このエンドポイントの結果は、どの広告エンティティのアナリティクスをリクエストすべきかを示します。使用ガイドラインについては Active Entities ガイド を参照してください。 変更イベントは時間単位のバケットで利用可能です。start_timeとend_timeの値は、どの時間バケットをクエリするかを指定します。- 返される
data配列には、後続のアナリティクスリクエストに含めるべきすべてのエンティティのオブジェクトが含まれます。 - 重要: 後続のアナリティクスリクエストで指定すべき日付は、
activity_start_timeとactivity_end_timeの値に基づいて決定する必要があります。- これらの値は、保存された変更イベントが 適用される 期間を表します。これはエンティティごとに返されます。
end_time - start_time) は 90 日間です。
リソース URL
https://ads-api.x.com/12/stats/accounts/:account_id/active_entities
パラメータ
| 名前 | 説明 |
|---|---|
| account_id 必須 | 利用するアカウントの識別子。リソースのパス内に表示され、GET accounts を除くすべての Advertiser API リクエストで一般に必須のパラメータです。指定するアカウントは認証されたユーザーに紐づいている必要があります。 型: string 例: 18ce54d4x5t |
| end_time 必須 | ISO 8601 で表現された指定の終了時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-26T07:00:00Z |
| entity 必須 | データを取得するエンティティタイプ。 型: enum 利用可能な値: CAMPAIGN, FUNDING_INSTRUMENT, LINE_ITEM, PROMOTED_ACCOUNT, PROMOTED_TWEET |
| start_time 必須 | ISO 8601 で表現された指定の開始時刻に取得データをスコープします。 注: 時間単位 (0 分 0 秒) で表現する必要があります。 型: string 例: 2026-05-19T07:00:00Z |
| campaign_ids 任意 | 識別子のカンマ区切りリストを指定して、レスポンスを目的のキャンペーンに紐づくエンティティに限定します。最大 200 個の ID を指定できます。 注: funding_instrument_ids および line_item_ids とは排他的です。型: string 例: 8wku2 |
| funding_instrument_ids 任意 | 識別子のカンマ区切りリストを指定して、レスポンスを目的のファンディングインストゥルメントに紐づくエンティティに限定します。最大 200 個の ID を指定できます。 注: campaign_ids および line_item_ids とは排他的です。型: string 例: lygyi |
| line_item_ids 任意 | 識別子のカンマ区切りリストを指定して、レスポンスを目的のラインアイテムに紐づくエンティティに限定します。最大 200 個の ID を指定できます。 注: campaign_ids および line_item_ids とは排他的です。型: string 例: 8v7jo |
リクエスト例
GET https://ads-api.x.com/12/stats/accounts/18ce54d4x5t/active_entities?entity=PROMOTED_TWEET&start_time=2026-02-28&end_time=2026-03-01