Com a API AdMob, você pode criar, listar e atualizar grupos de mediação, incluindo:
- Especificar a segmentação do grupo de mediação incluindo regiões, formato, plataforma e segmentação de IDFA
- Adição de novas linhas de grupo de mediação. a um grupo de mediação existente
- Ver quais grupos de mediação fazem parte de um experimento A/B de mediação e quais as linhas do grupo de mediação pertencem a cada variante: A ou B
Exemplos
Com as credenciais do OAuth 2.0 criadas, você já pode começar a usar a API AdMob. Para solicitar acesso usando o OAuth 2.0, seu aplicativo também vai precisar dessas informações.
Estas são as informações de escopo do OAuth 2.0:
Escopo | Significado |
---|---|
https://www.googleapis.com/auth/admob.monetization |
Consultar, criar e editar suas configurações de monetização da AdMob. |
https://www.googleapis.com/auth/admob.readonly |
Veja todos os dados da AdMob. Isso pode incluir contas informações, configurações de inventário e mediação, relatórios e outros dados. Dados confidenciais, como pagamentos ou detalhes da campanha, não serão incluídos. |
Criar
Para criar um grupo de mediação, você precisa especificar a segmentação do grupo de mediação. informações, incluindo os blocos de anúncios relevantes. O exemplo a seguir cria uma nova grupo de mediação para anúncios intersticiais do Android para dois blocos de anúncios. Um grupo de mediação é adicionada na criação da origem de anúncios da InMobi. Você não precisa incluir a rede da AdMob, já que ela é adicionada por padrão no momento da criação.
No snippet de código abaixo, substitua pub-XXXXXXXXXXXXXXXX
por seu publisher
ID.
Em seguida, substitua YYYYYYYYYY
pelos últimos 10 dígitos do seu bloco de anúncios
ID, em conformidade
para o formato:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY
Como há dois blocos de anúncios neste exemplo, YYYYY11111
se refere ao primeiro
bloco de anúncios e WWWWW11111
ao mapeamento do primeiro bloco de anúncios. YYYYY22222
e
WWWWW22222
se referem ao segundo bloco de anúncios e ao mapeamento de bloco de anúncios.
curl (linha de comando)
Substitua WWWWWWWWWW
pelo ID de mapeamento do bloco de anúncios. O ID de mapeamento do bloco de anúncios
podem ser encontradas usando o
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" } } }
Lista
Substitua pub-XXXXXXXXXXXXXXXX
por seu editor
ID para ver seus grupos de mediação.
curl (linha de comando)
Exemplo de solicitação:
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)"
Exemplo de resposta:
{ "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" } }, }] }
Patch
Aqui está a lista de campos máscaras para atualizar um grupo de mediação. Atualizações em campos repetidos, como itens em um lista, substituir completamente os valores existentes por novos valores. Atualizações individuais valores em um mapa podem ser feitos por meio da indexação da chave.
As máscaras de campo a seguir são compatíveis com as atualizações do grupo de mediação:
targeting.adUnitIds
mediationGroupLines[mediationGroupLineId]
mediationGroupLines[mediationGroupLineId].state
mediationGroupLines[mediationGroupLineId].adUnitMappings[adUnitId]
Para atualizar um grupo de mediação com uma nova linha, use uma linha diferente
um número negativo para a mediationGroupLineId
. Para atualizar uma mediação existente
do grupo de mediação, faça referência ao ID da linha do grupo de mediação nos campos update_mask
e
o payload, conforme mostrado abaixo.
"updateMask" {
paths: "mediation_group_lines["123"].ad_unit_mappings["456"]"
}
"mediationGroup" {
"mediationGroupLines": {
"123": {
"id": "123"
"adUnitMappings": {
"456": "newAdUnitMappingId"
}
}
}
}
curl (linha de comando)
O exemplo abaixo adiciona três novas linhas de mediação a um grupo de mediação existente.
O updateMask
inclui as três linhas do grupo de mediação com palavras negativas
como o marcador de posição:
updateMask=mediationGroupLines["-1"],mediationGroupLines["-2"],mediationGroupLines["-3"]
Você precisa traduzir caracteres especiais porque todos os URLs precisam estar de acordo com
a sintaxe definida pela especificação do Identificador de Recurso Uniforme (URI, na sigla em inglês),
Portanto, o updateMask
se tornará:
updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D
Para executar o exemplo a seguir, substitua pub-XXXXXXXXXXXXXXXX
pelo seu
ID do editor e ZZZZZZZZZZ
pelo ID do grupo de mediação. A mediação
ID do grupo pode ser encontrado na interface da AdMob ou usando o accounts.mediationGroups:list
.
Substitua YYYYYYYYYY
pelos últimos 10 dígitos do seu bloco de anúncios.
ID, seguindo o formato:
ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY`
Substitua WWWWWWWWWW
pelo ID de mapeamento do bloco de anúncios. O ID de mapeamento do bloco de anúncios
podem ser encontradas usando o
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