アプリは Google からの入札リクエストを処理した後、レスポンスを作成して送信する必要があります。このガイドでは、アプリケーションをコーディングし、
返されます。
注意: Google RTB プロトコルは非推奨になりました。このガイドの例
特に指定のない限り、Google の OpenRTB Protobuf 実装が使用されます。
Protobuf BidResponse メッセージを作成する
認定バイヤーは、BidRequest
を
HTTP POST
。入札エンドポイントが Protobuf 形式を使用するように構成されている場合、アプリケーションは、Content-Type
ヘッダーを application/octet-stream
に設定し、シリアル化されたプロトコル バッファで構成されるメッセージ本文を含むレスポンスを送信する必要があります。プロトコル バッファは、openrtb.proto
で定義されている BidResponse
メッセージです。アプリは、すべての BidRequest
に対して解析可能な BidResponse
を返す必要があります。タイムアウト
解析できないレスポンスはエラーと見なされ、Google は
パフォーマンスが向上します
インプレッションへの入札を行わない場合は、BidResponse.ext.processing_time_ms
フィールドのみを設定して、他のフィールドをすべて空白にしておくこともできます。openrtb.proto
は、参照データ ページから取得できます。
クリエイティブ ID
BidResponse
では、
BidResponse.seatbid.bid.crid
フィールド(64 バイトの上限)。ほとんど変わらない
異なるクリエイティブについては、このフィールドに一意の値を指定する必要があります。
主な特徴(サイズ、宣言された URL、
クリエイティブの属性、ベンダー タイプを指定します。つまり、以下の条件を満たす 2 つの広告には、異なるクリエイティブ ID を割り当てる必要があります。
見た目や動作が異なります。
さまざまな画像にレンダリングできます。
さまざまな方法でレンダリングする(例: 1 つの広告が画像で構成され、
もう 1 つは動画です)。
アプリケーションを設計する際には、
作成するクリエイティブの種類に適した識別子を生成する
提出してください。
広告の帰属表示
広告の属性を表すクリエイティブ属性を宣言することをおすすめします。
属性とそのターゲット設定を組み合わせて、
BidResponse.seatbid.bid.apis
、
BidResponse.seatbid.bid.attr
、または
BidResponse.seatbid.bid.ext.attribute
拡張機能。次の
属性を宣言する方法について説明します。
VPAID
BidResponse.seatbid.bid.apis
を VPAID_1
に設定します。
または VPAID_2
。JSON 形式の場合は、それぞれ 1
または 2
に設定できます。
MRAID
BidResponse.seatbid.bid.apis
の設定
MRAID_1
、または JSON 形式の 3
。
SIZELESS
BidResponse.seatbid.bid.attr
の設定
RESPONSIVE
、または 18
(JSON の場合)
使用できます。
PLAYABLE
これは、BidResponse.seatbid.bid.attr
を設定することで示されます。
USER_INTERACTIVE
、または 13
(JSON の場合)
使用できます。
詳しくは、
クリエイティブ リソース
で検出されたプロパティに関するフィードバックを取得する方法については、
指定します。
Open Bidding フィールド
Open Bidding に参加しているエクスチェンジとネットワークのビッダーが送信する入札レスポンスは、標準のリアルタイム ビッダーに参加している認定バイヤーの入札レスポンスと類似しています。Open Bidding をご利用のお客様は、追加のフィールドをいくつか指定できます。また、既存のフィールドの一部を別の用途に使用することもできます。たとえば、次のようなものです。
OpenRTB
認定バイヤー
詳細
BidResponse.imp[].pmp.deals[].id
BidResponse.ad[].adslot[].exchange_deal_id
この入札に関連付けられ、パブリッシャーに報告されるエクスチェンジの名前空間の取引 ID。
注: このフィールドはクローズド ベータ版の参加者にのみ送信されます。
BidResponse.seatbid[].bid[].ext.exchange_deal_type
BidResponse.ad[].adslot[].exchange_deal_type
パブリッシャーに報告される取引のタイプ。オークションでの取引の処理方法に影響します。
注: このフィールドは、クローズド ベータ版の参加者にのみ送信されます。
BidResponse.seatbid[].bid[].ext.third_party_buyer_token
BidResponse.ad[].adslot[].third_party_buyer_token
Open Bidding ユーザーとしてエクスチェンジが仲介者である場合に、最終的なサードパーティ購入者情報を識別するために使用されるトークン。これは
入札で変更されることなく Google に渡される必要があります。
レスポンスが返されます。
推奨事項
入札レスポンスの例
次の例は、人間が読める形式の Protobuf サンプルと
JSON リクエスト。
OpenRTB プロトコル バッファ
例を表示
id: "q745y3S4jz5Qg43A6izy2V"
seatbid {
bid {
id: "Fi366E0I1RN4Ofm8Ug5"
impid: "1"
price: 0.02
adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adomain: "google.com"
cid: "51570472186"
crid: "test_creative_id_520474"
w: 468
h: 60
[com.google.doubleclick.bid] {
impression_tracking_url: "https://test.com/impression?id=123456"
impression_tracking_url: "https://test.com/impression?id=123456"
event_notification_token {
payload: "token"
}
billing_id: 51570472186
}
}
seat: "1608:1311:489067"
}
bidid: "6930l9D4-1A9090lR-451S-01g3xTZv8382"
[com.google.doubleclick.bid_response] {
processing_time_ms: 100
}
OpenRTB JSON
例を表示
{
"id": "sW2R7543D2w77f0542uu0F",
"seatbid": [
{
"bid": [
{
"id": "U4495qveIO2A83s1iOs",
"impid": "1",
"price": 0.10701,
"adid": "test_creative_id_323125",
"adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>",
"adomain": [
"google.com"
],
"cid": "54460865479",
"crid": "test_creative_id_323125",
"w": 300,
"h": 250,
"ext": {
"app_promotion_type": "INSTALLS",
"impression_tracking_url": [
"https://test.com/impression?id=123456",
"https://test.com/impression?id=123456"
]
}
}
],
"seat": "1506:2993:976791"
}
],
"bidid": "WN7415ff-hN7R6080-3txk-r0J45ckY5970"
}
Google
例を表示
ad {
html_snippet: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adslot {
id: 1
max_cpm_micros: 10100
billing_id: 30279159795
}
click_through_url: "google.com"
attribute: 47
buyer_creative_id: "test_creative_id_766108"
advertiser_name: "Google"
width: 320
height: 50
impression_tracking_url: "https://test.com/imp?id=123456"
event_notification_token: "token"
}
processing_time_ms: 8
重要:
ここでは、人が読めるテキストとして表されます。ただし、これはワイヤーを介してメッセージを送信する方法ではありません。Google または OpenRTB プロトコル バッファを使用する場合
形式の場合、シリアル化された入札レスポンス メッセージのみ受け入れられます。
次の C++ コードを使用して、BidResponse
メッセージを作成してシリアル化できます。
BidResponse bid_response;
// fill in bid response with bid information
string post_response;
if (bid_response.SerializeToString(&post_response)) {
// respond to the POST with post_response as the content
} else {
// return an error to the POST
}
クリエイティブを指定する
入札レスポンスでは、入札が落札した場合に配信するクリエイティブを指定します。入札には、サポートされている広告フォーマット(AMP、動画、ネイティブ)のいずれかを含める必要があります。この
この例では、html_snippet
フィールドを使用してクリエイティブを指定しています。
または、次のいずれか を使用してクリエイティブを指定することもできます。
(広告フォーマット別)
SDK レンダリング広告
BidResponse.seatbid.bid.ext.sdk_rendered_ad
AMP
BidResponse.seatbid.bid.amp_ad_url
動画
<ph type="x-smartling-placeholder"></ph>BidResponse.seatbid.bid.adm
ネイティブ
BidResponse.seatbid.bid.adm_native
HTML スニペットを使用して、自社サーバーでホストしている広告を
BidResponse.seatbid.bid.adm
フィールド。スニペットは
iframe がウェブページに挿入され、結果として広告が取得され、
ページの読み込み時にレンダリングされます広告(バナーまたはインタースティシャル)が iframe 内で正しくレンダリングされ、入札する広告スロットに適したサイズになるように、HTML スニペットを作成する必要があります。
また、入札レスポンスで宣言される広告サイズは、1 つの広告ユニットと完全に一致する
次の場合に、入札リクエストでのサイズの組み合わせが 25% 削減されます。
広告が通常のバナーである(動画、ネイティブ、インタースティシャルではない)。
ビッダーが入札レスポンスでサイズを宣言しました。リクエストに複数のサイズが存在する場合は、サイズの宣言が必要です。
インタースティシャル広告の場合は例外となる。インタースティシャルの場合、幅は
画面の幅の 50% 以上、高さを画面の 40% 以上にする必要があります。
調整できます。
HTML スニペット クリエイティブには、有効な HTML コードを使用して、
適切にレンダリングされますが、
crid
フィールド
[入札レスポンス メッセージを作成する ] セクション
たとえば、広告のレンダリングの一環としてサーバーから取得される URL の引数に追加情報を追加できます。これにより、
インプレッションに関する任意のデータを自社のサーバーに送り返すことです。
入札レスポンスで返される HTML スニペットのポリシーのほとんどは、サードパーティ広告の場合と同じです。詳しくは、認定購入者プログラム ガイドライン 、第三者配信に関する要件 、広告でクリックスルー URL を宣言する をご覧ください。
マクロを指定する
マクロは、入札レスポンスのフィールド内に埋め込まれる書式設定されたテキストで、
広告配信時に関連する値に置き換えられる URL。たとえば
落札単価に HTML に AUCTION_PRICE
マクロが含まれている場合
スニペット クリエイティブを含む場合、マクロは「
復号して、インプレッションに支払った金額を確認できます。
決定します
マクロは次のフィールドに含めることができます。
BidResponse.seatbid.bid.adm
マクロは HTML スニペット、ネイティブ、動画 URL、動画 VAST でサポートされています
XML 形式。
BidResponse.seatbid.bid.adm_native.eventtrackers.url
BidResponse.seatbid.bid.adm_native.imptrackers
BidResponse.seatbid.bid.ext.amp_ad_url
Google 固有の WINNING_PRICE
と
WINNING_PRICE_ESC
マクロは AMP クリエイティブで使用できます。
BidResponse.seatbid.bid.burl
BidResponse.seatbid.bid.ext.impression_tracking_url
次の場合は、BidResponse.seatbid.bid.burl
の代わりにこれを使用します。
複数の請求 URL が必要です。
たとえば、クリエイティブの取得に使用する URL 内に ${MACRO}
を埋め込むことで、HTML スニペットの一部としてマクロを含めることができます。ここで、MACRO
は OpenRTB 仕様 で説明されているサポートされているマクロの 1 つです。
Google RTB マクロ
Google では OpenRTB 以外のマクロもサポートしています。
仕様。これらは形式が異なり、次のように表示されます。
%%MACRO%%
(URL に埋め込まれている場合)次の表に、
これらのマクロは
マクロ
説明
ADVERTISING_IDENTIFIER
購入者が iOS IDFA または Android の広告 ID を受信できるようにする
インプレッションのレンダリングです
広告主 ID の復号 をご覧ください。
をご覧ください。
CACHEBUSTER
ランダムな 4 バイトの符号なし整数の文字列表現。
CLICK_URL_UNESC
エスケープ処理なしの広告のクリック URL。スニペットでは、エスケープ処理された第三者のクリック URL をこのマクロの直後に記述する必要があります。
たとえば、第三者のクリック URL が
http://my.adserver.com/some/path/handleclick?click=clk
,
この場合、シングル エスケープ バージョンでは、次のコードを使用できます。
マクロ呼び出し後の第三者クリック URL の
<a href="%%CLICK_URL_UNESC%%http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a>
広告配信時には、この変数は次のように拡張されます。
<a href="http://google-click-url?...&ad_url=http%3A%2F%2Fmy.adserver.com%2Fsome%2Fpath%2Fhandleclick%3Fclick%3Dclk"></a>
この URL は、まず Google にクリックを登録し、次にサードパーティのクリック URL にリダイレクトします。
CLICK_URL_ESC
エスケープ処理された広告のクリック URL。まず別のサーバーに値を渡し、そのサーバーからリダイレクトを返すようにする場合は、CLICK_URL_UNESC
の代わりにこのマクロを使用します。
たとえば、HTML スニペットで次のコードを使用できます。
<a href="http://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC%%"></a>
広告配信時に、次のように展開されます。
<a href="http://my.adserver.com/click?google_click_url=http://google-click- url%3F...%26ad_url%3D"></a>
これにより、クリックが my.adserver.com
に登録され、
その後、API によって渡される URL へのリダイレクトを担当します。
google_click_url
パラメータ。これは、my.adserver.com
が google_click_url
パラメータをエスケープ解除することを前提としています。
%%CLICK_URL_ESC%%
の後に、二重エスケープされた URL を追加できます。my.adserver.com
によってエスケープ解除が完了すると、google_click_url
に URL の単一エスケープ バージョンが追加されます。google_click_url
がフェッチされると、もう一度エスケープされてからリダイレクトされます。
CLICK_URL_ESC_ESC
二重にエスケープされた広告の URL。代わりに使用するコード:
最初に値を渡す必要がある場合は CLICK_URL_UNESC
別のサーバー経由で通信し、そこからリダイレクトを返します。
たとえば、HTML スニペットで次のコードを使用できます。
<a href="http://my.adserver.com/click?google_click_url=%%CLICK_URL_ESC_ESC%%"></a>
広告配信時には、この変数は次のように拡張されます。
<a href="http://my.otheradserver.com/click?google_click_url=http%3A%2F%2Fmy.adserver.com%2Fclick%3Fgoogle_click_url%3Dhttp%3A%2F%2Fgoogle-click-%20url%253F...%2526ad_url%253D"></a>
SCHEME
入札リクエストで SSL が必須でない、または SSL 対応が必須でない場合は、http:
に展開されます。
入札リクエストで SSL が必須の場合は https:
。
SITE
コンテンツ URL の URL がエスケープされたドメイン、または匿名広告枠の匿名 ID。
SITE_URL
非推奨です。同じ機能を提供する SITE マクロに置き換えられました。
TZ_OFFSET
タイムゾーンのオフセット。
VERIFICATION
本番環境と、検証パイプラインでクリエイティブがスキャンされる場合の値が異なります。形式は次のとおりです。
%%?VERIFICATION:true-val:false-val%%
。ここで、
マクロは true-val
と
false-val
(空の文字列を含む)。Open Bidding については、
エクスチェンジではこのマクロを使用することをおすすめします。そうするとデマンドサイドは
プラットフォームに変更を加える必要はありません。
たとえば、クリエイティブに %%?VERIFICATION:-1:5000%%
が含まれている場合、テキスト置換は配信時には 5000
になり、検証パイプライン内では -1
になります。これは、この 2 つの ping セットを区別するのに役立ちます。
WINNING_PRICE
エンコードされたインプレッション費用(CPM ではなく CPI)は、
アカウントの通貨の 100 万倍の額。たとえば 5 米ドルの落札 CPM は、500 万マイクロ CPM または 5,000 マイクロ CPI に相当し、デコードされた
この場合の WINNING_PRICE
の値は 5,000 になります。
落札価格は CPI で表されます。
このマクロを解析するには、
価格確認を復号します詳しくは、
価格確認の復号
のページをご覧ください。
WINNING_PRICE_ESC
URL がエスケープされた WINNING_PRICE
。
CLICK_URL_UNESC
または
配信される第三者のクリエイティブ内の CLICK_URL_ESC
マクロ
表示されます。Google は、クリック トラッキングに CLICK_URL
マクロを使用します。
マクロでの URL エスケープでは、次のスキームが使用されます。
スペース文字はプラス記号(+
)に置き換えられます。
英数字(0 ~ 9、a ~ z、A ~ Z)とセットの !()*、-./:_~ の文字は変更されません。
その他の文字はすべて %XX
に置き換えられます。ここで、XX
は 16 進数です。
文字を表す数値。
パブリッシャー向け制限コンテンツおよび要件
入札リクエストには、制限の種類に関する情報と、
パブリッシャーがオークションでクリエイティブに求める要件
BidRequest.bcat
このフィールドで指定されたブロックされたカテゴリは、Real-time Bidding API の detectedCategories
フィールドを使用して、送信されたクリエイティブで検出されたカテゴリと比較できます。
BidRequest.imp.ext.allowed_vendor_type
BidRequest.imp.secure
実際には、すべてのクリエイティブで SSL サポートが必須であるため、この値は常に true
に設定されます。
BidRequest.imp.{audio/banner/native/video}
BidRequest.imp.{audio/banner/native/video}.api
BidRequest.imp.{audio/banner/native/video}.battr
BidRequest.imp.{audio/banner/video}.mimes
制限付きの機能を含む広告で入札しないでください。使用できる機能
(ベンダー タイプなど)は、ベンダー タイプが
BidRequest
の allowed_vendor_type
リスト。入札に含めることができるのは、BidRequest.imp.banner
などのフィールドに値を入力して入札リクエストで指定した広告フォーマットのみです。詳しくは、
BidRequest
プロトコル バッファ内のこれらのフィールドに関するコメント
定義をご覧ください。
BidResponse
で広告が返された場合は、BidResponse
で BidResponse.seatbid.bid.attr
、BidResponse.seatbid.bid.cat
、BidResponse.seatbid.bid.adomain
または BidResponse.seatbid.bid.adm_native.link.url
のいずれかのフィールドを正確に設定する必要があります。広告に適用可能な値が複数ある場合
すべての値を含める必要があります。これらのフィールドのコメントについては、
BidResponse
プロトコル バッファの定義をご覧ください。
これらのフィールドが設定されていないレスポンスは破棄されます。
Open Measurement
Open Measurement では、モバイルアプリ環境に配信される広告の独立した測定と検証サービスを提供するサードパーティ ベンダーを指定できます。
サポートされている広告フォーマットには、動画広告、バナー広告、インタースティシャル広告があります。詳細情報
入札レスポンスで Open Measurement を使用する方法を
Open Measurement SDK をご覧ください。
ご覧ください。
入札レスポンスの例
以降のセクションでは、さまざまな広告タイプの入札レスポンスの例を示します。
アプリバナー
OpenRTB Protobuf
例を表示
id: "m7T91l3qg177P4b39N26W1"
seatbid {
bid {
id: "5viGQ43x3HI44d22DW3"
impid: "1"
price: 0.040404
adid: "test_creative_id_566440"
adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adomain: "google.com"
cid: "67427969102"
crid: "test_creative_id_566440"
cat: "IAB3"
cat: "IAB13"
w: 320
h: 50
burl: "https://test.com/imp?id=123456"
[com.google.doubleclick.bid] {
billing_id: 67427969102
}
}
seat: "1912:1424:626226"
group: false
}
bidid: "38508qU5-957YGflD-M2rg-7B19HjXU00n2"
cur: "USD"
OpenRTB JSON
例を表示
{
"id": "SwkWZ9w3I3gJ803j84253U",
"seatbid": [
{
"bid": [
{
"id": "ro22H780p349mF6oe0h",
"impid": "1",
"price": 0.04001,
"adid": "test_creative_id_978541",
"adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>",
"adomain": [
"google.com"
],
"cid": "82346236545",
"crid": "test_creative_id_978541",
"w": 390,
"h": 61,
"ext": {
"skadn": {
"version": "3.0",
"network": "5c39728P",
"campaign": "10199716",
"itunesitem": "640052147",
"sourceapp": "com.google.testapp",
"fidelities": [
{
"fidelity": 1,
"nonce": "9b05b355-a526-4f7c-9925-ab5c91b9dbef",
"signature": "0HY71438fqxkY2tqD14kV9DY1q3Fi77sc99e0D97Qo833M266T75c28Y5NM23wiL61WyNCe0277ER5eM32UxaKGf99GUM1jI",
"timestamp": "1714079463090"
},
{
"fidelity": 0,
"nonce": "9b05b355-a526-4f7c-9925-ab5c91b9dbef",
"signature": "J6RVg1KI31q1lB68f6F16fA07kY93DAYU2IL5ETDuvczR48oMr3S3X9tIohWi4L2VcE0w4mi42o0Mqa174U7o65951z44ru4",
"timestamp": "1714079463090"
}
]
},
"app_promotion_type": "INSTALLS",
"impression_tracking_url": [
"https://test.com/impression?id=123456",
"https://test.com/impression?id=123456"
]
}
}
],
"seat": "4372:2283:725828"
}
],
"bidid": "Z8aZJEk4-r2e3z85n-je52-q0E586r76K4T"
}
Google
例を表示
ad {
html_snippet: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adslot {
id: 1
max_cpm_micros: 31014
billing_id: 16751333146
}
click_through_url: "google.com"
attribute: 47
attribute: 50
category: 0
buyer_creative_id: "test_creative_id_173035"
advertiser_name: "Google"
width: 300
height: 250
impression_tracking_url: "https://test.com/imp?id=123456"
event_notification_token: "token"
advertised_app_id: "APP_ID_OMITTED"
app_promotion_type: INSTALLS
}
processing_time_ms: 10
アプリ内インタースティシャル
OpenRTB Protobuf
例を表示
id: "wqZn032336g5U2Saroj8Lc"
seatbid {
bid {
id: "mTD7EYxAyF6n763v7pJ"
impid: "1"
price: 0.033932000398635864
adid: "test_creative_id_237493"
adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adomain: "google.com"
adomain: "google.com"
cid: "42834631855"
crid: "test_creative_id_237493"
cat: "IAB2-18"
cat: "IAB20"
w: 360
h: 711
burl: "https://test.com/imp?id=123456"
[com.google.doubleclick.bid] {
impression_tracking_url: "https://test.com/impression?id=123456"
attribute: 8
event_notification_token {
payload: "token"
}
billing_id: 42834631855
}
}
}
bidid: "62i6224k-ada8764U-y4Fi-2z760VkR3s35"
cur: "USD"
OpenRTB JSON
例を表示
{
"id": "BQig8glrLj2K7p818w3s0S",
"seatbid": [
{
"bid": [
{
"id": "v0x1j4q0B388Z5lv600",
"impid": "1",
"price": 0.25109,
"adid": "test_creative_id_654733",
"adm": "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>",
"adomain": [
"google.com"
],
"cid": "73848702501",
"crid": "test_creative_id_654733",
"w": 428,
"h": 846,
"ext": {
"skadn": {
"version": "4.0",
"network": "43D4r5x9",
"sourceidentifier": "6217",
"itunesitem": "950280085",
"sourceapp": "com.google.testapp",
"fidelities": [
{
"fidelity": 0,
"nonce": "0d223af6-1847-43aa-9f4f-963de4468b68",
"signature": "8fZn83e3d0742gU7E8Ra7Vif4v1vK61X899f7G7q9Dl998035Gq81Zd4r3032814bQ03HP49709yf38n6U35YY29D0w2Ac5B",
"timestamp": "1714058970102"
},
{
"fidelity": 1,
"nonce": "0d223af6-1847-43aa-9f4f-963de4468b68",
"signature": "zs0k0e335UoH9M6mp1V228I8JAl2526LCKF0dc2l8x7o4270lsQ37B12Cf91a770RcNqSG7Kl667xsw97Eo4nA23o41h3c0H",
"timestamp": "1714058970102"
}
]
},
"app_promotion_type": "INSTALLS",
"impression_tracking_url": [
"https://test.com/impression?id=123456",
"https://test.com/impression?id=123456"
]
}
}
],
"seat": "9150:1636:894279"
}
],
"bidid": "taiup4HY-42ggR62I-120u-3kyZ4831M9Yt"
}
Google
例を表示
ad {
html_snippet: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adslot {
id: 1
max_cpm_micros: 1079285
billing_id: 37034094959
currency: "TWD"
}
click_through_url: "google.com"
attribute: 105
attribute: 47
category: 7
buyer_creative_id: "test_creative_id_903208"
advertiser_name: "Google"
width: 398
height: 744
impression_tracking_url: "https://test.com/imp?id=123456"
impression_tracking_url: "https://test.com/imp?id=123456"
event_notification_token: "token"
skadn {
version: "4.0"
network: "41dEOEaD"
itunesitem: "151251861"
sourceapp: "500811620"
fidelities {
fidelity_type: VIEW_THROUGH_ADS
nonce: "0c9020f9-14c4-4dcd-8944-23ab140556a8"
timestamp: 1714094838257
signature: "p1f6bi578Q0jX163o5ws6n630p142H1v75rziXPtoak952g0Be18230732OkYu7epL9elCJ25078L09G5Mi6u7s7MyO2j5sI"
}
fidelities {
fidelity_type: STOREKIT_RENDERED_ADS
nonce: "0c9020f9-14c4-4dcd-8944-23ab140556a8"
timestamp: 1714094838257
signature: "JFtn495ab0EX97ci69Ru9c39ot9TWn5T0052F4439Y2a9u7zN2do7Q9AH4N584irpJmS8K877980K14iQgO74I33vgx231Cf"
}
skadn_options {
always_open_appstore: true
}
source_identifier: 72
}
}
processing_time_ms: 70
アプリ内インタースティシャル動画
OpenRTB プロトコル バッファ
例を表示
id: "cRPF1960K8WH788KM8ZT5k"
seatbid {
bid {
id: "99862J52T2r9f8n6hzY"
impid: "1"
price: 0.2873480215418293
adid: "test_creative_id_958969"
adm: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%"
adomain: "google.com"
cid: "80831705186"
crid: "test_creative_id_958969"
w: 480
h: 854
}
seat: "5731:4728:218110"
}
bidid: "dR2wx766-444e907U-Xpv0-634m58Wa5V73"
cur: "USD"
Google
例を表示
ad {
adslot {
id: 1
max_cpm_micros: 5037989
billing_id: 82632801525
currency: "TWD"
}
click_through_url: "google.com"
attribute: 47
category: 7
buyer_creative_id: "test_creative_id_497252"
advertiser_name: "Google"
width: 720
height: 1280
video_vast_xml: "OMITTED_VAST_XML"
event_notification_token: "token"
advertised_app_id: "APP_ID_OMITTED"
app_promotion_type: INSTALLS
}
processing_time_ms: 70
アプリ ネイティブ
OpenRTB プロトコル バッファ
例を表示
id: "P3mh232944yQx803R73ayZ"
seatbid {
bid {
id: "79B1S3h454910R471JL"
impid: "1"
price: 0.044748470187187195
adomain: "google.com"
cid: "52078759229"
crid: "test_creative_id_537521"
cat: "IAB20"
burl: "https://test.com/imp?id=123456"
adm_native {
ver: "1.2"
assets {
id: 1
required: true
title {
text: "Luxury Mars Cruises"
}
}
assets {
id: 5
required: true
img {
url: "https://native.test.com/image?id=123456"
w: 1200
h: 627
type: MAIN
}
}
assets {
id: 6
required: false
img {
url: "https://native.test.com/logo?id=123456"
w: 100
h: 100
type: LOGO
}
}
assets {
id: 2
required: true
data {
value: "Visit the planet in a luxury spaceship."
type: DESC
}
}
assets {
id: 3
required: false
data {
value: "Book today"
type: CTATEXT
}
}
assets {
id: 4
required: true
data {
value: "Galactic Luxury Cruises"
type: SPONSORED
}
}
link {
url: "https://www.google.com"
clicktrackers: "https://native.test.com/click?id=123456"
}
eventtrackers {
event: IMPRESSION
method: IMG
url: "https://test.com/event?id=123456"
}
}
[com.google.doubleclick.bid] {
event_notification_token {
payload: "token"
}
billing_id: 52078759229
}
}
seat: "2237:7356:617887"
}
cur: "USD"
OpenRTB JSON
例を表示
{
"id": "3u95d40fy46B0y3CEL73uy",
"seatbid": [
{
"bid": [
{
"id": "d501820Aa099K69Ia64",
"impid": "1",
"price": 1.63,
"burl": "https://test.com/imp?id=123456",
"adm": "{\"assets\": [{\"id\": 1, \"required\": 1, \"title\": {\"text\": \"Luxury Mars Cruises\"}}, {\"id\": 2, \"required\": 1, \"data\": {\"value\": \"Visit the planet in a luxury spaceship.\", \"label\": \"\"}}, {\"id\": 3, \"data\": {\"value\": \"Book today\", \"label\": \"\"}}, {\"id\": 4, \"required\": 1, \"data\": {\"value\": \"Galactic Luxury Cruises\", \"label\": \"\"}}, {\"id\": 5, \"required\": 1, \"img\": {\"url\": \"https://native.test.com/image?id=123456\", \"h\": 628, \"w\": 1200}}, {\"id\": 6, \"img\": {\"url\": \"https://native.test.com/logo?id=123456\", \"h\": 640, \"w\": 640}}], \"link\": {\"url\": \"https://www.google.com\", \"clicktrackers\": [\"https://native.test.com/click?id=123456\"]}, \"imptrackers\": [\"https://test.com/impression?id=123456&amt=${AUCTION_PRICE}\"], \"privacy\": \"\"}",
"adid": "test_creative_id_237765",
"adomain": [
"google.com"
],
"cid": "30567639040",
"crid": "test_creative_id_237765",
"cat": [
"IAB8"
],
"ext": {
"skadn": {
"version": "3.0",
"network": "345vh5bv",
"campaign": "62744790",
"itunesitem": "608550422",
"sourceapp": "com.google.testapp",
"fidelities": [
{
"fidelity": 0,
"nonce": "88db095e-1022-48bb-ad38-54a1075886aa",
"timestamp": "1714430552729",
"signature": "4063Vhn5W7oGEcJ202oj6k990Y3H7f9sJ6luK3O65RbQ3S9kp45VK84le4a424c6SU79384DTdXS1cHWcxl9SB98563Y38K9"
},
{
"fidelity": 1,
"nonce": "88db095e-1022-48bb-ad38-54a1075886aa",
"timestamp": "1714430552729",
"signature": "r1852LY7j0f25q2s868j1Ub7r07S16e607BC5909O272F8i528732r22W7D138t3706205Ez139N73Iho3vJKp257Pp4vmet"
}
]
},
"app_promotion_type": 1,
"event_notification_token": {
"payload": "token"
}
}
}
],
"seat": "3512:7802:295531"
}
],
"cur": "USD"
}
Google
例を表示
ad {
adslot {
id: 1
max_cpm_micros: 1581987
billing_id: 32132054378
}
click_through_url: "google.com"
attribute: 47
attribute: 8
buyer_creative_id: "test_creative_id_285893"
advertiser_name: "Google"
native_ad {
headline: "Luxury Mars Cruises"
body: "Visit the planet in a luxury spaceship."
call_to_action: "Book today"
advertiser: "Galactic Luxury Cruises"
image {
url: "https://native.test.com/image?id=123456"
width: 800
height: 800
}
logo {
url: "https://native.test.com/logo?id=123456"
width: 200
height: 200
}
price: "\342\202\254106.40"
click_link_url: "https://www.google.com"
}
impression_tracking_url: "https://test.com/imp?id=123456"
impression_tracking_url: "https://test.com/imp?id=123456"
ad_choices_destination_url: "https://test.com/preferences"
event_notification_token: "token"
}
processing_time_ms: 20
ウェブ動画
Google
例を表示
ad {
adslot {
id: 1
max_cpm_micros: 16000000
billing_id: 34223090460
deal_id: 17775265
}
click_through_url: "google.com"
attribute: 47
attribute: 8
video_url: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%"
buyer_creative_id: "test_creative_id_551392"
advertiser_name: "Google"
event_notification_token: "token"
}
processing_time_ms: 7
エクスチェンジ入札者向けのモバイルウェブバナー
OpenRTB プロトコル バッファ
例を表示
id: "878w58e050dSf05LS9l424"
seatbid {
bid {
id: "478u6K990C990n7FPTX"
impid: "1"
price: 0.03
adm: "<iframe marginwidth=0 marginheight=0 height=600 frameborder=0 width=160 scrolling=no src=\"https://test.com/ads?id=123456&curl=%%CLICK_URL_ESC%%&wprice=%%WINNING_PRICE_ESC%%\"></iframe>"
adomain: "google.com"
cid: "46483683815"
crid: "test_creative_id_527097"
w: 320
h: 50
[com.google.doubleclick.bid] {
impression_tracking_url: "https://test.com/impression?id=123456"
impression_tracking_url: "https://test.com/impression?id=123456"
event_notification_token {
payload: "token"
}
billing_id: 46483683815
}
}
seat: "6954:3639:781296"
}
bidid: "7a2CAWgt-IKR8mp06-0E3d-TPNq4zO9l767"
[com.google.doubleclick.bid_response] {
processing_time_ms: 120
}