内部中介不公开提供
内部 Audience Network 竞价现在处于封测阶段,不公开提供。如有变化,我们将提供最新信息。
作为替代方案,您可以通过与我们合作的其中一个中介平台访问 Audience Network 竞价。
完成服务器到服务器竞价集成后,您应在实体设备上使用实际投放的广告完成应用竞价集成测试。若您遇到一些 http 错误或“无竞价”,此版块将帮助您解决实施方面的疑难。
为调试竞价请求,您可以利用 cURL 命令。该命令让您能够在自己的终端发送竞价请求并接收竞价响应。
YOUR_PLACEMENT_ID
YOUR_BUSINESS_ID
YOUR_DEVICE_ID
YOUR_BIDDER_TOKEN
YOUR_PLATFORM_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
。用于显示 HTTP 响应标头的 cURL 命令。
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)
|
需要有效的版位编号 | 在 | 请从商务管理平台找到您的版位编号。选择“管理资产”并在 Android 或 iOS 平台的广告专区下找到版位编号。 |
应用请求中未设置发行商编号。 | 请求中未设置 | 请从公司设置找到您的发行商编号。在左侧菜单中选择“应用”,并找到您的应用编号,将其作为发行商编号 |
所有版位编号必须属于相同应用编号 | 如消息所示,竞价请求中的所有 Audience Network 版位编号应属于相同的应用编号。 | 请在商务管理平台中检查竞价请求中的所有版位编号是否属于相同应用编号。选择“管理资产”并在 Android 或 iOS 平台的广告专区下找到版位编号。 |
值未包含必填且不可留空的 shape 字段 | 您的竞价请求中缺失必填值。 | 必填值:
|
广告格式为必填,广告格式和版位编号的数量应相同 | 请提供非空且有效的广告格式。 | 支持的广告格式:
如需更多信息,请查看支持的广告格式。 |
横幅广告、原生广告和视频广告的对象相互排斥,但您必须选择其中一个 | 对于上述广告格式,存在不同的对象: | 请参阅上文支持的广告格式解决方案。 |
错误消息 | 描述 | 解决方案 |
---|---|---|
无应用匹配网域和公司编号 | 若您在 | 如果您一直遇到此错误,请在 |
应用程序未被授权进行应用竞价 |
| 请联系我们,以将您的应用添加至白名单,或等待应用获得批准。 |
平台未被授权进行应用竞价 |
| 解决方案:
请联系我们,以将您的应用添加至白名单,或等待应用获得批准。 |
意外错误 | 原因:
| 解决方案:
|
错误消息 | 描述 | 解决方案 |
---|---|---|
竞价响应 | 原因:
| 解决方案:
若持续显示 |
x-fb-an-errors
HTTP 标头,以帮助您了解错误原因。com.facebook.ads.BidderTokenProvider.getBidderToken()
和 iOS 上的 [FBAdSettings bidderToken]
,从 Audience Network SDK 获得竞价口令,并将返回的字符串发送到竞价请求的 buyeruid
字段中。ifa
字段发送了正确的设备编号(Android -- AdvertisingIdClient.getAdvertisingIdInfo(context).getId()
、iOS -- [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]
)。dnt: 0
(do-not-track)。