カスタムオーディエンス
概要
- GET accounts/:account_id/custom_audiences
- GET accounts/:account_id/custom_audiences/:custom_audience_id




- 渡しているユーザーIDが正しく、形式が壊れていないこと。
- 渡しているオーディエンス名が正しく、過去のメンバーシップ更新内容と一致していること。
- POSTコマンドのレスポンスを確認してください。
- ID Syncピクセルが正しく実装されていること、またID Syncプロセスで説明されているとおり、該当サイトに十分な数のユーザーが訪問し、ユーザーのマッピングが行われていることを確認してください。メンバーシップ更新でマッピングされていないユーザーは、ターゲティング可能なユーザーに変換されません。
- オーディエンスの最小サイズは100人のユーザー(照合後)です。500人未満のユーザーが照合されたオーディエンスは、X AdsのUIでターゲティングに利用できません。
- 通常、オーディエンスファイルの処理には4〜6時間かかりますが、ファイルサイズに依存します。ファイルの処理が完了すると、オーディエンスはX AdsのUIで利用可能になります。
- 照合率 = 過去90日間のアクティブなXユーザー数 / 提供したユーザー数
- テスト用のオーディエンスファイルを用意し、広告主ハンドルとして「keltonlynn」を使用してください。ファイルがXのUIに正しく取り込まれ、読み込まれることを当社で検証できます。
p_user_id
)とは何ですか?
- 貴社が各顧客を一意に識別するために使用する識別子です。
- メールアドレス、デバイスID、Xの@handleまたはIDを指します。
- 暗号化されたメールで提供します。公開PGP鍵をmpp-inquiry@x.comにお送りください。すべてが問題なく動作することを確認するため、テストメールを送信します。確認が取れ次第、HMACキーをお送りします。
- Xがテストファイル(サンプルのメールアドレス、デバイスIDなどを含む)と、検証用の結果hashファイルを提供します。
- いいえ、フルデータマッチファイルにサイズ制限はありません。
- Xがファイルを受領してから、処理には約1日かかります。
CRM

パートナーIDマッチング要件
p_user_id
)からXのID(tw_id
)へのマッピングをXが保存する形で作成します。適切な維持管理を確保するため、2〜3ヶ月ごとに定期的に実行されます。マッチが完了すると、Xはこのファイルからのベースラインマッチ率を電子メールで企業に共有します。
このファイルの形式は以下の通りです:
命名規則:FullDataMatch.[CompanyName].txt
ハッシュアルゴリズム:HMAC_SHA-256
形式:
列1:共通識別子のHMACハッシュ値
列2:パートナーユーザーID(ユーザーごとに一意、ファイル内では非一意)
列区切り文字(CSV):ハッシュ化された共通ユーザー識別子とパートナーIDを区切るためにカンマを使用
行区切り値
- 例:ユーザーレコードAがパートナーユーザーID 1と共通識別子1、2、3を持つ場合:
共通ユーザー識別子 1 | p_user_1 |
共通ユーザー識別子 2 | p_user_1 |
共通ユーザー識別子 3 | p_user_1 |
p_user_id
の形式でユーザーのリストを提供し、X上でのターゲティング用に顧客向けのカスタムオーディエンスを作成します。
- 行区切り値
p_user_id
-
- (上記の1. 完全データマッチセクションで提供されたものと同じ。完全データマッチで提供された値がハッシュ化されている場合、企業はオーディエンスファイルで同じハッシュ化された値を提供します。提供された値がハッシュ化されていない場合、企業はハッシュ化されていない値を提供します。)
標準的なマッチング要件
- 行区切りの値
- hash化された共通ユーザー識別子(例: emailアドレス)
- 以下のファイル命名規則に従う
- 以下のemailアドレスのhash化手順(Hashing Directions)に従う
カスタムセグメントListファイルの命名規則と操作
- audiencename: カスタムオーディエンスの名称。ads.x.com のキャンペーン設定 UI でオーディエンス選択時に表示される名前です(例: brand_loyalty_card_holders)。
- partnername: 広告主に代わって data を提供する企業名(例: company_name)。
- handle: カスタムオーディエンスにアクセス権を持つ X アカウント(@handle)(例: @pepsi、@dietpepsi)
- operation: new, add, remove, removeall, replace(詳細は下記)
- timestamp: アップロードされる各オーディエンスファイルの一意性を確保するために使用する、秒単位の標準 Unix エポック時刻
- filetype: ファイルは *.txt 形式である必要があります
オーディエンスの作成と更新
- これは、広告主からの配信をオプトアウトしたユーザーの包括的なリストとして使用できます。
- X は、このファイルで提供された最新のリストのみを有効とし、マッチした既存および将来のすべてのオーディエンスに適用します。
ハッシュ化の手順
E-mailの正規化
@
It92I6Ev2B.
Com
正規化後: testemail_organisational_baseball+884@
it92i6ev2b.
com
ハッシュ値: 74d9584eded0ad1e5572a1c1849f3716751d371d6117a6155dad5363f4b4fbec
注: エンコードされたhmacおよびキーの文字数は、入力やエンコード方式によって変動するため、固定ではありません。
デバイスIDの正規化
X ユーザーIDの正規化
@
username の両方からは空白を削除してください。ただし、User ID の正規化は不要です。@username は正規化のため小文字にしてください。また、@ 記号は username の一部に含めないでください。
生の ID 形式は次のとおりです:
- User ID: 27674040
- @username: testusername
ID 同期の統合
p_id
を用いて data を送信するパートナーは、広告主またはパートナーのユーザー id を X のユーザー id にマッピングするための ID 同期プロセスを実施する必要があります。これにより、広告主は X 上で自社のユーザーセグメントを直接ターゲティングできます。パートナーは、メンバーシップ更新を送信する際に、パラメータ user_identifier_type
の値を TALIST_PARTNER_USER_ID
または TAWEB_PARTNER_USER_ID
のいずれかに設定する必要があります。
- Web のみ: 以下のとおり、広告主のサイトにピクセルを設置することで実施できます。
- List: CRM ページで説明されている任意の方法を使用して実施できます。
ピクセル URL
ベース URL |
https://analytics.x.com/i/adsct |
ピクセルパラメータ
パラメータ | 説明 |
p_id | X によって割り当てられたパートナーの id |
p_user_id | パートナーシステムにおけるユーザーの id |
ID 同期ピクセル:
p_user_id
が abc の例では、生成されるピクセルは次のとおりです。
列番号 | 列名 | 列の型 | 説明 |
1 | Partner ID | string | 「partner id」は、各パートナーを一意に識別するために X がパートナーに付与する ID です。 |
2 | The user’s id in the partner system | string | p_user_id は、パートナーがユーザーを識別するために使用する一意の ID です。これらのオプトアウトユーザーを含むファイルは、TON upload endpoint を使用してアップロードし、アップロードした data のパスを以下の Global Opt Out endpoint に送信してください: PUT accounts/:account_id/custom_audiences/global_opt_out。 |
p_id
を用いて data を送信するパートナーは、user_identifier_type
を TALIST_PARTNER_USER_ID
または TAWEB_PARTNER_USER_ID
に設定することが必須です。
その他の手順は、Real-Time Audience API Integration Guide に記載されている内容と同一です。
カスタムオーディエンスのユーザーデータ
- IDFA - 小文字+ダッシュ区切り。例:
4b61639e-47cc-4056-a16a-c8217e029462
- AdID - 端末上の元の形式が必要。大文字化せず、ダッシュ付き。例:
2f5f5391-3e45-4d02-b645-4575a08f86e
- Android id - 端末上の元の形式が必要。大文字化せず、ダッシュやスペースなし。例:
af3802a465767e36
- 小文字化し、前後のスペースを削除。例:
support@x.com
- 先頭に @ は付けない。小文字化し、前後のスペースを削除。例:
jack
- 標準的な整数。例:
143567
SHA256
を用いてハッシュ化する必要があります。さらに、最終的な出力ハッシュは小文字である必要があります。例: 49e0be2aeccfb51a8dee4c945c8a70a9ac500cf6f5cb08112575f74db9b1470d であり、49E0BE2AECCFB51A8DEE4C945C8A70A9AC500CF6F5CB08112575F74DB9B1470D ではありません
カスタムオーディエンス: Web

p_user_ids
)のリストを送信します。これは、p_user_ids
と X ユーザー ID との対応関係(マッピング)を構築する ID 同期プロセスによって実現されます。このマッピングを用いて、ターゲティングに使用できる X ユーザー ID のリストを生成します。これらのカスタムオーディエンスは、ads.x.com の Custom Audiences Web キャンペーン設定でラベルにより指定された、広告主固有の @handle に紐づいて利用可能になります。
X は、パートナーのタグやサイトに設置できるセキュアピクセルを提供し、ID(p_user_ids
)を X ユーザー ID と照合できるようにします。ID 同期プロセスが完了すると、ターゲティングファイルはパートナーが作成し、HTTPS endpoint を通じて X が定期的に取得できるよう提供します。これらのターゲティングファイルは X によって定期的に取り込まれ、その後 X の UI で利用可能になります。
X Secure Pixel
X セキュアピクセルは次のとおりです:
https://analytics.x.com/i/adsct?p_user_id=xyz&p_id=123
p_user_id
- xyz はパートナーが提供するパートナー側のユーザー ID を表します
p_id
- 123 はパートナーに割り当てられた一意の ID(X により付与)を表します
パートナー HTTPS Endpoint とターゲティングユーザーファイル
パートナーは、ターゲティングファイルを定期的に取り込むために使用できる HTTPS endpoint と認証情報(ユーザー名/パスワード)を X に提供する必要があります。サンプルの HTTPS endpoint は次のとおりです:
- パートナーターゲティングユーザーファイル
- ターゲティングコンバージョンファイル
- 199.16.156.0/22
- 199.59.148.0/22
列番号 | 列名 | 列の型 | 説明 |
---|---|---|---|
1 | partner id | string | 「partner id」は、各パートナーを一意に識別するためにXがパートナーに付与するIDです。 |
2 | advertiser id | string | 「advertiser id」は広告主の@handleです。 |
3 | p_user_id | string | 「p_user_id」は、パートナーがユーザーを識別するために使用する一意のIDです。 |
3 | confidence score | integer | 「confidence score」は任意です。推奨範囲は0〜100です。ユースケースがリターゲティングの場合、スコア「100」は直接リターゲティングされたユーザーを意味します。0〜99のスコアは、類似オーディエンスに対する信頼度のレベルを示します。 |
4 | segment label | string | 「segment label」は任意です。パートナーは、たとえば製品カテゴリの指定に「segment label」を使用できます。この「segment label」を使用することを推奨します。ads.x.comのUIにおけるCustom Audiencesの人間可読名であるためです。 |
Audience API の統合
概要
- 非推奨 TON Upload:
- GET accounts/:account_id/custom_audience_changes
- GET accounts/:account_id/custom_audience_changes/:custom_audience_change_id
- POST accounts/:account_id/custom_audience_changes
- PUT accounts/:account_id/custom_audiences/global_opt_out
- 非推奨 Real Time Audiences:
- POST custom_audience_memberships
- Custom Audience:
- Custom Audience のすべての endpoint において、リクエストおよびレスポンスから
list_type
パラメータが削除されます。このパラメータは以前、Audience のユーザー識別子タイプ(例: email、X User ID など)を識別するために使用されていましたが、現在は同一の Audience に対して複数のユーザー識別子を受け付けられるようになったため、この値は不要になりました。
- Custom Audience のすべての endpoint において、リクエストおよびレスポンスから
- 一般:
- Audience のルックバック期間は、(以前の 30 日から)過去 90 日以内にアクティブだったユーザーに合致するように更新されました
- ターゲット可能とするために必要な一致ユーザーの最小数は、(以前の 500 ユーザーから)100 ユーザーに引き下げられました
前提条件
- X Ads API へのアクセス
- Audience endpoint へのアクセスには allowlist への追加が必要です。以下のフォームに記入し、2018-08-01 より前に初回承認されている場合は新しい X Ads Products and Services Agreement に同意してください
プロセスのステップ | Audience API | (非推奨)TON Upload |
---|---|---|
シェル Audience の作成 | [POST custom_audience endpoint]/x-ads-api/audiences を使用して作成可能 | [POST custom_audience endpoint]/x-ads-api/audiences を使用して作成可能 |
新規ユーザーの追加 | Audience endpoint で operation_type Update を使用 | POST custom_audience_changes endpoint で operation ADD を使用 |
ユーザーの削除 | Audience endpoint で operation_type Delete を使用 | POST custom_audience_changes endpoint で operation REMOVE を使用 |
ユーザーのオプトアウト | Audience endpoint で operation_type Delete と、当該ユーザーが属する対応する custom_audience_id を使用 | Global opt-out endpoint を使用 |
- 操作の合計数: 2500 operations
- 最大ペイロードサイズ: 5,000,000 bytes
新しいカスタムオーディエンスの作成
id
を取得します。これは、オーディエンスを一から作成する場合に必要な手順です。既存のオーディエンスを更新する場合は、次のセクションに進んでください。
オーディエンスにユーザーを追加する
id
と、以下のようなサンプルペイロードを用いて、POST accounts/:account_id/custom_audiences/:custom_audience_id/users を実行します。
POST https://ads-api.x.com/11/accounts/18ce54d4x5t/custom_audiences/1nmth/users
operation_type
に Update
を指定します。新しい Audience インターフェースでは、1人のユーザーに対して複数のユーザーキーを渡せます。JSON オブジェクト配列内の各オブジェクトは、それぞれ1人のユーザーに対応します。上記の例のペイロードでは、リクエストにより 2 人のユーザーが Audience に追加されます。1 人は email
と handle
、もう 1 人は email
と twitter_id
を持ちます。
オーディエンスからユーザーを削除する
operation_type
は Delete
に設定する必要があり、ユーザーはオーディエンスに追加した際に使用されたいずれかのキーで照合されます。たとえば、あるユーザーを email
と twitter_id
でオーディエンスに追加した場合、同じユーザーはこれらのキーのいずれか、すなわち email
または twitter_id
、またはその両方で削除できます。
また、同一のリクエスト内でオーディエンスへのユーザーの追加と削除を同時に行うことも可能です。該当の endpoint は、1 回のリクエストで複数の operation_type
をサポートします。
オプトアウトしたユーザー
DELETE
する必要があります。これを実現する方法はいくつかあります。
- どのユーザーがどの Audiences に属しているかを管理し、各 Audience からこれらのユーザーを個別に削除する。
- Ads アカウントに関連付けられている Audiences から、そのユーザーをすべて削除する。
- 処理に時間を要するスパイク的なキューを避け、全体としてシステムに不要な負荷をかけないため、この endpoint はニアリアルタイムのバッチで呼び出すことを強く推奨します。これにより、ユーザーをより早くキャンペーンのターゲティングに利用できるようになります。
- 成功した API 呼び出しは、リクエストで受信した
user
オブジェクトの数に対応するsuccess_count
とtotal_count
を返します。 - この endpoint はアトミックです。つまり、リクエスト全体が成功するか、いずれかにエラーがある場合はリクエスト全体が失敗します。エラー応答が返された場合は、API 利用者はエラーを修正し、ペイロード全体を含めてリクエストを再試行することを推奨します。
- 失敗時には、再試行時に指数バックオフ方式を使用することを推奨します。例えば、最初の失敗時は直ちに再試行し、2回目の失敗後は1分後、3回連続の失敗後は5分後に再試行する、という具合です。
API リファレンス
キーワードインサイト
end_time
- start_time
)は最大7日間です。
結果は単一の地域(国)でスコープされる点にご注意ください。
リソースURL
https://ads-api.x.com/12/insights/keywords/search
パラメータ
Name | Description |
---|---|
granularity required | start_time と end_time で示される時間範囲に対して返されるデータの粒度を指定します。たとえば HOUR に設定すると、start_time と end_time の間の各時間ごとにデータポイントが返されます。Type: enum Possible values: DAY , HOUR |
keywords required | 検索を絞り込むためのカンマ区切りのキーワード文字列。すべてのキーワードは相互に OR 条件で評価されます。 Note: キーワードは最大10個まで( keywords と negative_keywords の合計)。Type: string Example: developers |
start_time required | 取得対象を start_time と end_time の間の時間枠で収集されたデータに限定します。ISO 8601 で表現します。Type: string Example: 2017-07-10T00:00:00Z |
end_time optional | 取得対象を start_time と end_time の間の時間枠で収集されたデータに限定します。ISO 8601 で表現します。Note: 省略時は現在時刻が使用されます。 Type: string Example: 2017-07-11T00:00:00Z |
location optional | アカウントユーザーの所在地に基づいて結果を絞り込むために、GET targeting_criteria/locations endpoint から取得するターゲティング値。現時点では国レベルのロケーションのみサポートしています。 Type: string Example: 0ce8b9a7b2742f7e |
negative_keywords optional | 除外するキーワードのカンマ区切り文字列。すべてのネガティブキーワードは相互に OR 条件で評価されます。 Note: キーワードは最大10個まで( keywords と negative_keywords の合計)。Type: string Example: rain |
Tailored Audience の権限
GET accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions
指定したテーラードオーディエンスに関連する権限の一部またはすべての詳細を取得します。 Resource URLhttps://ads-api.x.com/5/accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions
Parameters
Name | Description |
---|---|
account_id required | 利用するアカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
tailored_audience_id required | リクエストで操作対象となるテーラードオーディエンスの参照。 Type: string Example: 1nmth |
count optional | リクエストごとに取得を試みるレコード数を指定します。 Type: int Default: 200 Min, Max: 1 , 1000 |
cursor optional | 次ページの結果を取得するためのカーソルを指定します。詳細は Pagination を参照してください。 Type: string Example: 8x7v00oow |
granted_account_ids optional | 識別子のカンマ区切りリストを指定して、レスポンスを対象のアカウントのみに絞り込みます。最大 200 個の ID を指定できます。 Type: string Example: 18ce54aymz3 |
sort_by optional | サポートされる属性で昇順または降順にソートします。詳細は Sorting を参照してください。 Type: string Example: created_at-asc |
tailored_audience_permission_ids optional | 識別子のカンマ区切りリストを指定して、レスポンスを対象のテーラードオーディエンス権限のみに絞り込みます。最大 200 個の ID を指定できます。 Type: string Example: ri |
with_total_count optional | total_count レスポンス属性を含めます。Note: このパラメータと cursor は同時指定できません。Note: total_count を含むリクエストはレートリミットが低くなり、現在は 15 分あたり 200 に設定されています。Type: boolean Default: false Possible values: true , false |
GET https://ads-api.x.com/5/accounts/18ce54d4x5t/tailored_audiences/1nmth/permissions
Example Response
POST accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions
指定したオーディエンスを特定のアカウントと共有できるようにする新しい権限オブジェクトを作成します。 注: テーラードオーディエンスの権限を作成または変更するには、そのオーディエンスが権限を変更しようとしているアカウントの所有である必要があります。特定のオーディエンスのレスポンスに含まれるis_owner
属性を確認することで、テーラードオーディエンスの所有者を確認できます。
注: オーディエンスは、同一ビジネス配下の広告アカウント間でのみ共有できます。もしくは、そのオーディエンスの所有者である広告アカウントが SHARE_AUDIENCE_OUTSIDE_BUSINESS
アカウント機能を有している場合は、ビジネス外のアカウントとも共有できます。
Resource URL
https://ads-api.x.com/5/accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
granted_account_id required | テーラードオーディエンスに対する権限を付与する相手のアカウント。 Type: string Example: 18ce54aymz3 |
permission_level required | granted_account_id がテーラードオーディエンスに対して持つアクセスレベル。Type: enum Possible values: READ_ONLY , READ_WRITE |
tailored_audience_id required | リクエストで操作対象となるテーラードオーディエンスの参照。 Type: string Example: 2906h |
POST https://ads-api.x.com/5/accounts/18ce54d4x5t/tailored_audiences/2906h/permissions?granted_account_id=18ce54aymz3&permission_level=READ_ONLY
Example Response
DELETE accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions/:tailored_audience_permission_id
指定した Tailored Audience の共有権限を取り消します。 Note: Tailored Audience の権限を作成または変更するには、操作を行うアカウントが当該オーディエンスの所有者である必要があります。特定のオーディエンスに対するレスポンスのis_owner
属性を確認することで、Tailored Audience の所有権を確認できます。
取り消し後は、付与先のアカウント(granted_account_id
)が今後のキャンペーンでそのオーディエンスをターゲティングできないことを保証します。既存のキャンペーンは共有オーディエンスを用いて引き続き実行されます。キャンペーンが停止されたり、オーディエンスがキャンペーンから削除されたりすることはありません。オーディエンス共有権限の取り消し後は、このキャンペーンをコピーすることはできません。
Resource URL
https://ads-api.x.com/5/accounts/:account_id/tailored_audiences/:tailored_audience_id/permissions/:tailored_audience_permission_id
Parameters
Name | Description |
---|---|
account_id required | 対象となるアカウントの識別子。リソースのパス内に現れ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定されたアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
tailored_audience_id required | リクエストで操作対象の Tailored Audience を指す参照。 Type: string Example: 1nmth |
tailored_audience_permission_id required | リクエストで操作対象の Tailored Audience の権限を指す参照。 Type: string Example: ri |
DELETE https://ads-api.x.com/5/accounts/18ce54d4x5t/tailored_audiences/1nmth/permissions/ri
Example Response
対象オーディエンス
GET accounts/:account_id/custom_audiences/:custom_audience_id/targeted
指定したcustom_audience_id
をターゲットとしている、アクティブなものまたはすべてのラインアイテムおよびキャンペーンの一覧を取得します
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパスに含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは、認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
custom_audience_id required | リクエストで操作対象のカスタムオーディエンスを参照します。 Type: string Example: 2906h |
with_active optional | false の場合、servable=false のステータスを持つラインアイテムも含めます。Type: boolean Default: true Possible values: true , false |
cursor optional | 結果の次ページを取得するためのカーソルを指定します。詳細は Pagination を参照してください。 Type: string Example: 8x7v00oow |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h/targeted
Example Response
カスタムオーディエンスのユーザー
POST accounts/:account_id/custom_audiences/:custom_audience_id/users
この endpoint は、パートナーが指定されたcustom_audience_id
に対してユーザーの追加、更新、削除を行えるようにします。また、ユーザーごとに複数のユーザー識別子タイプも受け付けます。
リクエストの users
フィールドで提供されるすべての data は、partner_user_id
を除き、SHA256
でハッシュ化し、正規化されている必要があります。
バッチリクエスト
- 現在の最大バッチサイズは、
この endpoint に対して
は2500
です。バッチサイズは、リクエストあたりの操作数(Update
/Delete
)によって決まります。たとえば、1つの配列内に 2500 を超える操作オブジェクト({"operation_type": "Update/Delete", [..] }
)があるとエラーになります。 - この endpoint が受け付けるリクエストの POST ボディの最大サイズは
5,000,000
バイトです。 - この endpoint のレートリミットは、1 分間のウィンドウあたり 1500 です。
- すべてのパラメータはリクエストボディで送信され、
Content-Type
はapplication/json
が必須です。 - バッチリクエストはグループ単位で成功または失敗が判定され、エラー・成功いずれの場合も API レスポンスで初期リクエストの項目順序が保持されます。
success_count
と total_count
の 2 つの fields が含まれます。これらの値は常に等しくなければならず、バックエンドで処理されたリクエスト内のレコード数を示します。リクエストボディで送信されたレコード数が success_count
と total_count
に等しくない場合はエラーとして扱い、再試行が必要です。
バッチエラー
- リクエストレベルのエラー(例: 最大バッチサイズ超過)は、レスポンスの
errors
オブジェクトに含まれます。 - アイテムレベルのエラー(例: 必須パラメータの欠落)は、レスポンスの
operation_errors
オブジェクトに含まれます。 operation_errors
におけるエラーのインデックスは、入力アイテム内のインデックスを指し、対応するエラーメッセージが付与されます。
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/users
Name | Description |
---|---|
operation_type required | users グループ単位で実行する操作の種別。Type: enum Possible values: Update , Delete |
params required | users 配列、effective_at 、expires_at の各タイムスタンプを含む JSON オブジェクト。Type: JSON |
users required | 各ユーザーの全パラメータを含む JSON オブジェクトの配列。 Type: JSON |
effective_at optional | カスタムオーディエンスの関連付けを有効化する UTC 時刻。ISO 8601 で表現。既定値は現在日時。 Type: string Example: 2017-07-05T07:00:00Z |
expires_at optional | カスタムオーディエンスの関連付けの有効期限となる UTC 時刻。指定時刻は effective_at の値より後である必要があります。ISO 8601 で表現。既定値はリクエストのタイムスタンプから 13 か月後。Type: string Example: 2017-07-05T07:00:00Z |
users
オブジェクトのマルチキー方式に基づき、このオブジェクトの各要素は以下のとおりです:
Name | Description |
---|---|
email optional | ユーザーのメールアドレス。 Type: Array[String] |
device_id optional | IDFA/AdID/Android ID Type: Array[String] |
handle optional | ユーザーの @handle。 Type: Array[String] |
twitter_id optional | ユーザーの X ID。 Type: Array[String] |
phone_number optional | ユーザーの電話番号。 Type: Array[String] |
partner_user_id optional | パートナーのシステムにおけるユーザーの ID。 Type: Array[String] |
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/1nmth/users
カスタムオーディエンスの許可
GET accounts/:account_id/custom_audiences/:custom_audience_id/permissions
指定したカスタムオーディエンスに関連付けられた権限の一部またはすべての詳細を取得します。 Resource URLhttps://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/permissions
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで、一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
custom_audience_id required | リクエストで操作するカスタムオーディエンスの参照。 Type: string Example: 1nmth |
count optional | 個々のリクエストで取得を試みるレコード数を指定します。 Type: int Default: 200 Min, Max: 1 , 1000 |
cursor optional | 次ページの結果を取得するためのカーソルを指定します。詳細は Pagination を参照してください。 Type: string Example: 8x7v00oow |
granted_account_ids optional | 識別子のカンマ区切りリストを指定して、応答を目的のアカウントのみに絞り込みます。最大 200 個の ID を指定できます。 Type: string Example: 18ce54aymz3 |
sort_by optional | サポートされている属性で昇順または降順に並べ替えます。詳細は Sorting を参照してください。 Type: string Example: created_at-asc |
custom_audience_permission_ids optional | 識別子のカンマ区切りリストを指定して、応答を目的のカスタムオーディエンス権限のみに絞り込みます。最大 200 個の ID を指定できます。 Type: string Example: ri |
with_total_count optional | 応答属性 total_count を含めます。Note: このパラメータと cursor は同時指定できません。Note: total_count を含むリクエストはレートリミットが低く、現在は 15 分あたり 200 に設定されています。Type: boolean Default: false Possible values: true , false |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/1nmth/permissions
Example Response
POST accounts/:account_id/custom_audiences/:custom_audience_id/permissions
指定したオーディエンスを特定のアカウントと共有できるようにする新しい権限オブジェクトを作成します。 注: カスタムオーディエンスの権限を作成または変更するには、権限を変更しようとしているアカウントが該当オーディエンスを所有している必要があります。特定のオーディエンスのレスポンスに含まれるis_owner
属性を確認することで、カスタムオーディエンスの所有者かどうかを確認できます。
注: オーディエンスは、同一のビジネス配下の広告アカウント間でのみ共有できます。あるいは、そのオーディエンスを所有する広告アカウントが SHARE_AUDIENCE_OUTSIDE_BUSINESS
アカウント機能を有している場合にのみ、共有できます。
Resource URL
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/permissions
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパスに含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは、認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
granted_account_id required | カスタムオーディエンスの権限を付与したい相手のアカウント。 Type: string Example: 18ce54aymz3 |
permission_level required | granted_account_id がカスタムオーディエンスに対して持つべきアクセス権の種類。Type: enum Possible values: READ_ONLY , READ_WRITE |
custom_audience_id required | リクエストで操作対象となるカスタムオーディエンスの参照。 Type: string Example: 2906h |
DELETE accounts/:account_id/custom_audiences/:custom_audience_id/permissions/:custom_audience_permission_id
指定した Custom Audience の共有権限を取り消します。 Note: Custom Audience の権限を作成または変更するには、対象のオーディエンスが権限を変更しようとしているアカウントの所有である必要があります。特定のオーディエンスのレスポンスに含まれるis_owner
属性を確認することで、Custom Audience の所有者を確認できます。
取り消し後は、付与先のアカウント(granted_account_id
)が今後のキャンペーンでそのオーディエンスをターゲティングできないことを保証します。既存のキャンペーンは共有オーディエンスを用いて引き続き実行されます。キャンペーンは停止されず、オーディエンスもキャンペーンから削除されません。オーディエンス共有権限が取り消された後、このキャンペーンをコピーすることはできません。
Resource URL
https://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id/permissions/:custom_audience_permission_id
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで一般に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
custom_audience_id required | リクエストで操作対象となる Custom Audience への参照。 Type: string Example: 1nmth |
custom_audience_permission_id required | リクエストで操作対象となる Custom Audience 権限への参照。 Type: string Example: ri |
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/1nmth/permissions/ri
Example Response
カスタムオーディエンス
GET accounts/:account_id/custom_audiences
現在のアカウントに関連付けられている一部またはすべての Custom Audiences の詳細を取得します。 Resource URLhttps://ads-api.x.com/12/accounts/:account_id/custom_audiences
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
count optional | リクエストごとに取得を試みるレコード数を指定します。 Type: int Default: 200 Min, Max: 1 , 1000 |
cursor optional | 次ページの結果を取得するためのカーソルを指定します。詳細は Pagination を参照してください。 Type: string Example: 8x7v00oow |
permission_scope optional | 自身が所有する List か、共有されている List にレスポンスを絞り込めます。デフォルトでは、このパラメータを指定しない場合、自身が所有するオーディエンスのみが表示されます。 Type: enum Default: OWNER Possible values: OWNER , SHARED |
q optional | name でリソースを絞り込む任意の query。Note: 大文字小文字を区別しない前方一致でマッチします。 Type: string Min, Max length: 1 , 255 |
sort_by optional | サポートされている属性で昇順または降順にソートします。詳細は Sorting を参照してください。 Type: string Example: created_at-asc |
custom_audience_ids optional | 識別子のカンマ区切りリストを指定して、目的の Custom Audiences のみにレスポンスを絞り込みます。最大 200 個の ID を指定できます。 Type: string Example: 1nmth |
with_deleted optional | 削除済みの結果をレスポンスに含めます。 Type: boolean Default: false Possible values: true , false |
with_total_count optional | レスポンスに total_count 属性を含めます。Note: このパラメータと cursor は同時に使用できません。Note: total_count を含むリクエストはレートリミットが低く、現在は 15 分あたり 200 に設定されています。Type: boolean Default: false Possible values: true , false |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences?custom_audience_ids=1nmth
Example Response
GET accounts/:account_id/custom_audiences/:custom_audience_id
現在のアカウントに関連付けられている特定の Custom Audiences を取得します。 Resource URLhttps://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id
Parameters
Name | Description |
---|---|
account_id required | 利用するアカウントの識別子。リソースのパスに含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
custom_audience_id required | リクエストで操作対象とする custom audience への参照。 Type: string Example: 2906h |
with_deleted optional | 削除済みの結果をレスポンスに含めます。 Type: boolean Default: false Possible values: true , false |
GET https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h
Example Response
POST accounts/:account_id/custom_audiences
現在のアカウントに関連付けられた新規プレースホルダーのCustom Audienceを作成します。 Resource URLhttps://ads-api.x.com/12/accounts/:account_id/custom_audiences
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントを識別する識別子。リソースのパス内に含まれ、GET accounts を除くすべてのAdvertiser APIリクエストで一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
name required | このオーディエンスの表示名。一意の名前を指定する必要があります。満たさない場合はエラーになります。 Type: string Example: ads api users |
description optional | このオーディエンスの説明。 Type: string Example: Collection of all users of the Ads API |
POST https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences?name=developers
Example Response
PUT accounts/:account_id/custom_audiences/:custom_audience_id
現在のアカウントに関連付けられている特定のCustom Audienceを更新します。 Resource URLhttps://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id
Parameters
Name | Description |
---|---|
account_id required | 対象のアカウントを示す識別子。リソースのパスに含まれ、GET accounts を除くすべてのAdvertiser APIリクエストで一般的に必須です。指定したアカウントは、認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
custom_audience_id required | リクエストで操作するCustom Audienceを参照します。 Type: string Example: 2906h |
name optional | このオーディエンスの表示名。一意の名前を使用する必要があります。満たさない場合はエラーになります。 Type: string Example: ads api users |
description optional | このオーディエンスの説明。 Type: string Example: Collection of all users of the Ads API |
PUT https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h?name=developers_changed
Example Response
POST batch/accounts/:account_id/custom_audiences
Custom Audiences を一括作成できます。オーディエンスの詳細は Custom Audiences Overview ページを参照してください。 注: このバッチ endpoint は現在 クローズドベータで、一部の選定された広告主のみ利用可能です。ベータ期間中は、モバイルのカスタムオーディエンスに基づく Flexible Audiences のみ作成できます。 バッチリクエスト- 現在の最大バッチサイズは 10 です。
- すべてのパラメータはリクエストボディで送信され、
Content-Type
はapplication/json
が必須です。 - バッチリクエストはグループとして一括で成功または失敗し、エラー/成功いずれの場合でも、API レスポンスでは初回リクエストのアイテム順が保持されます。
- リクエストレベルのエラー(例: 最大バッチサイズ超過)は、レスポンスの
errors
オブジェクトに表示されます。 - アイテムレベルのエラー(例: 必須パラメータの欠落)は、レスポンスの
operation_errors
オブジェクトに表示されます。
- Flexible Audiences は作成後に変更できません(不変)。
- Custom Audiences はブールロジックの組み合わせによる木構造で渡され、Flexible Audiences を作成します。
- Flexible Audience の作成に使用できる Custom Audiences のリーフノードは最大 10 個です。
https://ads-api.x.com/12/batch/accounts/:account_id/custom_audiences
Parameters
Name | Description |
---|---|
account_id required | レバレッジドアカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで一般的に必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
audience_type required | 作成するオーディエンスの種類。 Type: enum Possible values: FLEXIBLE , MOBILE_AUDIENCE |
child_segments required | ターゲットにしたい Custom Audience のメンバーのサブセットを定義するオブジェクトを要素とする配列。各オブジェクトには custom_audience_id 、frequency 、frequency_comparator 、lookback_window 、negate 、および場合によっては追加の child_segments を含める必要があります。Type: array |
name required | オーディエンスの表示名。一意の名前値を使用してください。そうしない場合はエラーになります。 Type: string Example: my_flexible_audience_name |
operation_type required | 各アイテムに対して実行される操作タイプ。 Type: enum Possible values: Create , Update , Delete |
boolean_operator sometimes required | 親(包含)オブジェクト内における子セグメント間の論理関係。親オブジェクトで child_segments が空でない場合に必須です。 Type: enum Possible values: AND , OR |
lookback_window sometimes required | ユーザーが特定のアクションを実行し、指定したカスタムオーディエンスの条件を満たした日数の範囲を指定する整数値。 Type: int Possible values: 1 , 7 , 14 , 30 |
segments sometimes required | ターゲットにしたい Custom Audience のメンバーのサブセットを定義する、boolean_operator と child_segments を含むオブジェクト。Type: object |
custom_audience_id sometimes required | 子セグメントとして使用するカスタムオーディエンスの id。 Type: string Example: tyfo |
frequency optional | ユーザーが特定のアクションを実行し、指定したカスタムオーディエンスの条件を満たした頻度(lookback window 内)を指定する整数値。 Type: int Default value: 1 |
frequency_comparator optional | リクエストで渡された frequency に対する比較演算子。Note: 以下の値において、 GTE は以上、LT は未満、などを表します。Type: string Possible values: NUM_GTE , NUM_GT , NUM_EQ , NUM_LTE , NUM_LT Default value: NUM_GTE |
negate optional | セグメントを否定し、組み合わせから除外します。 Type: boolean Default value: true Possible values: true , false |
POST https://ads-api.x.com/12/batch/accounts/18ce54d4x5t/custom_audiences
DELETE accounts/:account_id/custom_audiences/:custom_audience_id
現在のアカウントに属する指定の Custom Audience を削除します。 Resource URLhttps://ads-api.x.com/12/accounts/:account_id/custom_audiences/:custom_audience_id
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで原則必須のパラメータです。指定されたアカウントは認証済みユーザーに紐づいている必要があります。 Type: string Example: 18ce54d4x5t |
custom_audience_id required | リクエストで操作対象となる Custom Audience の参照。 Type: string Example: 2906h |
DELETE https://ads-api.x.com/12/accounts/18ce54d4x5t/custom_audiences/2906h
Example Response
配信禁止のList
GET accounts/:account_id/do_not_reach_lists
現在のアカウントに関連付けられている Do Not Reach List の一部またはすべての詳細を取得します。 Note:account_id
が保持できる Do Not Reach List は最大で 1 つです
Resource URL
https://ads-api.x.com/12/accounts/:account_id/do_not_reach_lists
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで通常は必須のパラメータです。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
with_deleted optional | 削除済みの結果をレスポンスに含めます。 Type: boolean Default: false Possible values: true , false |
GET https://ads-api.x.com/12/accounts/18ce54bgxky/do_not_reach_lists
Example Response
POST accounts/:account_id/do_not_reach_lists
現在のアカウントに紐づく新しい Do Not Reach List を作成します。 注意:account_id
ごとに作成できる Do Not Reach List は最大で1つです。
Resource URL
https://ads-api.x.com/12/accounts/:account_id/do_not_reach_lists
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで基本的に必須のパラメータです。指定したアカウントは認証済みユーザーに紐づいている必要があります。 Type: string Example: 18ce54d4x5t |
description optional | このオーディエンスの説明。 Type: string Example: A list of users to exclude |
POST https://ads-api.x.com/12/accounts/18ce54bgxky/do_not_reach_lists?description=A list of users to exclude
Example Response
POST batch/accounts/:account_id/do_not_reach_lists/:do_not_reach_list_id/users
このendpointは、指定のdo_not_reach_list_id
にユーザーを追加・更新・削除できます。このendpointは、有効なユーザー識別子としてメールアドレスのみを受け付けます。
リクエストの emails
フィールドで提供されるすべてのデータは、SHA256
でハッシュ化し、正規化する必要があります。
注意事項
account_id
は最大で1つの Do Not Reach List しか持てません- このリストに追加されるユーザーは、現在のタイムスタンプから13か月未満に設定された
expires_at
タイムスタンプを必ず持つ必要があります - Do Not Reach List API は
effective_at
タイムスタンプを受け付けず、デフォルトで現在のタイムスタンプが使用されます - Do Not Reach List は、アカウント内の一部またはすべてのカスタムオーディエンスからユーザーを削除しませんが、当該アカウントで配信されるすべてのキャンペーンに対して除外ターゲティングとして機能します
- 現在の最大バッチサイズは「このendpointでは」
2500
です。バッチサイズは、リクエストあたりの操作数(Update
/Delete
)によって決まります。たとえば、1つの配列内に2500を超える操作オブジェクト({"operation_type": "Update/Delete", [..] }
)が含まれているとエラーになります。 - このendpointが受け付け可能なリクエストPOST本文の最大サイズは
5,000,000
バイトです。 - このendpointのレートリミットは1分あたり1500です
- すべてのパラメータはリクエスト本文で送信され、
application/json
のContent-Type
が必要です。 - バッチリクエストはグループとして一括で成功または失敗し、エラー・成功いずれのAPIレスポンスでも、最初のリクエストの項目順序が保持されます。
success_count
と total_count
の2つのフィールドが含まれます。これらの値は常に等しくある必要があり、バックエンドで処理されたリクエスト内のレコード数を表します。リクエスト本文で送信されたレコード数が success_count
および total_count
と等しくない状況はエラーとして扱い、再試行が必要です。
バッチエラー
- リクエストレベルのエラー(例: 最大バッチサイズ超過)は、レスポンスの
errors
オブジェクト内に表示されます。 - アイテムレベルのエラー(例: 必須パラメータの欠落)は、レスポンスの
operation_errors
オブジェクト内に表示されます。 operation_errors
におけるエラーのインデックスは、入力アイテム内のインデックスを参照し、対応するエラーメッセージが含まれます
https://ads-api.x.com/12/batch/accounts/:account_id/do_not_reach_lists/:do_not_reach_list_id/users
Parameters
Name | Description |
---|---|
account_id required | 対象アカウントの識別子。リソースのパス内に含まれ、GET accounts を除くすべての Advertiser API リクエストで原則必須です。指定したアカウントは認証済みユーザーに関連付けられている必要があります。 Type: string Example: 18ce54d4x5t |
do_not_reach_list_id required | リクエストで操作対象としている Do Not Reach List への参照。 Type: string Example: 2906h |
operation_type required | users グループ単位で実行される操作タイプ。Type: enum Possible values: Update , Delete |
params required | emails 配列と expires_at タイムスタンプを含む JSON オブジェクト。Type: JSON |
users required | 個々のユーザーのすべてのパラメータを含む JSON オブジェクトの配列。 Type: JSON |
expires_at optional | ユーザー関連付けが失効するUTC時刻。指定時刻は現在のタイムスタンプより後である必要があります。ISO 8601 で表記します。デフォルトは現在のタイムスタンプから13か月後です。 Type: string Example: 2017-07-05T07:00:00Z |
users
オブジェクトのマルチキー方式に基づき、このオブジェクトの各要素を以下に記載します。
Name | Description |
---|---|
email optional | ユーザーのメールアドレス。 Type: Array[String] |
phone_number optional | ユーザーの電話番号。 Type: Array[String] |
DELETE accounts/:account_id/do_not_reach_lists/:do_not_reach_list_id
現在のアカウントに属する指定の Do Not Reach List を削除します。 リソース URLhttps://ads-api.x.com/12/accounts/:account_id/do_not_reach_lists/:do_not_reach_list_id
パラメータ
なし
リクエスト例
DELETE https://ads-api.x.com/12/accounts/18ce54bgxky/do_not_reach_lists/4ofrp
レスポンス例