自社メディエーションは一般公開されません
Audience Networkによる自社入札は、現時点で非公開ベータ版であり、一般公開されません。この状況が変化した時点で、アップデートが提供される予定です。
それまでの間、Facebookとパートナー関係にあるメディエーションプラットフォームのうちのいずれか1つにより、Audience Network入札にアクセスできます。
サーバー間の入札統合が終了したら、アプリ入札の統合テスト は、本番広告が掲載されている物理的なデバイスで完了させる必要があります。HTTPエラーや「入札なし」が表示される場合は、このセッションの情報を活用して実装のトラブルシューティングを行うことができます。
入札リクエストをデバッグするために、cURLコマンドを利用することができます。cURLコマンドは、ターミナルで入札リクエストを送信したり、入札応答を受信したりするために使用できます。
YOUR_PLACEMENT_ID
をあなたの配置IDに置き換えますYOUR_BUSINESS_ID
をあなたのビジネスIDに置き換えますYOUR_DEVICE_ID
をあなたのデバイスIDに置き換えますYOUR_BIDDER_TOKEN
を、Audience Network SDKから生成された入札者トークン に置き換えますYOUR_PLATFORM_ID
をメディエーションパートナープラットフォームID (FBアプリID)に置き換えますbid_request.json
として保存します{ "id": "vwxfKskkMobzQQ1e7M70", "imp": [ { "id": "FB Ad Impression", "tagid": "YOUR_PLACEMENT_ID", "instl": 1, "banner": { "h": 0, "w": 0, "linearity": 0 } } ], "app": { "publisher": { "id": "YOUR_BUSINESS_ID" } }, "device": { "ua": "Dalvik\/2.1.0 (Linux; U; Android 8.1.0; Android SDK built for x86 Build\/OSM1.180201.000)", "ifa": "YOUR_DEVICE_ID", "dnt": 0, "ip": "125.123.255.123" }, "user": { "buyeruid": "YOUR_BIDDER_TOKEN" }, "regs": { "coppa": 0 }, "at": 1, "tmax": 500, "test": 1, "ext": { "platformid": "YOUR_PLATFORM_ID" } }
Terminal
を開きますcd ~/{FILE_PATH}
を実行し、bid_request.json
を保存したディレクトリへ移動しますcurl -X POST -H "Content-Type: application/json" -d @bid_request.json https://an.facebook.com/placementbid.ortb
{ "id": "Auction ID", "seatbid": [ { "bid": [ { "id": "Bid Response ID", "impid": "FB Ad Impression", "price": 99.99, "adm": "{\"type\":\"ID\",\"bid_id\":\"BID ID\",\"placement_id\":\"Placement ID\",\"resolved_placement_id\":\"Resolved Placement ID\",\"sdk_version\":\"SDK Version\",\"device_id\":\"Device ID\",\"template\":102,\"payload\":null}", "nurl": "https://www.facebook.com/audiencenetwork/nurl/?partner=partner_id&app=app_id&placement=placement_id&auction=auction_id&impression=impression_id&request=request_id&bid=bid_id&ortb_loss_code=0&clearing_price=${AUCTION_PRICE}", "lurl": "https://www.facebook.com/audiencenetwork/nurl/?partner=partner_id&app=app_id&placement=placement_id&auction=auction_id&impression=impression_id&request=request_id&bid=bid_id&ortb_loss_code=${AUCTION_LOSS}&clearing_price=${AUCTION_PRICE}" } ] } ], "bidid": "Bid ID", "cur": "USD" }
x-fb-an-errors
を参照してください。cURL コマンドでHTTP応答ヘッダーを表示します。
url -X POST -H "Content-Type: application/json" -v @bid_request.json https://an.facebook.com/placementbid.ortb
... > Content-Type: application/json > * Connection state changed (MAX_CONCURRENT_STREAMS updated)! < HTTP/2 400 < x-fb-an-request-id: fb_an_request_id ... < x-fb-an-errors: Value cannot be null: value given: null ...
入札リクエストを修正する場合は、「HTTP エラーコードの説明と入札リクエストの解決策」を参照してください。
入札の実装をテストする際、入札リクエストを行ったときに、エラーコードが表示されることがあります。エラーコードと解決策は以下のとおりです。
エラーメッセージ | 説明 | 解決策 |
---|---|---|
user.buyeruidの無効な入札者トークン |
| 有効な入札者トークンの生成方法:
|
ipaddressは有効なIPアドレスである必要があります | 入札リクエストペイロードの | 正しい例:
正しくない例: (IPを省略しないでください)
|
有効な配置IDが必要です |
| ビジネスマネージャで配置IDを確認してください。[プロパティの管理]を選択し、AndroidまたはiOSプラットフォームの広告スペースの下にある、配置IDを見てください。 |
パブリッシャーIDがアプリのリクエストに設定されていません | リクエストで | [ビジネス設定]で、あなたのパブリッシャーIDを確認してください。左側のメニューで[アプリ]を選択し、アプリID(パブリッシャーID)を探します。 |
すべての配置IDは同じアプリIDに属している必要があります | メッセージに示されているように、入札リクエストに含まれるすべてのAudience Network 配置IDは、同じアプリIDに属している必要があります。 | ビジネスマネージャで、入札リクエストの中のすべての配置IDが、同じアプリIDに属しているかどうかを確認してください。[プロパティの管理]を選択し、AndroidまたはiOSプラットフォームの広告スペースの下にある、配置IDを見てください。 |
オプションではない、またはNULLにできない形成フィールドに値が指定されていません | 入札リクエストに必須の値が指定されていません。 | 必須の値:
|
広告フォーマットは必須です。広告フォーマットと配置IDの数値は同じである必要があります | 空白以外の有効な広告フォーマットを指定してください。 | サポートされている広告フォーマット:
詳細は、サポートされている広告フォーマット を参照してください |
バナー、ネイティブ、ビデオの各オブジェクトは同時に使用することはできませんが、いずれか1つを指定する必要があります | 上記の広告フォーマットには、 | 上記の サポートされている広告フォーマット の解決策を参照してください。 |
エラーメッセージ | 説明 | 解決策 |
---|---|---|
ドメインおよびビジネスIDに一致するアプリがありません |
| このエラーが解決されない場合は、 |
アプリがアプリ入札に対して認証されません |
| アプリを入札許可リストに追加するには、Facebookにお問い合わせいただくか、アプリが承認されるまでお待ちください。 |
プラットフォームがアプリ入札で認証されません |
| 解決策:
アプリを入札許可リストに追加するには、Facebookにお問い合わせいただくか、アプリが承認されるまでお待ちください。 |
予期せぬエラー | 理由:
| 解決策:
|
エラーメッセージ | 説明 | 解決策 |
---|---|---|
入札応答の | 理由:
| 解決策:
|
x-fb-an-errors
HTTP ヘッダーを取得し、ログに記録してください。com.facebook.ads.BidderTokenProvider.getBidderToken()
、iOSの場合は [FBAdSettings bidderToken]
を呼び出し、返された文字列を入札リクエストの buyeruid
フィールドに送信することによって、Audience Network SDKから入札者トークンを取得していることを確認してください。ifa
フィールドに正しいデバイスIDを送信していることを確認してください(Androidの場合は AdvertisingIdClient.getAdvertisingIdInfo(context).getId()
、iOSの場合は [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]
)。dnt: 0
(do-not-track) が渡されることを確認してください。