Grupos de mediação

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