コンテンツにスキップ

入札レスポンス

サイズ

入札レスポンスの最大サイズは4KBです。

入札なし

入札なしのレスポンスを返すには、204のステータスコードで空のレスポンスを渡します。

獲得/損失/請求通知

AppLovin RTBは、リクエストのnurllurlburlのフィールドに、リクエスト者が提供する獲得、損失、請求通知のURLをそれぞれ呼び出します。 AppLovin RTBは、オークションが完了し、AppLovinがデバイスに広告を送信すると、獲得URLを呼び出します。また、オークション中に関連広告が適切にロードされなかった場合や、競り勝った別の広告がロードされた後に、損失URLを呼び出します。 デバイスが動画広告の再生を開始した時や、デバイスが広告の画像を表示した時に、請求URLを呼び出します。

リクエスト者は、これらの通知URLの仕様にマクロを埋め込むことができます。 AppLovin RTBでは、URLをリクエストする前に、URL内のマクロを適切な値に置き換えます。 以下は、リクエスト者がURLに埋め込むことができるマクロの一覧です。

これらのマクロは大文字と小文字を区別しますが、すべて大文字で指定します。 これらのマクロを${…}の形式で記載します(例:${AUCTION_ID})。

マクロ説明
AUCTION_BID_IDBidResponse.bididアトリビュートからの入札のID。
AUCTION_IDBidRequest.id アトリビュートからの入札リクエストのID
AUCTION_LOSSOpenRTB Specification 2.5のセクション5.25の表にある、損失理由のコード。lurlでのみ送信されます。
AUCTION_MINIMUM_BID_TO_WIN2番目に高い入札価格。これはnurlで送信されますが、lurlを経由して送信される場合もあります。lurlインスタンスは無視されます。入札が獲得した入札1つだけの場合、渡される値は0です。
AUCTION_PRICEオークションクリアリング価格。入札と同じ通貨とユニットを使用します。小数点以下を6桁まで指定できます。

マクロを含む獲得入札URLの例

https://example.com/endpoint/auction=${AUCTION_ID}&price=${AUCTION_PRICE}

広告マークアップの標準

DSPビッダーは、入札レスポンスに広告マークアップを含める必要があります。 AppLovin RTBは、獲得通知に応じて広告マークアップを返すことをサポートしていません。

広告マークアップは、AppLovin RTBの広告マークアップ基準に準拠する必要があります。 AppLovin RTBサーバーは入札を受信すると、すぐに広告マークアップのコンプライアンスを確認します。 次に、広告マークアップで以下のサニティーチェックを行います。

  • 広告マークアップは適切にエスケープされている。
  • 広告マークアップは、VAST広告を除いてURLエンコードされている。
  • 広告マークアップのHTMLはスニペットである。
  • リッチメディア広告で入札する場合は、ノードのコンテンツをCDATA構成に配置します。XMLのCDATAの場合、エンコードは一切必要ありません。 ただし、JSONコンテキストでXMLドキュメントを渡す場合は、JSONの構文とエスケープルールを以下のように適用する必要があります。
    • 二重引用符はすべて\"でエスケープされます。
    • アポストロフィはエスケープされません。
    • XMLドキュメントからは、すべてのタブ文字と改行文字が削除されます。以下のVAST広告マークアップの例は、読みやすいフォーマットにされています。 実際の広告マークアップには、余分な空白を含めないでください。

広告キャンペーンのスニペットが有効なJSONコンテンツであることをCDATA とともに確認するには、オンラインのJSONLint検証ツールでスニペットを確認します。

すべてのクリエイティブはSDKを介して表示されるため、広告マークアップをSDKビッダーに渡す必要はありません。 SDKビッダーは、admarkupフィールドを使用してカスタムデータを渡すことが可能です。このデータは、アダプターを介してロード時にSDKに返すように設定できます。

入札レスポンスのコンポーネント

入札レスポンスには3つのコンポーネントがあります。

bidresponse
トップレベルオブジェクト
seatbid
特定のシートに代わってビッダーが作成した入札の集合
bid
特定のビジネス条件下での特定のインプレッション購入オファー

入札レスポンスオブジェクト

アトリビュートタイプ説明必要
bidid文字列ログ/トラッキングを支援する、ビッダーによって生成されたレスポンスID。いいえ
cur文字列現在はデフォルトの"USD"のみが使用可能。いいえ
id文字列レスポンスとなる入札リクエストのID。bidrequest.idと一致する必要があります。はい
nbr整数入札しない理由。OpenRTB Specification 2.5のセクション5.24の表を参照してください。推奨
seatbidオブジェクト配列seatbidオブジェクトの配列。1つの入札に対し、1つ以上が必要です。はい

seatbidオブジェクト

アトリビュートタイプ説明必要
bidオブジェクト配列入札オブジェクトの配列。1つの入札に対し、1つ以上が必要です。はい
seat文字列この入札を代理で行うビッダーシートのID。入札レスポンスには、複数の「シート」からの複数の入札、または同じ「シート」からの複数の入札が含まれる場合があります。最大40文字の英数字である必要があります。8文字以上が推奨されます。現在サポートされていません。いいえ

入札オブジェクト

アトリビュート説明必要
adid(文字列)入札が成功した場合に配信されるプリロード広告のID。いいえ
adm(文字列)入札が成功した場合の広告マークアップを伝える主な手段。獲得通知にもマークアップが含まれている場合は、獲得通知に優先します。代用マクロが含まれる場合があります。サポート対象のマクロを参照してください。ネイティブ広告フォーマットでは adm_native がサポートされます。はい
adomain(整数配列)広告主ドメイン名の配列。AppLovin RTBは、配列の最初のドメインのみを使用します。広告主ドメインは、完全なランディングページURLではなく、広告主ランディングページのトップレベルドメイン名と一致させる必要があります。App Storeランディングページのadomainは、完全なアプリストアURLではなく、アプリ所有者のトップレベルのドメイン名と一致させる必要があります。adomainの値には、「http://」、「https://」、または「/」(スラッシュ)を含めることはできません。例:yourapp.comyourapp.com/somethingおよびhttps://yourapp.com不可)。はい
api (整数)OpenRTB Specification 2.5のセクション5.6の表を参照してください。いいえ
apis(整数配列)このインプレッションでサポートされるAPIフレームワークの一覧。次のいずれか1つ:
  • 1:VPAID1.01
  • 2:VPAID2.01
  • 3:MRAID-1
  • 4:ORMMA1
  • 5:MRAID-2
  • 6:MRAID-3
  • 7:OMID-1
1 AppLovin Exchangeではサポートされません。
 
attr(整数配列)該当する場合は必須。クリエイティブアトリビュート。このリストから取得した値の配列:
  • 1:オーディオ広告(自動再生)
  • 2:オーディオ広告(ユーザーが開始)
  • 3:拡張可能(自動)
  • 4:拡張可能(ユーザーが開始;クリック)
  • 5:拡張可能(ユーザーが開始:ロールオーバー)
  • 6:バナー内動画広告(自動再生)
  • 7:バナー内動画広告(ユーザーが開始)
  • 8:ポップ(例:ポップオーバー、ポップアンダー、離脱ポップアップ)
  • 9:挑発的または暗示的な比喩
  • 10:手ぶれ、点滅、ちらつき、極端なアニメーション、スマイルマーク
  • 11:アンケート
  • 12:テキストのみ
  • 13:ユーザーが操作(例:埋め込みゲーム)
  • 14:Windowsダイアログまたはアラートスタイル
  • 15:オーディオのON/OFFボタンあり
  • 16:広告にスキップボタンあり(例:VPAIDレンダリングされたプリロール動画のスキップボタン)
  • 17—Adobe Flash
これを設定する場合、正確かつ実際のクリエイティブを反映している必要があります。そうでない場合はポリシー違反となります。このフィールドはVAST動画には必要ありませんが、HTMLまたはMADIDのバナー内動画を配信する場合は必要です。
推奨
bundle(文字列)広告主のアプリケーションのiTunes IDまたはAndroidのパッケージ名。アプリケーションインストールを促す広告でない場合、このフィールドは空白のままにしてください。パブリッシャーのダウンロードバンドルを渡さないと、AppLovin RTBはレスポンスを拒否します。例:Androidではcom.example.app、iOSでは628677149ext.skadnがある場合は必須だが、それ以外の場合でも推奨
burl(文字列)獲得した入札が請求可能になったときにエクスチェンジが呼び出す請求通知URL。DSPは、インプレッションと支出のトラッキングにburlを使用する必要があります。AppLovinは、burlがトラッキングに使用された場合にのみ、不一致に関する調査を行います。はい
cat(整数配列)クリエイティブのIABコンテンツカテゴリー。OpenRTB Specification 2.5のセクション5.1を参照してください。はい
cid(文字列)広告品質チェックを支援するためのキャンペーンID。iurlで表されるクリエイティブの集合です。推奨
crid(文字列)キャンペーンのクリエイティブを一意に識別します。同じクリエイティブが新しいインプレッションに表示されるという理由だけで、新しいクリエイティブIDを割り当てないでください。はい
dealid(文字列)この入札がインベントリパッケージに関連している場合、入札リクエストのdeal.idを参照します。インベントリパッケージに対する入札でない限り、これを渡さないでください。インベントリパッケージには必要
ext(オブジェクト)OpenRTBへのビッダー固有の拡張機能のプレースホルダー。いいえ
ext.crtype(文字列)このフィールドでは、配信する広告のタイプを説明します。有効な値:
  • HTML
  • MRAID 1.0
  • MRAID 2.0
  • MRAID 3.0
  • native
  • VAST 2.0
  • VAST 3.0
  • VAST 4.0
  • VAST 4.1
  • VAST 4.2
AppLovinはcrtypeを1つだけ購入した場合にcrtypeをハードコーディングします。ご希望の場合は、AppLovinアカウントマネージャーまでお問い合わせください。bid.crtypecrtypeを渡すこともサポートされています。
推奨
ext.clicktrackers(整数配列)AppLovinがクリックイベントを記録する際、継続してトラッキングされるクリックトラッキングURL(ファーストパーティおよびサードパーティ)。ネイティブに適用されません。HTML広告とSKAD(SKAdNetwork)を運用している場合
ext.duration (整数)動画の長さ(秒単位)。CTVインベントリの場合
ext.imptrackers (整数配列)サードパーティーのトラッキングに使用するインプレッショントラッキングURLネイティブに適用されません。ネイティブオブジェクトeventtrackersを参照してください。いいえ
ext.skadn(オブジェクト)AppleのSKAdNetworkアトリビューションAPIをloadProduct()経由でサポートするために必要なパラメーター。いいえ
ext.skadn.campaign(文字列)キャンペーンID(2.0~3.0)またはソースID(4.0以降)。SKAdNetworkバージョン2.0~3.0の場合は1~100、バージョン4.0以降の場合は0〜9999の範囲の整数を文字列で指定します。ext.skadnがある場合
ext.skadn.fidelities[](オブジェクト配列)SKAdNetwork v2.2で導入された複数のfidelity-typeをサポートします。ext.skadnがある場合
….fidelities[«n»].fidelity (整数)トラッキングするアトリビューションのfidelity-type。ext.skadnがある場合
….fidelities[«n»].nonce(文字列)各広告レスポンスに固有のID。適切なUUIDフォーマットの要件については、Appleのドキュメントを参照してください。ext.skadnがある場合
….fidelities[«n»].signature(文字列)Appleによって指定されたSKAdNetworkシグネチャー。ext.skadnがある場合
….fidelities[«n»].timestamp(文字列)signature利用時に使用されるUnix時間(ミリ秒単位)の文字列。ext.skadnがある場合
ext.skadn.itunesitem(文字列)AppleのApp Storeにある広告主のアプリのID。BidResponse.seatbid.bid.bundleに一致する必要があります。ext.skadnがある場合
ext.skadn.network(文字列)シグネチャーに使用されるアドネットワークの識別子。リクエストのskadnetids配列のいずれかの項目に一致する必要があります。ext.skadnがある場合
ext.skadn.nonce(文字列)各広告レスポンスに固有のID。適切なUUIDフォーマットの要件については、Appleのドキュメントを参照してください。**注:**SKAdNetwork v2.2のリリースに伴い、このフィールドは廃止され、複数のfidelity-typeをサポートするext.skadn.fidelities[«n»].nonceがこれに代わります。ext.skadnがある場合
ext.skadn.productpage(文字列)カスタムの製品ページID。いいえ
ext.skadn.signature(文字列)Appleによって指定されたSKAdNetworkシグネチャー。注**SKAdNetwork 2.2のリリースに伴い、このフィールドは廃止され、複数のfidelity-typeをサポートするext.skadn.fidelities[«n»].signatureが優先されます。ext.skadnがある場合
ext.skadn.skoverlay(オブジェクト)潜在的なSKOverlayを制御するパラメーター。オーバーレイは、動画の開始後、コンパニオン広告がレンダリングされた場合、またはユーザーがオーバーレイを解除したが広告が開いたままの場合にトリガーされます(遅延あり。0を指定する場合は遅延なし)。**注:**Appleはクリックコールバックを提供しないため、AppLovinはSKOverlayのクリックを計測しません。いいえ
….skoverlay.position (整数)オーバーレイの位置。0=「bottom」、1=「bottomRaised」。デフォルトは0です。いいえ
….skoverlay.dismissable (整数)ユーザーがオーバーレイを解除できるかどうか。1は解除でき、0は画面上に固定されます。デフォルトは1です。いいえ
….skoverlay.video_delay (整数)動画のオーバーレイ表示を開始した後の経過時間(秒単位)。動画の開始時にトリガーしないようにするには、これを-1に設定します。ext.skadn.skoverlayがある場合
….skoverlay.companion_delay (整数)コンパニオン広告がレンダリングされてからオーバーレイが表示されるまでの時間(秒単位)。コンパニオン広告のレンダリング時にトリガーしないようにするには、これを-1に設定します。ext.skadn.skoverlayがある場合
….skoverlay.sk_dismiss_delay (整数)表示されたStoreKitの画面が閉じてからオーバーレイが表示されるまでの時間(秒単位)。StoreKitの解除時にトリガーしないようにするには、これを-1に設定します。ext.skadn.skoverlayがある場合
ext.skadn.sourceapp(文字列)パブリッシャーのアプリがAppleのApp Storeに登録されている際のアプリID。BidRequest.imp.ext.skad.sourceapp と一致している必要があります。ext.skadnがある場合
ext.skadn.timestamp(文字列)signature利用時に使用されるUnix時間(ミリ秒単位)の文字列。**注:**SKAdNetwork 2.2のリリースに伴い、このフィールドは廃止され、複数のfidelity-typeをサポートするext.skadn.fidelities[«n»].timestampがこれに代わります。ext.skadnがある場合
ext.skadn.version(文字列)使用するSKAdNetworkのバージョン。2.0以降である必要があります。ext.skadnがある場合
ext.vendor(整数配列)表示された広告のビューアビリティーを計測するビューアビリティーベンダーの名前。インプレッションのビューアビリティー計測を収集する場合は、入札レスポンスでビューアビリティーベンダーのみを宣言してください。Integral Ad Science(IAS)は"ias"に、Moatは"moat"に設定してください。ビューアビリティーの表示キャンペーンを返した場合、バイヤーは入札レスポンスでベンダーに応答する必要があります。Open Measurementのビューアビリティには適用されません。ビューアビリティーを計測するキャンペーン向け
h (整数)画像密度に依存しないクリエイティブの高さ(ピクセル単位)。推奨
id(文字列)ビッダーが生成する入札IDは、ログの記録とトラッキングをサポートします。はい
impid(文字列)関連する入札リクエストのインプレッションオブジェクトのID。はい
lurl(文字列)入札に成功しなかった場合にエクスチェンジが呼び出す損失通知URL。代用マクロが含まれる場合があります。サポート対象のマクロを参照してください。いいえ
nurl(文字列)入札でインプレッションの機会を獲得した場合に、エクスチェンジによって呼び出される獲得通知URL。推奨
price(浮動小数点数)入札価格はCPMで表されますが、実際のトランザクションはユニットのインプレッションのみです。注:タイプは浮動小数点数ですが、通貨を扱う場合は整数演算を強く推奨します。(例:JavaではBigDecimal)。はい
protocol (整数)該当する場合、マークアップの動画レスポンスプロトコル。詳細は、OpenRTB Specification 2.5のセクション5.8の表を参照してください。いいえ
w (整数)画像密度に依存しないクリエイティブの幅(ピクセル単位)。推奨

トラッキングフィールド

次の表は、デマンドサイドプラットフォームで利用可能なトラッキングフィールドとその推奨される用途を示しています。

bidresponse.bid.トラッカーメソッド推奨される用途
.adm
  • クライアント側で実行されたHTML
  • サーバー側で実行されたVAST<ImpressionTracker>ノード。サーバー側のコールバックでX-Device-IPX-Device-User-Agentがヘッダーとして送信されます。
    X-Device-IP
    実際のユーザーデバイスのIPアドレス
    X-Device-User-Agent
    実際のユーザーデバイスのユーザー獲得(UA)
  • HTML:無効なトラフィック(IVT)の計測
  • VAST:パートナーによるインプレッション計測
.adm.native.eventtrackersクライアント側で実行
  • 無効なトラフィック(IVT)の計測
  • Open Measurement SDK(OMSDK)
  • パートナーによるインプレッション計測
imgjsのタグは、Open RTB Dynamic Native Ads API Specification v1.2のセクション7.7「Event Tracking Methods」の表で定義されているようにサポートされます。DSPには、native.eventtrackersの使用が推奨されます。native.imptrackersnative.jstrackerフィールドはIABによって非推奨となる予定であり、代わりにeventtrackersが推奨されているためです。
.adm.native.imptrackersクライアント側で実行(廃止され、eventtrackersがこれに代わる)無効なトラフィック(IVT)の計測
.adm.native.jstrackerクライアント側で実行(廃止され、eventtrackersがこれに代わる)Open Measurement SDK(OMSDK)
.adm.native.link.clicktrackersクライアント側で実行クリック計測(オプション)
.burlサーバー側で発生。X-Device-IPX-Device-User-Agentは、サーバー間コールバックでヘッダーとして送信されます。
XX-Device-IP
実際のユーザーデバイスのIPアドレス
X-Device-User-Agent
実際のユーザーデバイスのユーザー獲得(UA)
バイヤー(DSP)のインプレッションおよび広告費用のトラッキング
.ext.imptrackersサーバー側で発生。X-Device-IPX-Device-User-Agentは、サーバー間コールバックでヘッダーとして送信されます。
XX-Device-IP
実際のユーザーデバイスのIPアドレス
X-Device-User-Agent
実際のユーザーデバイスのユーザー獲得(UA)
パートナーによるインプレッション計測

入札レスポンスの例

{
"id": "5e1eb292d6b7ea9cf3da74ddb385996a62d3a6e9",
"seatbid": [
{
"bid": [
{
"id": "8JxH4DHN4KMF21Vd",
"impid": "1",
"price": 15,
"adid": "1093919",
"adm": "<a href=\"https://click.url/click/8JxH4DHN4KMF21Vd?uid=05D02DC6-0132-4C2C-A879-79BB026BE3F8&partner=applovin&ts=2018-07-09T18-19-01Z&ad=1093919\"><img src=\"https://assets.dsp.io/ad_assets/files/320x50.png\" height=\"50\" width=\"320\" alt=\"\"/></a>",
"adomain": [
"advertiser.com"
],
"bundle": "123123123",
"iurl": "https://assets.dsp.io/ad_assets/files/320x50.png",
"cid": "12345",
"crid": "crid123",
"cat": [
"IAB22-2"
],
"h": 50,
"w": 320,
"ext": {
"crtype": "HTML",
"imptrackers": [
"https://example.dsp.events/win/8JxH4DHN4KMF21Vd?ts=2018-07-09T18-19-01Z&ad=1093919&uid=05D02DC6-0132-4C2C-A879-79BB026BE3F8&auction=${AUCTION_ID}&price=${AUCTION_PRICE}&partner=applovin"
]
}
}
]
}
],
"bidid": "8JxH4DHN4KMF21Vd",
"cur": "USD"
}

ネイティブ広告レスポンスの例

{
"bidid":"9aa2a2950894c95b9b02476a5ba5438dc6de8dc1",
"cur":"USD",
"id":"65de6af36e6fb32778afa94a996ec4c2b514145d",
"seatbid":[
{
"bid":[
{
"adm":"{\"native\":{\"assets\":[{\"id\":100,\"title\":{\"text\":\"Test Ad\"}},{\"id\":200},{\"id\":300,\"img\":{\"h\":null,\"url\":\"https://assets.com/main_image.png_\",\"w\":null}},{\"id\":310,\"img\":{\"h\":80,\"url\":\"https://assets.com/icon_image.png\",\"w\":80}},{\"data\":{\"value\":\"Test Ad Subline\"},\"id\":420},{\"data\":{\"value\":\"Continue\"},\"id\":430},{\"data\":{\"value\":\"4.5\"},\"id\":410}],\"imptrackers\":[\"https://adserver.com/impression_tracker\"],\"link\":{\"url\":\"https://adserver.com/click_destination\"}}}\n",
"adomain":[
"somegame.com"
],
"bundle":"com.game.example",
"cat":[
"IAB1"
],
"crid":"74650.0!3ILDTypkALKe8xfw2WJLmxfNOftiOg2u3yeGIKEULAU*",
"ext": {
"crtype":"native"
},
"id": "1",
"impid": "1",
"iurl": "https://assets.com/preview.png",
"price": 1.0
}
],
"seat":"A00000001"
}
]
}