Nhóm dàn xếp
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
API AdMob cho phép bạn tạo, liệt kê và cập nhật các nhóm dàn xếp, bao gồm:
- Chỉ định tiêu chí nhắm mục tiêu theo nhóm dàn xếp
bao gồm cả việc nhắm mục tiêu theo khu vực, định dạng, nền tảng và IDFA
- Thêm các dòng nhóm dàn xếp mới
cho một nhóm dàn xếp hiện có
- Xem những nhóm dàn xếp nào là một phần của thử nghiệm A/B dàn xếp và những gì
các dòng nhóm dàn xếp thuộc về từng biến thể: A hoặc B
Ví dụ
Khi tạo thông tin đăng nhập OAuth 2.0,
bạn đã sẵn sàng bắt đầu sử dụng API AdMob. Để yêu cầu quyền truy cập bằng OAuth 2.0,
ứng dụng của bạn cũng sẽ cần thông tin về phạm vi.
Dưới đây là thông tin về phạm vi của OAuth 2.0:
Phạm vi |
Ý nghĩa |
https://www.googleapis.com/auth/admob.monetization |
Xem, tạo và chỉnh sửa các chế độ cài đặt kiếm tiền trong AdMob.
|
https://www.googleapis.com/auth/admob.readonly |
Xem tất cả dữ liệu AdMob. Quá trình này có thể bao gồm cả tài khoản
thông tin, chế độ cài đặt khoảng không quảng cáo và dàn xếp, báo cáo và dữ liệu khác.
Tuy nhiên, nữ liệu này không bao gồm dữ liệu nhạy cảm (chẳng hạn như thông tin về thanh toán hoặc thông tin chiến dịch).
|
Tạo
Để tạo một nhóm dàn xếp, bạn phải chỉ định tiêu chí nhắm mục tiêu theo nhóm dàn xếp
bao gồm cả đơn vị quảng cáo có liên quan. Ví dụ sau đây sẽ tạo một phương thức
nhóm dàn xếp cho quảng cáo xen kẽ trên Android cho 2 đơn vị quảng cáo. Một nhóm dàn xếp
sẽ được thêm vào lúc tạo nguồn quảng cáo GUID. Bạn không cần thêm
mạng AdMob vì miền này sẽ được thêm tại thời điểm tạo theo mặc định.
Trong đoạn mã bên dưới, hãy thay thế pub-XXXXXXXXXXXXXXXX
bằng nhà xuất bản của bạn
Mã nhận dạng.
Sau đó, thay thế YYYYYYYYYY
bằng 10 chữ số cuối của đơn vị quảng cáo của bạn
Mã nhận dạng, đang tuân thủ
sang định dạng:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY
Do có hai đơn vị quảng cáo trong ví dụ này, nên YYYYY11111
đề cập đến quảng cáo đầu tiên
và WWWWW11111
đến mối liên kết của đơn vị quảng cáo đầu tiên. YYYYY22222
và
WWWWW22222
là mối liên kết đơn vị quảng cáo và đơn vị quảng cáo thứ hai.
curl (dòng lệnh)
Thay thế WWWWWWWWWW
bằng mã liên kết đơn vị quảng cáo của bạn. Mã liên kết đơn vị quảng cáo
có thể được tìm thấy bằng cách sử dụng
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"
}
}
}
Danh sách
Thay thế pub-XXXXXXXXXXXXXXXX
bằng nhà xuất bản của bạn
Mã nhận dạng để xem các nhóm dàn xếp của mình.
curl (dòng lệnh)
Yêu cầu mẫu:
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)"
Câu trả lời mẫu:
{
"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"
}
},
}]
}
Bản vá
Dưới đây là danh sách trường
khẩu trang
để cập nhật nhóm dàn xếp. Nội dung cập nhật đối với các trường lặp lại, chẳng hạn như các mục trong một
hãy thay thế hoàn toàn các giá trị hiện có bằng các giá trị mới. Nội dung cập nhật cho từng tài khoản
các giá trị trong bản đồ có thể được thực hiện thông qua việc lập chỉ mục bằng khoá.
Các mặt nạ trường sau đây được hỗ trợ cho nội dung cập nhật về nhóm dàn xếp:
targeting.adUnitIds
mediationGroupLines[mediationGroupLineId]
mediationGroupLines[mediationGroupLineId].state
mediationGroupLines[mediationGroupLineId].adUnitMappings[adUnitId]
Để cập nhật một nhóm dàn xếp bằng một dòng nhóm dàn xếp mới, hãy sử dụng một dòng
số âm của mediationGroupLineId
. Cách cập nhật tính năng dàn xếp hiện tại
nhóm dàn xếp, hãy tham chiếu đến mã dòng của nhóm dàn xếp trong cả update_mask
và
tải trọng như bên dưới.
"updateMask" {
paths: "mediation_group_lines["123"].ad_unit_mappings["456"]"
}
"mediationGroup" {
"mediationGroupLines": {
"123": {
"id": "123"
"adUnitMappings": {
"456": "newAdUnitMappingId"
}
}
}
}
curl (dòng lệnh)
Ví dụ dưới đây thêm 3 dòng dàn xếp mới vào một nhóm dàn xếp hiện có.
updateMask
bao gồm 3 dòng nhóm dàn xếp có phủ định riêng biệt
làm trình giữ chỗ:
updateMask=mediationGroupLines["-1"],mediationGroupLines["-2"],mediationGroupLines["-3"]
Bạn cần dịch các ký tự đặc biệt vì tất cả các URL cần phải tuân theo
cú pháp do thông số kỹ thuật Giá trị nhận dạng tài nguyên thống nhất (URI) chỉ định,
để updateMask
trở thành:
updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D
Để chạy ví dụ sau, hãy thay thế pub-XXXXXXXXXXXXXXXX
bằng
mã nhà xuất bản và ZZZZZZZZZZ
cùng với mã nhóm dàn xếp của bạn. Dàn xếp
Bạn có thể tìm thấy mã nhóm trong giao diện người dùng AdMob hoặc thông qua accounts.mediationGroups:list
.
Thay thế YYYYYYYYYY
bằng 10 chữ số cuối của đơn vị quảng cáo của bạn
ID, theo định dạng:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY`
Thay thế WWWWWWWWWW
bằng mã liên kết đơn vị quảng cáo của bạn. Mã liên kết đơn vị quảng cáo
có thể được tìm thấy bằng cách sử dụng
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
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-08-31 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-08-31 UTC."],[[["\u003cp\u003eThe AdMob API allows you to manage mediation groups, enabling you to create, update, and list them to optimize ad performance.\u003c/p\u003e\n"],["\u003cp\u003eDefine targeting criteria for mediation groups, including platform, format, regions, and IDFA, to control ad delivery to specific audiences.\u003c/p\u003e\n"],["\u003cp\u003eModify existing mediation groups by adding new mediation group lines, allowing you to introduce or adjust ad sources within a group.\u003c/p\u003e\n"],["\u003cp\u003eAccess information about mediation groups participating in A/B experiments and their respective variants, facilitating performance comparisons and optimization.\u003c/p\u003e\n"]]],[],null,["# Mediation groups\n\nThe AdMob API lets you create, list, and update mediation groups, including:\n\n- Specifying [mediation group targeting](/admob/api/reference/rest/v1beta/accounts.mediationGroups#MediationGroupTargeting) including regions, format, platform, and IDFA targeting\n- Adding new [mediation group lines](/admob/api/reference/rest/v1beta/MediationGroupLine) to an existing mediation group\n- Viewing which mediation groups are part of a mediation A/B experiment and what mediation group lines belong to each variant: A or B\n\nExamples\n--------\n\nWith [OAuth 2.0 credentials created](/admob/api/v1/getting-started#credentials),\nyou're ready to start using the AdMob API. To request access using OAuth 2.0,\nyour application will also need the scope information.\n\nHere's the OAuth 2.0 scope information:\n\n\u003cbr /\u003e\n\n| Scope | Meaning |\n|------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `https://www.googleapis.com/auth/admob.monetization` | See, create, and edit your AdMob monetization settings. |\n| `https://www.googleapis.com/auth/admob.readonly` | See all AdMob data. This may include account information, inventory and mediation settings, reports, and other data. This doesn't include sensitive data, such as payments or campaign details. |\n\n\u003cbr /\u003e\n\n### Create\n\nTo create a mediation group, you must specify the [mediation group targeting](/admob/api/reference/rest/v1beta/accounts.mediationGroups#MediationGroupTargeting)\ninformation, including the relevant ad units. The following example creates a new\nmediation group for Android interstitial ads for 2 ad units. One mediation group\nline is added at creation for the InMobi ad source. You don't need to include\nthe AdMob network as it will be added at creation time by default.\n\nIn the code snippet below, replace `pub-XXXXXXXXXXXXXXXX` with your [publisher\nID](//support.google.com/admob/answer/2784578).\n\nThen, replace `YYYYYYYYYY` with the last 10 digits of your [ad unit\nID](//support.google.com/admob/answer/7356431), complying\nto the format: \n\n ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY\n\nAs there are two ad units in this example, `YYYYY11111` refers to the first ad\nunit and `WWWWW11111` to the first ad unit's mapping. `YYYYY22222` and\n`WWWWW22222` refer to the second ad unit and ad unit mapping. \n\n### curl (command line)\n\nReplace `WWWWWWWWWW` with your ad unit mapping ID. The ad unit mapping ID\ncan be found using the\n[`accounts.adUnits.adUnitMappings.list`](/admob/api/reference/rest/v1beta/accounts.adUnits.adUnitMappings/list)\nmethod. \n\n```\n curl --http1.0 -X POST https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups\n-H \"Content-Type:application/json\"\n-H \"$(oauth2l header --json path_to_credentials_json --scope admob.monetization)\"\n--data @- \u003c\u003c EOF\n{\n \"displayName\": \"Test Mediation Group\"\n \"targeting\": {\n \"platform\": \"ANDROID\",\n \"format\": \"INTERSTITIAL\"\n \"adUnitIds\":[\"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111\", \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222\"}\n }\n \"mediationGroupLines\": {\n \"-1\": {\n \"displayName\": \"test line\",\n \"adSourceId\": \"7681903010231960328\",\n \"cpmMode\": \"MANUAL\",\n \"cpmMicros\": \"150000\",\n \"state\": \"ENABLED\",\n \"adUnitMappings\": {\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY11111/adUnitMappings/WWWWW11111\",\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY22222/adUnitMappings/WWWWW22222\"\n }\n }\n}\n```\n\n### List\n\nReplace `pub-XXXXXXXXXXXXXXXX` with your [publisher\nID](//support.google.com/admob/answer/2784578) to view your mediation groups. \n\n### curl (command line)\n\nSample request: \n\n```\ncurl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups \\\n-H \"$(oauth2l header --json path_to_credentials_json --scope admob.monetization)\"\n```\n\nSample response: \n\n```transact-sql\n{\n\"/admob/api/reference/rest/v1beta/accounts.mediationGroups\": [\n {\n \"name\": \"accounts/\u003cvar translate=\"no\"\u003epub-XXXXXXXXXXXXXXXX\u003c/var\u003e/mediationGroups/\u003cvar translate=\"no\"\u003eZZZZZZZZZZ\u003c/var\u003e\",\n \"mediationGroupId\": \"\u003cvar translate=\"no\"\u003eZZZZZZZZZZ\u003c/var\u003e\",\n \"displayName\": \"Test Mediation Group\",\n \"state\": \"ENABLED\",\n \"state\": \"NOT_RUNNING\",\n \"targeting\": {\n \"platform\": \"iOS\",\n \"format\": \"BANNER\",\n \"targetedRegionCodes\": \"[CA]\",\n \"adUnits\": [\"YYYYY11111\", \"YYYYY22222\"]\n },\n \"mediationGroupLines\": {\n \"11111111111111111\": {\n \"id\": \"11111111111111111\",\n \"displayName\": \"AdMob Network\",\n \"adSourceId\": \"5450213213286189855\",\n \"cpmMode\": \"LIVE\",\n \"state\": \"ENABLED\",\n \"experimentVariant\": \"ORIGINAL\"\n },\n \"22222222222222222\": {\n \"id\": \"22222222222222222\",\n \"displayName\": \"test line\",\n \"adSourceId\": \"7681903010231960328\",\n \"cpmMode\": \"MANUAL\",\n \"cpmMicros\": \"150000\",\n \"adUnitMappings\": {\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY11111\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY11111/adUnitMappings/WWWWW11111\",\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYY22222\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYY22222/adUnitMappings/WWWWW22222\"\n },\n \"state\": \"ENABLED\",\n \"experimentVariant\": \"ORIGINAL\"\n }\n },\n }]\n}\n```\n\n### Patch\n\nHere is the list of [field\nmasks](/protocol-buffers/docs/reference/java/com/google/protobuf/FieldMask)\nto update a mediation group. Updates to repeated fields, such as items in a\nlist, fully replace existing values with new values. Updates to individual\nvalues in a map can be done through indexing by the key.\n\nThe following field masks are supported for mediation group updates:\n\n- `targeting.adUnitIds`\n- `mediationGroupLines[mediationGroupLineId]`\n- `mediationGroupLines[mediationGroupLineId].state`\n- `mediationGroupLines[mediationGroupLineId].adUnitMappings[adUnitId]`\n\nTo update a mediation group with a new mediation group line, use a distinct\nnegative number for the `mediationGroupLineId`. To update existing mediation\ngroup lines, reference the mediation group line ID in both the `update_mask` and\nthe payload as seen below. \n\n \"updateMask\" {\n paths: \"mediation_group_lines[\"123\"].ad_unit_mappings[\"456\"]\"\n }\n\n \"mediationGroup\" {\n \"mediationGroupLines\": {\n \"123\": {\n \"id\": \"123\"\n \"adUnitMappings\": {\n \"456\": \"newAdUnitMappingId\"\n }\n }\n }\n }\n\n### curl (command line)\n\nThe example below adds 3 new mediation lines to an existing mediation group.\nThe `updateMask` includes the 3 mediation group lines with distinct negative\nvalues as the placeholder:\n\n`updateMask=mediationGroupLines[\"-1\"],mediationGroupLines[\"-2\"],mediationGroupLines[\"-3\"]`\n\nYou need to translate special characters because all URLs need to conform to\nthe syntax specified by the Uniform Resource Identifier (URI) specification,\nso the `updateMask` becomes:\n\n`updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D`\n\nTo run the following example, replace `pub-XXXXXXXXXXXXXXXX` with your\npublisher ID and `ZZZZZZZZZZ` with your mediation group ID. The mediation\ngroup ID can be found in the AdMob UI or by using the [`accounts.mediationGroups:list`](/admob/api/reference/rest/v1beta/accounts.mediationGroups/list)\nmethod.\n\nReplace `YYYYYYYYYY` with the last 10 digits of your [ad unit\nID](//support.google.com/admob/answer/7356431), following the format: \n\n ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY`\n\nReplace `WWWWWWWWWW` with your ad unit mapping ID. The ad unit mapping ID\ncan be found using the\n[`accounts.adUnits.adUnitMappings.list`](/admob/api/reference/rest/v1beta/accounts.adUnits.adUnitMappings/list)\nmethod. \n\n```\ncurl --http1.0 -X PATCH https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/mediationGroups/ZZZZZZZZZZ?\nupdateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D\n-H \"Content-Type:application/json\"\n-H \"$(oauth2l header --json path_to_credentials_json --scope admob.monetization)\"\n--data @- \u003c\u003c EOF\n{\n\"mediationGroupLines\": {\n \"-1\": {\n \"displayName\": \"test line 2\",\n \"adSourceId\": \"7681903010231960458\",\n \"cpmMode\": \"MANUAL\",\n \"cpmMicros\": \"150000\",\n \"state\": \"ENABLED\",\n \"adUnitMappings\": {\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW\"\n }\n},\n\"-2\": {\n \"displayName\": \"test line 3\",\n \"adSourceId\": \"7681903010231960328\",\n \"cpmMode\": \"MANUAL\",\n \"cpmMicros\": \"120000\",\n \"state\": \"ENABLED\",\n \"adUnitMappings\": {\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW\"\n }\n},\n\"-3\": {\n \"displayName\": \"test line 4\",\n \"adSourceId\": \"7681903010231960328\",\n \"cpmMode\": \"MANUAL\",\n \"cpmMicros\": \"130000\",\n \"state\": \"ENABLED\",\n \"adUnitMappings\": {\n \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY\": \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/WWWWWWWWWW\"\n }\n }\n}\n}\nEOF\n```"]]