Deal Line Item API のセットアップ ガイド
取引を対象とする Deal Line Item の API 実装を設定するには、さまざまな API オブジェクトに対してさまざまなプロパティを構成する必要があります。 このガイドでは、API を使用して取引明細を作成および構成するプロセスについて説明します。
概要
取引明細は、ネットワーククライアントとパブリッシャークライアントが、パッケージ化されたユーザーフレンドリーな購入ツールを提供することで、バイヤーをより適切にサポートできる強力な機能です。
通常、取引明細を設定するには、対応する API オブジェクトにアクセスまたは作成するために、次の API サービス エンドポイントに要求を行う必要があります。
API エンドポイント | API オブジェクト | 詳細なリファレンス |
---|---|---|
https://api.appnexus.com/advertiser |
広告 主 | 広告主サービス |
https://api.appnexus.com/insertion-order |
insertion-order | 挿入注文サービス |
https://api.appnexus.com/deal |
対処する | Deal Service |
https://api.appnexus.com/profile |
profile | Profile Service |
https://api.appnexus.com/line-item |
line-item (ALI) | 明細 - ALI サービス |
このガイドでは、すべての要求に cURL の例を使用します。 他の API 要求ツール ( Postman など) を使用できますが、それに応じて例を調整する必要があります。
前提条件
このセットアップを開始する前に、「 API の概要」を必ずお読みください。 テスト環境、使用制約、API セマンティクス (コマンドの実行、フィルター処理、並べ替えなど)、ベスト プラクティスに関する情報を提供します。
操作の順序
API オブジェクトは、多くの場合、他の API オブジェクトに依存しており、取引明細を作成するときにオブジェクトの作成またはアクセスに従う必要がある順序があります。 たとえば、次の API オブジェクトの ID を指定する必要があります。
- advertiser
- insertion-order
- deal
-
profile
.
これらのオブジェクトの ID を取得するには、ID を作成するか、既にアクセスする必要があります。 このガイドの手順は、取引明細を作成するために必要な一般的な操作順序に従います。
ベスト プラクティス
API を操作するときに従うベスト プラクティスの一般的な一覧については、「 API のベスト プラクティス」を参照してください。 取引明細の設定に固有のベスト プラクティスを次に示します。
- 明細が完全に構成され、テストの準備が整うまで、取引明細の
state
フィールドを"inactive"
に設定します。 - 作成するオブジェクトの ID をメモします。 作成したオブジェクトの ID は、要求の応答本文で返されます。 多くの場合、これらの ID は後で必要になるため、返されたときに ID をコピーすると、取得するために行う必要がある追加の
GET
要求の数を減らすことができます。
セットアップ手順
次の手順では、一般的な構成で取引明細を設定するプロセスについて説明します。
- 手順 1 - 承認トークンを取得する
- 手順 2 - 広告主を作成またはアクセスする
- 手順 3 - 挿入順序を作成またはアクセスする
- 手順 4 - 取引を作成する
- 手順 5 - 取引明細プロファイルを作成する
- 手順 6 - 取引明細を作成する
認証
手順 1 - 承認トークンを取得する
まず、承認トークンを取得する必要があります。 その後、後続のすべての要求にこの承認トークンを含める必要があります (詳細については、「 認証サービス 」を参照してください)。 承認トークンを取得するには、次の操作を行います。
ユーザー名とパスワードを含む JSON ファイルを作成します。
{ "auth": { "username" : "USERNAME", "password" : "PASSWORD" } }
要求本文にこの JSON ファイルを使用して、
/auth
エンドポイントにPOST
要求を行います (詳細については、「認証サービス」を参照してください)。 以下の cURL 要求では、返される承認トークンは "cookies
" ファイルに格納されます。curl -c cookies -X POST -d @authentication.json 'https://api.appnexus.com/auth'
要求の応答本文を確認します (後述の 応答例 を参照)。 要求が成功した場合は、"
OK
" の "status
" が取得され、[token
] フィールドに認証トークンの値が入力されます。
応答の例{ "response" : { "token" : "authn:225692:2d787d1838283:lax1", "status" : "OK" } }
広告 主
手順 2 - 広告主を作成またはアクセスする
取引の広告申込情報を作成する広告主を作成またはアクセスする必要があります。 取引広告申込情報の場合、広告主は拡張広告申込情報と同じ方法で設定されます。
広告主の JSON フィールド (必須および便利な省略可能なフィールド)
フィールド | 種類 | 必須またはオプション | 説明 |
---|---|---|---|
name |
string | 必須 | 広告主の名前 |
timezone |
列挙 | 省略可能 | 広告主のタイムゾーン。 詳細と受け入れられる値については、「 API タイムゾーン 」を参照してください。 |
use_insertion_orders |
ブール値 | 必須 | 取引明細を作成するには、このフィールドを true に設定する必要があります。 |
使用する広告主がまだない場合は、次の手順を実行して広告主を作成します (詳細については、「 広告主サービス 」を参照してください)。
広告主の JSON を作成する:
$ cat advertiser.json { "advertiser": { "name": "Deal Line Item Example Advertiser", "timezone": "US/Pacific" } }
この広告主の JSON と適切な
member_id
を使用して、https://api.appnexus.com/advertiser endpoint
にPOST
要求を行います。$ curl -b cookies -c cookies -X POST -d @advertiser.json 'https://api.appnexus.com/advertiser?member_id=2378'
要求の応答本文を確認します。 要求が成功した場合は、"
OK
" の "status
" が表示され、行った更新が表示されます。応答本文の広告主 ID をメモして、手順 6 - 取引の広告申込情報を作成するで取引明細を作成するときに使用できるようにします。
挿入順序
手順 3 - 挿入順序を作成またはアクセスする
取引明細を作成するには、挿入注文を作成またはアクセスする必要があります。 取引明細にはシームレスな挿入順序が必要です (以下の必須フィールドを参照)。
シームレスな挿入順序の JSON フィールド (必須および便利な省略可能なフィールド)
フィールド | 種類 | 必須またはオプション | 説明 |
---|---|---|---|
name |
string | 必須 | 広告主の名前 |
budget_intervals |
オブジェクトの配列 | 必須 | API を介して作成された挿入順序をシームレスにするには、 budget_intervals フィールドを使用する必要があります。 |
budget_type |
列挙 | 省略可能 | 予算の種類は、IO の下のすべての取引に変換されます。 たとえば、インプレッション予算タイプ IO を設定した場合、その IO の下に収益予算を含む取引広告申込情報を配置することはできません。 |
daily_budget |
double | 省略可能 |
budget_intervals 内のフィールドを使用して、Revenue budget_type の挿入オーダー レベルで日次予算を設定できます。 |
lifetime_budget |
double | 省略可能 |
budget_intervals 内のフィールドを使用して、Revenue budget_type の挿入オーダー レベルで有効期間予算を設定できます。 |
daily_budget_imps |
int | 省略可能 |
budget_intervals 内のフィールドを使用して、インプレッション budget_type の IO レベルで 1 日の予算を設定できます。 |
lifetime_budget_imps |
int | 省略可能 |
budget_intervals 内のフィールドを使用して、インプレッション budget_type の IO レベルで有効期間予算を設定できます。 |
使用する挿入順序がまだない場合は、次の手順を実行して挿入順序を作成します (詳細については、「 挿入順序サービス 」を参照してください)。
挿入順序 JSON を作成します (次の 2 つの例を示します)。
JSON の例: 終了日なし、予算なし
$ cat insertion-order-noenddate.json { "insertion-order": { "name": "Deal Line Item Example IO", "budget_intervals": [{ "start_date": "2019-10-10 00:00:00", "end_date": null, "daily_budget": null, "daily_budget_imps": null, "enable_pacing": true, "lifetime_budget": null, "lifetime_budget_imps": null, "lifetime_pacing": false }], "budget_type": "impression" } }
JSON の例: フライト、インプレッションの予算
$ cat insertion-order-flights.json { "insertion-order": { "name": "Deal Line Item Example IO", "budget_intervals": [ { "start_date": "2019-10-10 00:00:00", "end_date": "2019-10-12 23:59:59", "daily_budget": null, "daily_budget_imps": 10, "enable_pacing": true, "lifetime_budget": null, "lifetime_budget_imps": 980, "lifetime_pacing": false }, { "start_date": "2019-10-13 00:00:00", "end_date": "2019-10-18 23:59:59", "daily_budget": null, "daily_budget_imps": 10, "enable_pacing": true, "lifetime_budget": null, "lifetime_budget_imps": 100, "lifetime_pacing": false } "budget_type": "impression" ] } }
この挿入順序 JSON と適切な
advertiser_id
とmember_id
を使用して、https://api.appnexus.com/insertion-order
エンドポイントにPOST
要求を行います。要求の例: 終了日なし、予算なし
$ curl -b cookies -c cookies -X POST -d @insertion-order-noenddate.json 'https://api.appnexus.com/insertion-order?advertiser_id=2605036&member_id=2378'
要求の例: フライト、インプレッションの予算
$ curl -b cookies -c cookies -X POST -d @insertion-order-flights.json 'https://api.appnexus.com/insertion-order?advertiser_id=2605036&member_id=2378'
要求の応答本文を確認します。 要求が成功した場合は、"
OK
" の "status
" が表示され、行った更新が表示されます。手順 6 - 取引明細を作成するで取引明細を作成するときに使用できるように、応答本文の挿入順序 ID をメモします。
対処する
手順 4 - 取引を作成する
取引明細に関連付ける取引を作成する必要があります。
取引の JSON フィールド
フィールド | 種類 | 必須またはオプション | 説明 |
---|---|---|---|
name |
string | 必須 | 取引の名前 注: 購入者には、この名前が表示されます。 |
buyer |
object | 必須 | 購入入札者と、この取引をターゲットにできるメンバー。 取引では、 buyer フィールドまたは buyer_seats フィールドのみが使用され、両方は使用されません。 詳細については、「Deal Service」の「"Buyer" 」セクションを参照してください。 |
buyer_seats |
object | 必須 | この取引をターゲットにできる買い入札者とシート。 取引では、両方ではなく、買い手フィールドまたは buyer_seats フィールドのみが使用されます。 詳細については、取引サービスの「購入者シート」セクションを参照してください。 |
version |
int | 必須 | 取引を取引明細に関連付けるには、このフィールドを "2" に設定する必要があります。 |
auction_type |
object | 省略可能 | 取引のオークションの種類 (Standard/Fixed/Market)。 この値は、( revenue_type /min_revenue_value /revenue_value を介して) 取引明細に設定されているものと一致する必要があります。注: このフィールドは作成時に設定する必要がありますが、取引明細では使用されません。 明細が更新され、オークションで更新された場合、更新されません。行項目の値のみが考慮されます。 |
便利な省略可能な JSON フィールド
許可されたクリエイティブの JSON フィールド
ブランド ( 「ブランド サービス」を参照)
フィールド | 種類 | 説明 |
---|---|---|
brand_restrict |
ブール値 |
true :取引はリストされたブランドにのみ制限されていますfalse : その他のブランドのサービスが許可されています |
brands |
オブジェクトの配列 | 対象となるブランドの配列 |
id |
int |
brands 内のフィールド: 取引の対象となるブランドの ID |
name |
string |
brands 内のフィールド: 取引の対象となるブランドの名前 |
override |
ブール値 |
brands 内のフィールド: 広告品質プロファイルでブロックされた可能性がある場合でも、特定のブランドが取引に対してサービスを提供できるようにするには、true に設定します。 |
ブランドの例
"brand_restrict": true,
"brands": [
{
"id": 2,
"name": "1800Flowers",
"override": true
},
{
"id": 4,
"name": "Acura",
"override": false
}
]
言語 ( 言語サービスを参照)
フィールド | 種類 | 説明 |
---|---|---|
language_restrict |
ブール値 |
-
true : 取引は、一覧に記載されている言語のみに制限されます- false : その他の言語の提供が許可されています |
languages |
オブジェクトの配列 | 対象言語の配列 |
id |
int |
languages 内のフィールド: 取引の対象となる言語の ID |
name |
string |
languages 内のフィールド: 取引の対象となる言語の名前 |
override |
ブール値 |
languages 内のフィールド: true に設定すると、広告品質プロファイルで取引がブロックされた場合でも、特定の言語で取引を行うことができます。 |
言語の例
"language_restrict": true,
"languages": [
{
"id": 1,
"name": "English",
"override": false
},
{
"id": 2,
"name": "Chinese",
"override": true
}
]
信頼レベル
フィールド | 種類 | 説明 |
---|---|---|
audit_status_option |
string | 取引でクリエイティブを処理する方法を指定します。 - max_trust : 最大 - この取引には広告プロファイルの制限は適用されません。- provisional : 保留中のクリエイティブを許可する - "pending" 監査ステータスのクリエイティブが配信されます。 これらのクリエイティブが監査されると、既存の広告品質設定が使用されます。- none : 既定値 - クリエイティブは既存の広告品質設定を使用します。 |
信頼レベルの例
"audit_status_option": "max_trust"
クリエイティブ カテゴリ
フィールド | 種類 | 説明 |
---|---|---|
category_restrict |
ブール値 | 取引が categories オブジェクトにリストされているカテゴリのみに制限されるかどうかを指定します ( 「Deal Service」を参照)。 - true : 取引は、一覧表示されたカテゴリにのみ制限されます。- false : その他のカテゴリも提供できます。 |
categories |
オブジェクトの配列 | 取引の対象となるクリエイティブを表すカテゴリ。 |
id |
int |
categories 内のフィールド: 取引の対象となるカテゴリの ID。 |
name |
string |
categories 内のフィールド: 取引の対象となるカテゴリの名前。 |
override |
ブール値 |
categories 内のフィールド: true に設定すると、広告品質プロファイルによってブロックされた場合でも、カテゴリが取引に対して配信できるようになります。 |
クリエイティブ カテゴリの例
"categories": [
{
"id": 1,
"name": "Airlines",
"override": false
},
{
"id": 2,
"name": "Apparel",
"override": true
}
],
"category_restrict": true
特定のクリエイティブ
フィールド | 種類 | 説明 |
---|---|---|
creatives |
オブジェクトの配列 | 取引に対して特に承認または禁止されているクリエイティブの一覧。 このリストは、他の広告品質設定よりも優先されます。 |
id |
int |
creatives 内のフィールド: 取引が承認または禁止されているクリエイティブの ID。 |
status |
string | [ creatives 内のフィールド]: この取引に対するこのクリエイティブの処理方法を指定します。 - approved : このクリエイティブは、他の広告品質設定やオーバーライドに関係なく、常にこの取引で配信できます。- banned : このクリエイティブは、他の広告品質設定やオーバーライドに関係なく、この取引で配信することはできません。 |
特定のクリエイティブの例
"creatives": [
{
"id": 161501729,
"status": "banned"
},
{
"id": 161501882,
"status": "approved"
}
]
メディアの種類 ( メディア サブタイプ サービス と メディア タイプ サービスを参照)
フィールド | 種類 | 説明 |
---|---|---|
allowed_media_subtypes |
オブジェクトの配列 | 取引で許可されるメディア サブタイプ。 |
id |
int |
allowed_media_subtypes 内のフィールド: 取引で許可されるメディア サブタイプの ID |
allowed_media_types |
オブジェクトの配列 | 取引で許可されるメディアの種類 |
id |
int |
allowed_media_types 内のフィールド: 取引で許可されるメディアの種類の ID |
メディアの種類の例
"allowed_media_subtypes": [
{
"id": 2,
"last_modified": "2015-09-17 19:19:21",
"media_type": {
"id": 2,
"media_type_group_id": 2,
"name": "Pop",
"uses_sizes": "sometimes"
},
"name": "Popup",
"native_assets": null,
"permitted_sizes": null
}
],
"allowed_media_types": [
{
"id": 1,
"last_modified": "2012-03-16 21:36:10",
"media_type_group_id": 1,
"name": "Banner",
"uses_sizes": "always"
},
{
"id": 4,
"last_modified": "2016-08-22 16:23:12",
"media_type_group_id": 1,
"name": "Video",
"uses_sizes": "never"
}
]
技術属性 ( 技術属性サービスを参照)
フィールド | 種類 | 説明 |
---|---|---|
technical_attribute_restrict |
ブール値 | 取引を、 technical_attributes オブジェクトに一覧表示されている技術属性のみに制限するかどうかを指定します。- true : 取引は、一覧表示された技術属性にのみ制限されます。- false : その他の技術的属性も提供できます。 |
technical_attributes |
オブジェクトの配列 | 取引の対象となるクリエイティブの技術的属性。 |
id |
int |
technical_attributes 内のフィールド:取引の対象となる技術属性の ID |
override |
ブール値 |
technical_attributes 内のフィールド: true に設定すると、広告品質プロファイルによって取引がブロックされた場合でも、技術属性が取引に対応できるようになります。 |
技術属性の例
"technical_attribute_restrict": false,
"technical_attributes": [
{
"id": 1,
"name": "Image",
"override": true
}
]
取引データ保護用の JSON フィールド ( 可視性プロファイル サービスを参照)
警告
このベータ機能は、すべてのクライアントで使用できるわけではありません。 ユース ケースがあるかどうかを説明するには、アカウント マネージャーに問い合わせてください。
ユーザー ID とデバイス ID
フィールド | 種類 | 説明 |
---|---|---|
expose_device_id_default |
ブール値 |
true 場合、発行元が指定したデバイス ID が入札要求に渡されます。 |
expose_user_id_default |
ブール値 |
true 場合、発行元が指定したユーザー ID が入札要求に渡されます。 |
name |
string | 可視性プロファイルの名前。 |
ユーザー ID とデバイス ID の保護の例
手順 1: 可視性プロファイルを作成する
> cat visibility_profile.json
{
"visibility-profile": {
"expose_device_id_default": false,
"expose_user_id_default": false,
"name": "Deal Visibility Profile"
}
}
> curl -b cookies -c cookies -X POST -d @visibility_profile.json 'https://api.appnexus.com/visibility-profile?member_id=2378'
手順 2: 可視性プロファイルを取引に関連付け、データ保護を有効にする
> cat deal_data_protection.json
{
"deal": {
"visibility_profile_id": 29657,
"data_protected": true
}
}
> curl -b cookies -c cookies -X PUT -d @deal_data_protection.json 'https://api.appnexus.com/deal?id=549271'
IP アドレス
フィールド | 種類 | 説明 |
---|---|---|
expose_ip_default |
ブール値 |
true 場合、発行元が指定した IP アドレスが入札要求に渡されます。 |
ip_exposure_default |
列挙 | 入札要求の IP アドレスの可視性。 |
name |
string | 可視性プロファイルの名前。 |
IP アドレスの保護の例
手順 1: 可視性プロファイルを作成する
> cat visibility_profile.json
{
"visibility-profile": {
"expose_ip_default": false,
"ip_exposure_default": "truncated",
"name": "Deal Visibility Profile - Hidden"
}
}
> curl -b cookies -c cookies -X POST -d @visibility_profile.json 'https://api.appnexus.com/visibility-profile?member_id=2378'
手順 2: 可視性プロファイルを取引に関連付け、データ保護を有効にする
> cat deal_data_protection.json
{
"deal": {
"visibility_profile_id": 29657,
"data_protected": true
}
}
> curl -b cookies -c cookies -X PUT -d @deal_data_protection.json 'https://api.appnexus.com/deal?id=549271'
URL
Field | 種類 | 説明 |
---|---|---|
url_exposure_default |
列挙 | 入札リクエストの在庫 URL の可視性。 使用可能な値: - full - 入札リクエストに完全な URL が渡される- domain - 入札要求で渡されるのは URL のドメインのみです- hidden - 入札リクエストに URL が渡されない |
ドメインの保護の例
手順 1: 可視性プロファイルを作成する
> cat visibility_profile.json
{
"visibility-profile": {
"name": "Deal Visibility Profile - Hidden",
"url_exposure_default": "hidden"
}
}
> curl -b cookies -c cookies -X POST -d @visibility_profile.json 'https://api.appnexus.com/visibility-profile?member_id=2378'
手順 2: 可視性プロファイルを取引に関連付け、データ保護を有効にする
> cat deal_data_protection.json
{
"deal": {
"visibility_profile_id": 29657,
"data_protected": true
}
}
> curl -b cookies -c cookies -X PUT -d @deal_data_protection.json 'https://api.appnexus.com/deal?id=549271'
セグメントに追加する ( 取引サービスを参照)
フィールド | 種類 | 説明 |
---|---|---|
allow_creative_add_on_view |
ブール値 |
false を設定して、購入者がビュー上のセグメントにユーザーを追加できないようにします |
allow_creative_add_on_click |
ブール値 |
false を設定して、購入者がクリック時にセグメントにユーザーを追加できないようにします |
クリックまたはビューの例でセグメントへの追加を禁止する
> cat add_segment.json
{
"deal": {
"allow_creative_add_on_click": false,
"allow_creative_add_on_view": false
}
}
> curl -b cookies -c cookies -X PUT -d @add_segment.json 'https://api.appnexus.com/deal?id=123456'
取引を作成するには、次の操作を行います (詳細については、「 Deal Service 」を参照してください)。
取引 JSON を作成します。
$ cat deal.json { "deal": { "name": "Deal Line Item Example Deal", "buyer": { "id": 2379 }, "version": 2 } }
この取引 JSON と適切な
member_id
を使用して、https://api.appnexus.com/deal
エンドポイントにPOST
要求を行います。$ curl -b cookies -c cookies -X POST -d @deal.json 'https://api.appnexus.com/deal?member_id=2378'
要求の応答本文を確認します。 要求が成功した場合は、"
OK
" の "status
" が表示され、行った更新が表示されます。手順 6 - 取引明細を作成するで取引明細を作成するときに使用できるように、応答本文の取引 ID をメモします。
プロファイル
手順 5 - 取引明細プロファイルを作成する
次に、取引明細のターゲティングで使用する取引明細プロファイルを作成します。 後で使用するために、このプロファイルの ID を必ず書き留めておいてください。 詳細については、「 プロファイル サービス 」を参照してください。
取引明細プロファイルのオプションの JSON フィールド
取引明細プロファイルには、取引明細を対象とする多くのオプション フィールドがあります。 たとえば、インベントリ、インベントリの種類、許可リスト、ブロックリスト、デバイスの種類などに関連付けられているプロパティをターゲットにすることができます。 使用可能なフィールドの詳細については、 プロファイル サービス を参照してください。
取引明細プロファイルを作成するには、次の操作を行います (詳細については、「 プロファイル サービス 」を参照してください)。
取引明細プロファイル JSON を作成します。
例: 国、頻度/再表示の上限、表示率/完了率のしきい値を使用したプロファイルの作成
$ cat profile.json { "profile": { "country_action": "include", "country_targets": [{ "active": true, "code": "US", "id": 233, "name": "United States" }], "engagement_rate_targets": [{ "engagement_rate_pct": 25, "engagement_rate_type": "video_completion" }, { "engagement_rate_pct": 50, "engagement_rate_type": "predicted_iab_video_view_rate" } ], "max_day_imps": 10, "min_minutes_per_imp": 300 } }
例: ターゲットを設定せずにプロファイルを作成する
> cat profile.json { "profile": { } }
この取引プロファイル JSON と適切な
advertiser_id
を使用して、https://api.appnexus.com/profile
エンドポイントにPOST
要求を行います。例: 国、頻度の上限、表示率/完了率のしきい値を使用したプロファイルの作成
> curl -b cookies -c cookies -X POST -d @profile.json 'https://api.appnexus.com/profile?advertiser_id=3410892&member_id=2378'
例: ターゲットを設定せずにプロファイルを作成する
> curl -b cookies -c cookies -X POST -d @profile.json 'https://api.appnexus.com/profile?advertiser_id=3410892&member_id=2378'
要求の応答本文を確認します。 要求が成功した場合は、"
OK
" の "status
" が表示され、行った更新が表示されます。手順 6 - 取引明細の作成で取引明細を作成するときに使用できるように、応答本文のプロファイル ID をメモします。
行項目
手順 6 - 取引明細を作成する
最後に、取引 ID と、手順 5 - 取引明細プロファイルの作成で作成した取引明細プロファイルを関連付けるために 、取引明細を作成する必要があります。
取引明細の JSON フィールド
フィールド | 種類 | 説明 |
---|---|---|
insertion_orders |
配列 | この取引明細を関連付ける挿入順序 ID を含む配列。 |
name |
string | 取引明細の名前 注: 購入者はこれを表示しません。 |
ad_types |
配列 | この取引広告申込情報に使用されるクリエイティブの種類。 使用可能な値: - "banner" - "video" (オーディオの種類も含まれます)- "native" |
line_item_type |
列挙 | 取引明細を作成するには、 "standard_v2" に設定する必要があります。 |
profile_id |
integer | 取引明細に関連付けられたプロファイル ID (手順 5 - 取引明細プロファイルを作成する) |
budget_intervals |
オブジェクトの配列 | 常に start_date を含めます。 終了日のない取引明細については、 end_date null のままにします。 |
deals |
オブジェクトの配列 | 取引内の id フィールドは、 手順 4 - 取引の作成で作成した取引の ID である必要があります。 |
supply_strategies |
object | ターゲットにする在庫供給ソースを指定するために使用される、いくつかのブール値フィールドを含むオブジェクト。 取引明細の場合、 managed フィールドを true に設定する必要があります。
rtb 、programmatic_guaranteed 、およびdeals フィールドは、false に設定する必要があります。 |
revenue_type |
列挙 |
cpm 固定価格 (CPM) 取引の場合は、標準価格 (動的 CPM) の vcpm と市場価格の取引。 |
revenue_value |
double |
revenue_type を cpm (固定) に設定した場合は、revenue_value を使用して固定価格を設定します。 Standard または Market Price を使用している場合は、この値を null に設定します。 |
valuation |
object |
revenue_type をvcpm (標準) に設定した場合は、評価対象のmin_revenue_value を使用してフロア価格を設定します。
cpm (固定) または市場価格を使用している場合は、min_revenue_value null の値を設定します。 |
auction_event |
object | オークション イベントの種類のプロパティのオブジェクト: auction_event オブジェクトのkpi_auction_type_id 、payment_auction_type_id 、revenue_auction_type_id フィールドはすべて、1 に設定する必要があります。 |
bid_object_type |
列挙 | 取引明細の "deal" に設定する必要があります。 |
便利な省略可能な JSON フィールド
フィールド | 種類 | 説明 |
---|---|---|
priority |
int | 取引の優先順位を設定します。 再販以下の優先順位はオープン取引を作成し、再販よりも優先するとプライベート取引が作成されます。 |
budget_intervals |
オブジェクトの配列 |
daily_budget 、daily_budget_imps 、lifetime_budget 、lifetime_budget_imps など、budget_intervals 内のフィールドを使用して、取引に予算を設定します。 取引明細に収益予算タイプがある場合は imp のないフィールドを使用し、取引明細に収益タイプのインプレッションがある場合は最後に _imp フィールドを使用します。 両方ではなく、1 日または一生の予算を使用できます。 フライト間に配置される有効期間の予算は、API を介して各フライトで分割されます。 取引に終了日がない場合は、予算を設定できないことに注意してください。 |
state |
列挙 | 取引明細の状態。 既定値は active であるため、取引をすぐに公開したくない場合は、 inactive に設定します。 |
取引明細を作成するには、次の操作を行います (詳細については、「 明細サービス 」を参照してください)。
取引広告申込情報 JSON を作成します (既存の広告主 ID、挿入注文 ID、取引 ID、プロファイル ID が必要です)。
JSON の例: 予算を含めずにアイテムを処理する
> cat deal_line_item.json { "line-item": { "ad_types": ["video"], "auction_event": { "kpi_auction_type_id": 1, "payment_auction_type_id": 1, "revenue_auction_type_id": 1 }, "bid_object_type": "deal", "budget_intervals": [{ "start_date": "2019-10-11 12:00:00" }], "deals": [{ "id": 618159 }], "insertion_orders": [{ "id": 1363850 }], "line_item_type": "standard_v2", "name": "Deal Line Item Example Line Item", "revenue_type": "vcpm", "revenue_value": null, "supply_strategies": { "managed": true }, "profile_id": 112548354, "valuation": { "min_revenue_value": 10 } } }
JSON の例: 広告申込情報の有効期間のインプレッション予算を処理する
> cat deal_line_item_lifetime.json { "line-item": { "ad_types": ["video"], "auction_event": { "kpi_auction_type_id": 1, "payment_auction_type_id": 1, "revenue_auction_type_id": 1 }, "bid_object_type": "deal", "budget_intervals": [ { "end_date": "2019-10-18 23:59:59", "lifetime_budget_imps": 2586, "start_date": "2019-10-11 12:00:00", "timezone": "US/Pacific" }, { "end_date": "2019-10-25 23:59:59", "lifetime_budget_imps": 2414, "start_date": "2019-10-19 00:00:00", "timezone": "US/Pacific" } ], "deals": [{ "id": 618159 }], "insertion_orders": [{ "id": 1363850 }], "line_item_type": "standard_v2", "name": "Deal Line Item Example Line Item", "revenue_type": "vcpm", "revenue_value": null, "supply_strategies": { "managed": true }, "profile_id": 112548354, "valuation": { "min_revenue_value": 10 } } }
JSON の例: 取引明細の 1 日あたりの収益予算
> cat deal_line_item_daily.json { "line-item": { "ad_types": ["video"], "auction_event": { "kpi_auction_type_id": 1, "payment_auction_type_id": 1, "revenue_auction_type_id": 1 }, "bid_object_type": "deal", "budget_intervals": [ { "daily_budget_imps": 270, "end_date": "2019-10-18 23:59:59", "start_date": "2019-10-11 12:00:00", "timezone": "US/Pacific" } ], "deals": [{ "id": 618159 }], "insertion_orders": [{ "id": 1363850 }], "line_item_type": "standard_v2", "name": "Deal Line Item Example Line Item", "revenue_type": "vcpm", "revenue_value": null, "supply_strategies": { "managed": true }, "profile_id": 112548354, "valuation": { "min_revenue_value": 10 } } }
この取引行項目 JSON と適切な
advertiser_id
とmember_id
を使用して、https://api.appnexus.com/line-item
エンドポイントにPOST
要求を行います。要求の例: 予算を含めずに明細を処理する
> curl -b cookies -c cookies -X POST -d @deal_line_item.json 'https://api.appnexus.com/line-item?member_id=2378&advertiser_id=3410892'
要求の例: 広告申込情報の有効期間のインプレッション予算を処理する
> curl -b cookies -c cookies -X POST -d @deal_line_item_lifetime.json 'https://api.appnexus.com/line-item?member_id=2378&advertiser_id=3410892'
要求の例: 取引明細の日次収益予算
> curl -b cookies -c cookies -X POST -d @deal_line_item_daily.json 'https://api.appnexus.com/line-item?member_id=2378&advertiser_id=3410892'
要求の応答本文を確認します。 要求が成功した場合は、"
OK
" の "status
" が表示され、行った更新が表示されます。応答本文の明細 ID をメモして、後でこの取引明細項目を識別して、その
state
(active
またはinactive
) を変更したりすることができます。