广告单元映射
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
广告单元映射是指映射到 AdMob 广告单元并使其能够向第三方广告联盟发出广告请求的第三方配置设置。
创建中介组时,系统会将广告单元映射用作每个中介组行的参数,用作指定广告单元向第三方广告联盟发出请求的设置。与 AdMob 界面不同,广告单元映射需要在中介组和中介组行之外单独创建。创建后,您可以列出所有广告单元映射,并在使用新的广告单元映射创建或更新中介组行时将其用作参数。
示例
创建 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 数据。这可能包括账号信息、广告资源和中介设置、报告以及其他数据。
此类数据不包括敏感数据,例如付款或广告系列详细信息。
|
开始创建您的首个广告单元映射:
curl(命令行)
使用 curl 的请求
加载客户端密钥文件并生成授权凭据。
首次执行此步骤时,系统会要求您在浏览器中接受授权提示。在接受之前,请确保您已使用有权访问 AdMob API 的 Google 账号登录。您的应用将获得授权,能够代表当前登录的账号访问数据。
对于身份验证和授权,我们建议使用 oauth2l,这是一款使用 Google OAuth 2.0 的简单命令行工具。安装 oauth2l 并运行以下命令,将 path_to_credentials_json 替换为您在注册云应用时下载的 credentials.json
文件的路径。首次运行时,该命令会一步步引导您完成 OAuth 2.0 授权流程。后续运行会自动刷新令牌。
oauth2l header --json path_to_credentials_json --scope admob.readonly,admob.monetization
列出广告来源。
将 pub-XXXXXXXXXXXXXXXX 替换为您的发布商 ID,即可获取 AdMob 广告来源信息。请参阅相关说明,了解如何查找您的发布商 ID。
curl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adSources \
-H "$(oauth2l header --json path_to_credentials_json --scope admob.readonly)"
示例响应:
{
"adSources": [
{
"name": "accounts/pub-XXXXXXXXXXXXXXXX/adSources/5450213213286189855",
"adSourceId": "5450213213286189855",
"title": "AdMob Network",
}
]
}
列出适配器。
将 SSSSSSSSSSSSSSSSSSSS 替换为所需适配器的广告来源 ID。
使用以下命令获取适配器列表:
curl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adSources/SSSSSSSSSSSSSSSSSSSS/adapters \
-H "$(oauth2l header --json path_to_credentials_json --scope admob.readonly)"
以下是 ID 为 5450213213286189855
的 AdMob 广告联盟广告来源的响应示例:
{
"adapters": [
{
"name": "accounts/pub-XXXXXXXXXXXXXXXX/adSources/5450213213286189855/adapters/1",
"adapterId": "1",
"title": "AdMob Network Android SDK",
"platform": "ANDROID",
"formats": ["BANNER", "INTERSTITIAL",
"REWARDED", "NATIVE", "REWARDED_INTERSTITIAL", "APP_OPEN"],
"adapterConfigMetadata": [{
"adapterConfigMetadataId": "118",
"adapterConfigMetadataLabel": "Ad unit ID"
}]
},
{
"name": "accounts/pub-XXXXXXXXXXXXXXXX/adSources/5450213213286189855/adapters/2",
"adapterId": "2",
"title": "AdMob Network iOS SDK",
"platform": "ANDROID",
"formats": ["BANNER", "INTERSTITIAL",
"REWARDED", "NATIVE", "REWARDED_INTERSTITIAL", "APP_OPEN"],
"adapterConfigMetadata": [{
"adapterConfigMetadataId": "119",
"adapterConfigMetadataLabel": "Ad unit ID"
}]
}]
}
创建广告单元映射关系。
将 YYYYYYYYYY 替换为您的广告单元 ID 片段。广告单元 ID 片段是广告单元 ID 的最后 10 位数,格式为“ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY”。请参阅查找广告单元 ID 的说明。
curl --http1.0 -X POST \
https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings \
-H "$(oauth2l header --json path_to_credentials_json --scope admob.monetization)" \
-H "Content-Type: application/json" --data @- << EOF
{
"name": "InMobi ad unit mapping",
"adapterId": "8",
"adUnitConfigurations": {
"174": "inMobiAccountId",
"176": "inMobiPlacementId"
}
}
EOF
列出所有广告单元映射。
将 YYYYYYYYYY 替换为您的广告单元 ID 片段。广告单元 ID 片段是广告单元 ID 的后 10 位数字,格式为“ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY”。请参阅查找广告单元 ID 的说明。
curl --http1.0 -X GET \
https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings \
-H "$(oauth2l header --json path_to_credentials_json --scope admob.readonly)"
{
"adUnitMappingName":
"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/ZZZZZZZZZZ"
{
"adapterId": "1",
"state": "ENABLED",
"adUnitConfigurations": {
"adUnitMappingConfigurationKey": "adUnitId",
"adUnitMappingConfigurationValue": "118",
}
}
}
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-31。
[null,null,["最后更新时间 (UTC):2025-08-31。"],[[["\u003cp\u003eAd unit mappings link your AdMob ad units to third-party ad networks, allowing them to request ads from those networks.\u003c/p\u003e\n"],["\u003cp\u003eThese mappings are crucial for mediation groups, directing specific ad units to make requests from external ad sources.\u003c/p\u003e\n"],["\u003cp\u003eUnlike the AdMob UI, you must create and manage ad unit mappings separately through the AdMob API.\u003c/p\u003e\n"],["\u003cp\u003eOnce created, you can utilize these mappings when establishing or modifying mediation group lines.\u003c/p\u003e\n"],["\u003cp\u003eYou can get started with AdMob API by creating OAuth 2.0 credentials and generating authorization credentials using your client secret file.\u003c/p\u003e\n"]]],["Ad unit mappings are configured settings for third-party ad networks. They are created independently of mediation groups and their lines, and are used as parameters within those lines to facilitate ad requests. To use, first generate OAuth 2.0 credentials. Then, list ad sources and adapters, obtain the ad unit ID fragment, and create the ad unit mapping via a POST request. Finally, list the newly created mapping via a GET request.\n"],null,["# Ad unit mappings are third-party configuration settings that map to an AdMob ad\nunit and enable it to make an ad request to a third-party ad network.\n\nWhen creating a mediation group, ad unit mappings are used as a parameter for\neach [mediation group line](/admob/api/reference/rest/v1beta/accounts.mediationGroups)\nas settings for the specified ad unit to make third-party ad network requests.\nUnlike on the AdMob UI, ad unit mappings need to be [created](/admob/api/reference/rest/v1beta/accounts.adUnits.adUnitMappings/create)\nindependently outside of mediation groups and mediation group lines.\nAfter creation, you can [list](/admob/api/reference/rest/v1beta/accounts.adUnits.adUnitMappings/list)\nall ad unit mappings and use them as a parameter when creating or updating\nmediation group lines with new ad unit mappings.\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\n2.0, your 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\nGet started on creating your first ad unit mapping: \n\n### curl (command line)\n\n### Requests using curl\n\n1. Load the [client secrets file](https://console.cloud.google.com/apis/credentials) and generate authorization credentials.\n\n The first time you perform this step you'll be asked to accept an\n authorization prompt in your browser. Before accepting, make sure you're\n signed in with a Google Account that has access to the AdMob API. Your\n application will be authorized to access data on behalf of whichever\n account is currently logged in.\n\n For authentication and authorization, we recommend using\n [oauth2l](//github.com/google/oauth2l), a simple command-line tool for\n working with Google OAuth 2.0. Install oauth2l and run the\n command below, replacing \u003cvar translate=\"no\"\u003epath_to_credentials_json\u003c/var\u003e with a path\n to a `credentials.json` file that you download when registering your\n cloud application. For the first run, the command walks you through the\n OAuth 2.0 authorization flow. Subsequent runs refresh the token\n automatically. \n\n ```\n oauth2l header --json path_to_credentials_json --scope admob.readonly,admob.monetization\n ```\n2. List ad sources.\n\n Get AdMob ad source information by replacing \u003cvar translate=\"no\"\u003epub-XXXXXXXXXXXXXXXX\u003c/var\u003e\n with your publisher ID. See the\n [instructions](//support.google.com/admob/answer/2784578) on how to find\n your publisher ID. \n\n ```\n curl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adSources \\\n -H \"$(oauth2l header --json path_to_credentials_json --scope admob.readonly)\"\n ```\n\n Sample response: \n\n ```text\n {\n \"adSources\": [\n {\n \"name\": \"accounts/pub-XXXXXXXXXXXXXXXX/adSources/5450213213286189855\",\n \"adSourceId\": \"5450213213286189855\",\n \"title\": \"AdMob Network\",\n }\n ]\n }\n ```\n3. List the adapters.\n\n Replace \u003cvar translate=\"no\"\u003eSSSSSSSSSSSSSSSSSSSS\u003c/var\u003e with the ad source ID for the\n adapters of interest.\n\n Use the following command to get a list of adapters: \n\n ```\n curl --http1.0 -X GET https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adSources/SSSSSSSSSSSSSSSSSSSS/adapters \\\n -H \"$(oauth2l header --json path_to_credentials_json --scope admob.readonly)\"\n ```\n\n Sample response for the AdMob Network ad source with ID\n `5450213213286189855`: \n\n ```scdoc\n {\n \"adapters\": [\n {\n \"name\": \"accounts/pub-XXXXXXXXXXXXXXXX/adSources/5450213213286189855/adapters/1\",\n \"adapterId\": \"1\",\n \"title\": \"AdMob Network Android SDK\",\n \"platform\": \"ANDROID\",\n \"formats\": [\"BANNER\", \"INTERSTITIAL\",\n \"REWARDED\", \"NATIVE\", \"REWARDED_INTERSTITIAL\", \"APP_OPEN\"],\n \"adapterConfigMetadata\": [{\n \"adapterConfigMetadataId\": \"118\",\n \"adapterConfigMetadataLabel\": \"Ad unit ID\"\n }]\n },\n {\n \"name\": \"accounts/pub-XXXXXXXXXXXXXXXX/adSources/5450213213286189855/adapters/2\",\n \"adapterId\": \"2\",\n \"title\": \"AdMob Network iOS SDK\",\n \"platform\": \"ANDROID\",\n \"formats\": [\"BANNER\", \"INTERSTITIAL\",\n \"REWARDED\", \"NATIVE\", \"REWARDED_INTERSTITIAL\", \"APP_OPEN\"],\n \"adapterConfigMetadata\": [{\n \"adapterConfigMetadataId\": \"119\",\n \"adapterConfigMetadataLabel\": \"Ad unit ID\"\n }]\n }]\n }\n ```\n4. Create an ad unit mapping.\n\n Replace \u003cvar translate=\"no\"\u003eYYYYYYYYYY\u003c/var\u003e with your ad unit ID fragment. The ad unit\n ID fragment is the last 10 digits of your ad unit ID which follows\n the format \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY\". See instructions to\n [find your ad unit ID](//support.google.com/admob/answer/7356431). \n\n ```\n curl --http1.0 -X POST \\\n https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings \\\n -H \"$(oauth2l header --json path_to_credentials_json --scope admob.monetization)\" \\\n -H \"Content-Type: application/json\" --data @- \u003c\u003c EOF\n {\n \"name\": \"InMobi ad unit mapping\",\n \"adapterId\": \"8\",\n \"adUnitConfigurations\": {\n \"174\": \"inMobiAccountId\",\n \"176\": \"inMobiPlacementId\"\n }\n }\n EOF\n ```\n5. List all ad unit mappings.\n\n Replace \u003cvar translate=\"no\"\u003eYYYYYYYYYY\u003c/var\u003e with your ad unit ID fragment. The ad unit\n ID fragment is the last 10 digits of your ad unit ID from\n the format \"ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY\". See instructions to\n [find your ad unit ID](//support.google.com/admob/answer/7356431). \n\n ```\n curl --http1.0 -X GET \\\n https://admob.googleapis.com/v1beta/accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings \\\n -H \"$(oauth2l header --json path_to_credentials_json --scope admob.readonly)\"\n ``` \n\n ```text\n {\n \"adUnitMappingName\":\n \"accounts/pub-XXXXXXXXXXXXXXXX/adUnits/YYYYYYYYYY/adUnitMappings/ZZZZZZZZZZ\"\n {\n \"adapterId\": \"1\",\n \"state\": \"ENABLED\",\n \"adUnitConfigurations\": {\n \"adUnitMappingConfigurationKey\": \"adUnitId\",\n \"adUnitMappingConfigurationValue\": \"118\",\n }\n }\n }\n ```"]]