行動應用程式出價目前僅供特定發佈商使用。

伺服器對伺服器出價

內部中介服務未公開供用戶使用

使用 Audience Network 的內部出價目前為封閉測試版,未公開供用戶使用。若有任何變更,我們將提供進一步的更新。

您可以改為透過我們合作的其中一個中介服務平台存取 Audience Network 出價。

本頁面:

Facebook Audience Network 支援行動應用程式及行動網站的出價。行動應用程式出價整合可以從行動用戶傳送到我們的伺服器,或是從您的伺服器傳送到我們的伺服器。本概覽將涵蓋應用程式出價的一般概念。

簡介

什麼是應用程式出價

應用程式出價可讓發佈商即時將所有廣告機會提供給多家廣告聯播網,為自家的廣告供應量建立公平、公開的競價機制。每個需求來源都有機會競爭,並在最高價時贏得每個曝光次數。

為何使用應用程式出價

  • 即時競價是最佳化每個廣告要求的機會。
  • 能夠看見廣告供應量的真正價值。
  • 輕鬆維護,只需使用少量的廣告操作資源。

整合架構

應用程式出價是經由實作開放即時出價(ORTB)協定的端點所提供,以提供對個別曝光次數機會的出價。若要執行下列動作,應用程式出價需要 Audience Network SDK:

  • 獲得 buyeruid (在 Audience Network SDK 中稱為 bidderToken )。此權杖是出價要求中的必填欄位,且對每個用戶和每個應用程式都是唯一的;該權杖對其他用戶或應用程式無效。
  • 載入出價回應,並在出價工具得標競價的情況下展示廣告。
  • 記錄曝光次數和點擊次數。

出價流程的關鍵步驟

  1. 獲得出價工具權杖。Audience Network 需要此隱晦字串,才能回應出價要求。
  2. 傳送出價要求並取得出價回應。此為與出價端點的主要互動。在此步驟中,您會傳送 ORTB 出價的要求,然後收到有效的出價回應或收到錯誤。
  3. 執行競價。執行競價,然後從出價回應中選擇一位得標者。多數競價會將即時出價與其他廣告聯播網的預估 CPM(每千次廣告曝光成本)(例如歷史平均每千次廣告曝光成本)進行比較;這樣做是因為部分廣告聯播網不支援即時出價。競價可由下列其中一項執行:
    • 執行您自訂競價邏輯的內部伺服器
    • 第三方競價伺服器
    • 用戶裝置上的用戶端
  4. 使用出價回應擷取廣告。如果 Audience Network 得標競價,請將出價回應的 adm 欄位傳遞至用戶裝置上的 Audience Network SDK,以載入廣告。請注意, adm 欄位不包含實際廣告,其包含允許 SDK 擷取 Audience Network 伺服器廣告的資訊。

整合類型

執行競價(上述出價流程的第三步驟)時,可在用戶端伺服器端進行託管。以下是 3 種不同的整合類型:

伺服器對伺服器整合架構

在伺服器對伺服器整合中,競價伺服器會呼叫 Facebook Audience Network 出價端點和其他所有廣告聯播網,以取得出價回應。接著,競價伺服器會執行競價並挑選得標的出價。此競價伺服器可以是執行已建置之競價邏輯的內部伺服器,也可以是整合 Audience Network 應用程式出價的第三方伺服器。如此一來,您就可以利用伺服器的資源和可用網路來呼叫廣告聯播網的出價端點,同時不需更新用戶端即可對這些端點整合進行變更。


外部廣告伺服器整合

外部廣告伺服器整合允許您透過應用程式出價與現今的瀑布策略中介服務環境橋接,方法是透過與支援應用程式出價的廣告聯播網進行伺服器對伺服器整合,然後將競價得標者傳遞到執行瀑布策略和選擇整體得標廣告聯播網的瀑布策略中介服務平台。此整合代表瀑布策略中介服務環境與應用程式出價之間的過渡期橋接。透過此整合類型,您就不需撰寫自己的競價邏輯。

ORTB 要求/回應和支援的廣告格式

ORTB 要求

我們的出價端點支援 OpenRTB 通訊協定 2.5 版的子集。

注意:請參閱競價伺服器設定指南中的完整要求範例

'id' => string, // platform's auction identifier,
'imp' => vec< // slots to bid on
shape(
'id' => string, // platform's identifier for this slot auction
// only for banner impression opportunities
'banner' => shape(
'w' => int, // width
'h' => int, // height
),
// only for native impression opportunities
'native' => shape(
'w' => int, // width 
'h' => int, // height 
),
// only for video impression opportunities
'video' => shape(
'w' => int, // width
'h' => int, // height
'linearity' => int, // 1 = instream, optional
'ext' => shape(
'videotype' => string, // 'rewarded' for Rewarded Video impression opportunities, optional
),
),
'tagid' => string, // Placement ID
'instl' => int, // interstitial flag, 1 = On, 0 = Off, optional
)
>,
// app details (in-app bidding only)
'app' => shape( 
'publisher' => shape(
'id' => string, // publisher app ID
),
),
'device' => shape(
'ua' => string, // device user-agent
'ifa' => string, // ID sanctioned for advertiser use
// Do not send ip or ipv6 if you are requesting bids from the client device.
// For server-side bid requests set ip or ipv6.
'ip' => string, // device IPv4
'ipv6' => string, // device IPv6
'dnt' => int, // "do not track", 1 = On, 0 = Off, optional
'lmt' => int, // "limit ad tracking", 1 = On, 0 = Off
),
'regs' => shape( // regulations object
'coppa' => int, // US FTC regulations for Children's Online Privacy Protection Act, 1 = On, 0 = Off, optional
),
'user' => shape(
'buyeruid' => string, // Audience Network Identity Token, mandatory
),
'ext' => shape(
'platformid' => string, // Mediation partner Platform ID or publisher FB app ID, mandatory
'authentication_id' => string // Authentication token to validate the originator of the request                     
),
'at' => int, // auction type: 1 = First Price, 2 = Second Price
'tmax' => int, // auction timeout in milliseconds
'test' => int, // 0 = normal, 1 = test-mode (we bid $99.99, but don't pay out), optional

支援的廣告格式

我們目前支援四種類型的廣告,可以透過 OpenRTB 進行要求:橫幅廣告、原生廣告(原生或原生橫幅廣告)和影片廣告(獎勵式或插播影片廣告),以及插頁廣告。注意:橫幅、原生和影片物件是相互排斥的,但需要其中任一個。

以下是出價要求中支援的廣告格式清單:

廣告格式 出價要求中的參數

原生廣告

{'id': ${AUCTION_ID}, 'native': { 'h': -1, 'w': -1 }, 'tagid': ${PLACEMENT_ID}}

原生橫幅廣告

{'id': ${AUCTION_ID}, 'native': { 'h': -1, 'w': -1 }, 'tagid': ${PLACEMENT_ID}}

插頁廣告

{'id': ${AUCTION_ID}, 'banner': { 'h': 0, 'w': 0 }, 'tagid': ${PLACEMENT_ID}, 'instl': 1}

獎勵式影片

{'id': ${AUCTION_ID}, 'video': { 'h': 0, 'w': 0, 'ext': { 'videotype': 'rewarded' } }, 'tagid': ${PLACEMENT_ID}}

獎勵插頁廣告

{'id': ${AUCTION_ID}, 'video': { 'h': 0, 'w': 0, 'ext': { 'videotype': 'rewarded_interstitial' } }, 'tagid': ${PLACEMENT_ID}}

橫幅廣告 - 高:50

{'id': ${AUCTION_ID}, 'banner': { 'h': 50, 'w': -1 }, 'tagid': ${PLACEMENT_ID}}

橫幅廣告 - 高:250*

{'id': ${AUCTION_ID}, 'banner': { 'h': 250, 'w': -1 }, 'tagid': ${PLACEMENT_ID}}

*您可以在此廣告格式的營利管理工具中建立橫幅廣告或中型矩形廣告版位

ORTB 回應

出價回應的有效時間為 30 分鐘,您可以在收到出價回應後的 30 分鐘內隨時要求廣告。任何超過 30 分鐘的出價曝光次數都不需付費。

注意:一旦使用出價回應來要求廣告,您可以在用戶端快取該廣告,但必須在載入廣告後 60 分鐘內顯示。任何超過 60 分鐘的快取廣告曝光次數都不需付費。

1  
'id' => string // platform's request identifier
'seatbid' => vec<
    shape(
        'bid' => vec<
            shape(
                'id' => string, // Our identifier for this bid
                'impid' => string, // platform's identifier for this slot auction
                'price' => float, // Our bid price on CPM basis, in USD
                'adm' => string, // Our creative - see Rendering The Ad
                'nurl' => string, // URL to get if we win the impression
                'lurl' => string, // URL to get if we lose the impression
            )
        >,
    ),
>,
'bidid' => string, // Our identifier for this response
'cur' => string, // bid currency: USD

得標/未得標/收費/逾時通知

我們需要得標未得標收費逾時通知,並備有如 ORTB 中定義的適當未得標代碼。出價回應中會提供 ORTB nurllurlburl。請查看上一節的出價回應範例。若發生出價逾時,我們會提供其他回報路線。

得標通知

出價回應中會提供得標 nurl。您需要在 nurl 中填入出清價格

"https://www.facebook.com/audiencenetwork/nurl/?partner=${PARTNER_FBID}&app=${APP_FBID}&placement=${PLACEMENT_FBID}&auction=${AUCTION_ID}&impression=${IMPRESSION_ID}&request=${BID_REQUEST_ID}&bid=${BID_ID}&ortb_loss_code=0&clearing_price=${AUCTION_PRICE}"
  • ${AUCTION_PRICE}:此應替換為與出價相同單位的競價出清價格(即以 CPM 為基礎的美元)。

未得標通知

未得標 lurl 包含 2 個需要填入的旗幟:

"https://www.facebook.com/audiencenetwork/nurl/?partner=${PARTNER_FBID}&app=${APP_FBID}&placement=${PLACEMENT_FBID}&auction=${AUCTION_ID}&impression=${IMPRESSION_ID}&request=${BID_REQUEST_ID}&bid=${BID_ID}&ortb_loss_code=${AUCTION_LOSS}&clearing_price=${AUCTION_PRICE}"
  • ${AUCTION_LOSS}:此應替換為 ORTB 未得標代碼
  • ${AUCTION_PRICE}:此應替換為與出價相同單位的競價出清價格(即以 CPM 為基礎的美元)。

以下列出不同的未得標代碼及其相應的未得標原因

未得標原因說明ORTB 第 2.5 版未得標代碼

出價回應無效

出價無效(但準時、不是未出價,且有效性足以讓您擷取 nurl)

3

出價逾時*

收到出價回應,但趕不上競價截止時間

2

未出價

未出價意指 HTTP 204(即沒有 nurl 可呼叫),但您可以將我們的回應解譯為未出價(可能是整合問題)。您也可以要求多次曝光的出價,我們會進行部分而非全部的出價。

9

非最高 RTB 出價者

另一個出價者得標,包括進入同一競價的綜合出價(例如非 RTB 交易)。

102

庫存未具現

我們的出價贏得競價,但曝光次數沒有具現(例如頁面長度不足以包含此位置,或使用快取廣告前用戶已退出應用程式。)並非所有合作夥伴都能提供此項(其為非事件),若未提供我們會進行推斷。

4902

已發送到廣告伺服器

如果您在決策過程中的最後一個接觸點將我們的高出價發送到廣告伺服器,會發送此項。由於缺少項次、廣告伺服器否決競價,或庫存無法具現,可能仍會失去曝光次數。

4900

廣告伺服器未挑選 RTB 得標者

我們贏得 RTB 競價,但廣告伺服器否決競價(例如直接)。

4903

得標

我們贏得完整的決策樹,並已在頁面(網路)放置標籤或已快取廣告物件(應用程式)。可能仍然不會產生可檢視的曝光次數。

0

收費通知

當曝光次數回呼在 Audience Network SDK 中觸發時,我們需要收費通知:您需要在 burl 中填入出清價格

"https://www.facebook.com/audiencenetwork/burl/?partner=${PARTNER_FBID}&app=${APP_FBID}&placement=${PLACEMENT_FBID}&auction=${AUCTION_ID}&impression=${IMPRESSION_ID}&request=${BID_REQUEST_ID}&bid=${BID_ID}&ortb_loss_code=0&clearing_price=${AUCTION_PRICE}"
  • ${AUCTION_PRICE}:此應替換為與出價相同單位的競價出清價格(即以 CPM 為基礎的美元)。

逾時通知

若發生出價逾時,我們會提供其他回報路線。其為不需等待出價抵達即可接受呼叫的一般 nurl,格式如下所示:

"https://www.facebook.com/audiencenetwork/nurl/?partner=${PARTNER_FBID}&app=${APP_FBID}&auction=${AUCTION_ID}&ortb_loss_code=2"

注意:${PARTNER_FBID}${APP_FBID}${AUCTION_ID} 應填入適當值。下表提供有關這些值的說明。

參數類型說明

PARTNER_FBID

整數

Facebook 發佈的廣告競價伺服器編號。如果您沒有專屬的廣告競價合作夥伴,請在此使用您的應用程式編號。

APP_FBID

整數

Facebook 發佈的應用程式/企業編號,用於初始化競價。

AUCTION_ID

字串

用戶端產生的競價編號,用於發佈出價要求。

支付款項、競價、可視度和延遲

價格和支付款項

價格為基於 CPM 的美元報價(例如,4.25 代表的意思是,如果我們得標將支付每 1000 次曝光 $4.25 美元)。nurllurl 的出清價格都必須使用相同的單位。發佈商會直接拿到支付款項。

競價機制

我們總是基於最高標出價,這表示我們支付出價的金額,且我們假設將支付全部金額來出價。這表示我們在第二高標中處於劣勢,其他出價工具可以假設他們支付的金額將低於出價金額來出價。

可視度

若是應用程式曝光次數,我們只在曝光次數經檢視後才支付,無論我們是否為出價最高者。

延遲

  • 為了充分減少延遲,請每個 API 呼叫要求單一出價(即如果您要競價五個項目,那就呼叫五次 API,每次單一出價)。
  • 我們不提供區域特定的端點,Facebook 基礎結構將把出價要求路由到最近的資料中心。
  • 使用 HTTP/2 讓網路持續連線。
  • 在出價要求的 ORTB tmax 欄位中填入競價逾時,我們將選擇能夠平衡延遲和效能的出價策略。(請查看上述出價要求範例以瞭解 tmax 的詳細資訊)
  • 為了達成延遲目標,我們可能會延後一些處理來顯示時間(即較快的出價可能意味著廣告顯示速度較慢,而較慢的出價會導致廣告顯示速度較快)。
  • 我們正積極努力改善延遲,目前建議伺服器對伺服器出價的逾時為 800 毫秒。