您可以使用 AdMob API 建立、列出及更新中介服務群組,包括:
- 指定中介服務群組指定目標 包括區域、格式、平台和廣告識別碼
- 新增中介服務群組行 到現有的中介服務群組
- 查看要參與中介服務 A/B 實驗的中介服務群組和何者 每個變化版本就屬於中介服務群組:A 或 B
範例
建立 OAuth 2.0 憑證後, 您現在可以開始使用 AdMob API。如要透過 OAuth 2.0 要求存取權,請按照下列步驟操作: 應用程式也需要範圍資訊
OAuth 2.0 範圍資訊如下:
範圍 | 意義 |
---|---|
https://www.googleapis.com/auth/admob.monetization |
查看、建立及編輯您的 AdMob 營利設定。 |
https://www.googleapis.com/auth/admob.readonly |
查看所有 AdMob 資料。其中可能包括帳戶 廣告空間和中介服務設定、報表等資料 但不含付款或廣告活動詳細資料等機密資料。 |
建立
如要建立中介服務群組,您必須指定中介服務群組指定目標 資訊,包括相關廣告單元以下範例會建立新的 2 個廣告單元的 Android 插頁式廣告中介服務群組。一個中介服務群組 系統會在建立 InMobi 廣告來源時新增一行。您不需要提供 建立 AdMob 聯播網。
在下方程式碼片段中,將 pub-XXXXXXXXXXXXXXXX
替換成您的發布商
ID:
接著將 YYYYYYYYYY
換成廣告單元的末 10 碼
ID,需遵守
轉換為格式:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY
在這個範例中,有兩個廣告單元,YYYYY11111
指的是第一則廣告
和 WWWWW11111
對應至第一個廣告單元的對應。「YYYYY22222
」和
WWWWW22222
則是第二個廣告單元和廣告單元對應。
curl (指令列)
將 WWWWWWWWWW
換成廣告單元對應 ID。廣告單元對應 ID
也能透過
accounts.adUnits.adUnitMappings.list
敬上
方法。
curl --http1.0 -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups -H "Content-Type:application/json" -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" --data @- << EOF { "displayName": "Test Mediation Group" "targeting": { "platform": "ANDROID", "format": "INTERSTITIAL" "adUnitIds":["ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111", "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222"} } "mediationGroupLines": { "-1": { "displayName": "test line", "adSourceId": "7681903010231960328", "cpmMode": "MANUAL", "cpmMicros": "150000", "state": "ENABLED", "adUnitMappings": { "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY11111/adUnitMappings/WWWWW11111", "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY22222/adUnitMappings/WWWWW22222" } } }
清單
將 pub-XXXXXXXXXXXXXXXX
替換成您的發布商
ID 來查看中介服務群組。
curl (指令列)
要求範例:
curl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups \ -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)"
回應範例:
{ "mediationGroups": [ { "name": "accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ", "mediationGroupId": "ZZZZZZZZZZ", "displayName": "Test Mediation Group", "state": "ENABLED", "state": "NOT_RUNNING", "targeting": { "platform": "iOS", "format": "BANNER", "targetedRegionCodes": "[CA]", "adUnits": ["YYYYY11111", "YYYYY22222"] }, "mediationGroupLines": { "11111111111111111": { "id": "11111111111111111", "displayName": "AdMob Network", "adSourceId": "5450213213286189855", "cpmMode": "LIVE", "state": "ENABLED", "experimentVariant": "ORIGINAL" }, "22222222222222222": { "id": "22222222222222222", "displayName": "test line", "adSourceId": "7681903010231960328", "cpmMode": "MANUAL", "cpmMicros": "150000", "adUnitMappings": { "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY11111/adUnitMappings/WWWWW11111", "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY22222/adUnitMappings/WWWWW22222" }, "state": "ENABLED", "experimentVariant": "ORIGINAL" } }, }] }
修補程式
以下是 欄位清單 口罩 更新中介服務群組。重複欄位 (例如 清單,將現有值完全取代為新的值。更新個別項目 也可以藉由索引鍵建立索引,完成對應中不同的值
中介服務群組更新支援下列欄位遮罩:
targeting.adUnitIds
mediationGroupLines[mediationGroupLineId]
mediationGroupLines[mediationGroupLineId].state
mediationGroupLines[mediationGroupLineId].adUnitMappings[adUnitId]
如要更新中介服務群組中的新中介服務群組行,請使用
mediationGroupLineId
的負數。如何更新現有的中介服務
群組行,請同時參照 update_mask
和
酬載,如下所示。
"updateMask" {
paths: "mediation_group_lines["123"].ad_unit_mappings["456"]"
}
"mediationGroup" {
"mediationGroupLines": {
"123": {
"id": "123"
"adUnitMappings": {
"456": "newAdUnitMappingId"
}
}
}
}
curl (指令列)
下方範例會在現有的中介服務群組中加入 3 行新的中介服務行,
updateMask
包含 3 行中介服務群組,且包含不重複的負數
做為預留位置的值:
updateMask=mediationGroupLines["-1"],mediationGroupLines["-2"],mediationGroupLines["-3"]
所有網址都必須符合
統一資源識別碼 (URI) 規格指定的語法
因此 updateMask
會變為:
updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D
如要執行下列範例,請將 pub-XXXXXXXXXXXXXXXX
替換為
以及您的中介服務群組 ID 的 ZZZZZZZZZZ
。中介服務
如要查看群組 ID,請使用 AdMob UI 或 accounts.mediationGroups:list
方法。
將 YYYYYYYYYY
換成廣告單元的最後 10 位數字
ID 後方,格式如下:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY`
將 WWWWWWWWWW
換成廣告單元對應 ID。廣告單元對應 ID
也能透過
accounts.adUnits.adUnitMappings.list
敬上
方法。
curl --http1.0 -X PATCH https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ? updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D -H "Content-Type:application/json" -H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" --data @- << EOF { "mediationGroupLines": { "-1": { "displayName": "test line 2", "adSourceId": "7681903010231960458", "cpmMode": "MANUAL", "cpmMicros": "150000", "state": "ENABLED", "adUnitMappings": { "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW" } }, "-2": { "displayName": "test line 3", "adSourceId": "7681903010231960328", "cpmMode": "MANUAL", "cpmMicros": "120000", "state": "ENABLED", "adUnitMappings": { "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW" } }, "-3": { "displayName": "test line 4", "adSourceId": "7681903010231960328", "cpmMode": "MANUAL", "cpmMicros": "130000", "state": "ENABLED", "adUnitMappings": { "ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY": "accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW" } } } } EOF