Группы посредничества

API AdMob позволяет создавать, составлять список и обновлять группы медиации, в том числе:

  • Указание таргетинга группы медиации , включая регионы, формат, платформу и таргетинг IDFA.
  • Добавление новых строк группы медиации в существующую группу медиации.
  • Просмотр того, какие группы медиации являются частью эксперимента медиации A/B и какие строки группы медиации относятся к каждому варианту: A или B.

Примеры

Создав учетные данные OAuth 2.0 , вы готовы начать использовать API AdMob. Чтобы запросить доступ с использованием OAuth 2.0, вашему приложению также потребуется информация об области.

Вот информация об области действия OAuth 2.0:

Объем Значение
https://www.googleapis.com/auth/admob.monetization Просматривайте, создавайте и редактируйте настройки монетизации AdMob.
https://www.googleapis.com/auth/admob.readonly Просмотреть все данные AdMob. Сюда может входить информация об аккаунте, настройки инвентаря и медиации, отчеты и другие данные. Сюда не входят конфиденциальные данные, такие как платежи или сведения о кампании.

Создавать

Чтобы создать группу медиации, необходимо указать информацию о таргетинге группы медиации , включая соответствующие рекламные блоки. В следующем примере создается новая группа медиации для межстраничных объявлений Android для двух рекламных блоков. Одна строка группы медиации добавляется при создании источника объявлений InMobi. Вам не нужно включать сеть AdMob, поскольку она будет добавлена ​​во время создания по умолчанию.

В приведенном ниже фрагменте кода замените pub-XXXXXXXXXXXXXXXX на свой идентификатор издателя .

Затем замените YYYYYYYYYY на последние 10 цифр идентификатора вашего рекламного блока в следующем формате:

ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY

Поскольку в этом примере два рекламных блока, YYYYY11111 относится к первому рекламному блоку, а WWWWW11111 — к сопоставлению первого рекламного блока. YYYYY22222 и WWWWW22222 относятся ко второму рекламному блоку и сопоставлению рекламного блока.

локон (командная строка)

Замените WWWWWWWWWW на идентификатор сопоставления вашего рекламного блока. Идентификатор сопоставления рекламного блока можно найти с помощью метода 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 на свой идентификатор издателя , чтобы просмотреть свои группы медиации.

локон (командная строка)

Пример запроса:

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"
     }
    }
  }
}

локон (командная строка)

В приведенном ниже примере к существующей группе медиации добавляются три новые строки медиации. updateMask включает в себя три строки группы медиации с отдельными отрицательными значениями в качестве заполнителя:

updateMask=mediationGroupLines["-1"],mediationGroupLines["-2"],mediationGroupLines["-3"]

Вам необходимо перевести специальные символы, поскольку все URL-адреса должны соответствовать синтаксису, указанному в спецификации универсального идентификатора ресурса (URI), поэтому updateMask принимает вид:

updateMask=mediationGroupLines%5B%22-1%22%5D,mediationGroupLines%5B%22-2%22%5D,mediationGroupLines%5B%22-3%22%5D

Чтобы запустить следующий пример, замените pub-XXXXXXXXXXXXXXXX на свой идентификатор издателя, а ZZZZZZZZZZ на идентификатор своей группы медиации. Идентификатор группы медиации можно найти в интерфейсе AdMob или с помощью метода accounts.mediationGroups:list .

Замените YYYYYYYYYY на последние 10 цифр идентификатора вашего рекламного блока в следующем формате:

ca-app-pub-XXXXXXXXXXXXXXXX/YYYYYYYYYY`

Замените WWWWWWWWWW на идентификатор сопоставления вашего рекламного блока. Идентификатор сопоставления рекламного блока можно найти с помощью метода 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