Процесс регистрации издателя

В этой статье описывается процесс создания или связывания аккаунта AdSense с хостом с помощью API хостов AdSense версии 4.x. Установление связи является обязательным условием для разделения дохода, получения отчетов и работы всех остальных функций API хостов AdSense.

Обзор

Аккаунты создаются и связываются на веб-сайте AdSense. Задача хоста – перенаправить к нему пользователя и сохранить идентификатор после завершения регистрации.

Процесс регистрации состоит из 4 шагов:

  1. Хост инициирует сеанс установления связи, вызывая метод associationsessions.start.
  2. Хост перенаправляет пользователя на URL, указанный в ответе. Пользователь выполняет необходимые шаги на веб-сайте AdSense.
  3. Пользователь перенаправляется обратно на веб-сайт хоста. При этом также передается токен.
  4. Хост проверяет токен, вызывая метод associationsessions.verify. Если связь установлена успешно, ответ будет включать идентификатор аккаунта издателя. Хост должен сохранить его для использования в последующих вызовах API, относящихся к этому издателю.

Шаг 1. Инициация сеанса установления связи

Чтобы перенаправить издателя на страницу регистрации, вы (т. е. хост) должны сначала отправить запрос на новый сеанс установления связи. Для этого необходимо использовать метод associationsessions.start. Вот как будет выглядеть ответ:

{
  'id': '00000000-0000-0000-0000-000000000000',
  'redirectUrl': '<redirect URL>',
  'websiteUrl': 'www.example.com',
  'productCodes': ['AFC'],
  'kind': 'adsensehost#associationSession'
}

Обратите внимание на поля redirectUrl и id. Вам нужно будет сохранить уникальный идентификатор сеанса из поля id, чтобы впоследствии идентифицировать этого пользователя во время обратного вызова.

Поле redirectUrl указывает, на какой адрес вам нужно перенаправить пользователя на следующем шаге.

Шаг 2. Перенаправление на веб-сайт AdSense

Создание нового аккаунта или связывание существующего происходит на сайте AdSense, на специально предназначенной для этого странице регистрации в API.

Аккаунты создаются и связываются на веб-сайте AdSense.
Рис. 1. Регистрация на веб-сайте AdSense

Все, что вам нужно сделать, – это перенаправить пользователя на URL переадресации (redirectUrl), полученный на предыдущем шаге. Остальное выполнит наша система.

Шаг 3. Получение обратного вызова

После того как пользователь пройдет процесс регистрации на сайте AdSense, он будет направлен на URL обратного вызова, связанный с аккаунтом вашего хоста.

В целях безопасности информация о связи не передается в самом обратном вызове. Он будет включать всего один параметр HTTP – token. Этот параметр используется всегда, вне зависимости от того, успешно ли установлена связь.

GET http://your.callback.url/path?token=<associationtoken>

Убедитесь, что вы фиксируете в журналах все обратные вызовы, чтобы не направлять пользователей к процессу регистрации несколько раз.

Шаг 4. Проверка токена

Чтобы получить подробную информацию о сеансе, в том числе о том, была ли установлена связь, необходимо вызвать метод associationsessions.verify, указав полученный токен.

Если произошла ошибка или связывание было отклонено пользователем, вы получите примерно такой ответ:

{
  'id': '00000000-0000-0000-0000-000000000000',
  'status': 'REJECTED',
  'kind': 'adsensehost#associationSession'
}

Чтобы определить, для какого пользователя был запущен сеанс, идентификатор id сравнивается с идентификатором связывания, сохраненным на шаге 1.

Поле status указывает, была ли установлена связь. Если связь была успешно установлена, вы увидите значение ACCEPTED, если пользователь отклонил запрос – REJECTED, а если при регистрации на сайте AdSense произошла ошибка – ERROR.

Кроме того, если связь была успешно установлена, в ответе будет дополнительное поле:

{
  'id': '00000000-0000-0000-0000-000000000000',
  'status': 'ACCEPTED',
  'accountId': 'pub-0000000000000000',
  'kind': 'adsensehost#associationSession'
}

Поле accountId содержит идентификатор аккаунта AdSense, который вам нужно сохранить локально для использования в будущих вызовах API, относящихся к этому пользователю.

Готово!

Теперь, когда вы сохранили идентификатор аккаунта, у вас есть вся необходимая информация, чтобы выполнять вызовы API для этого пользователя. Например, вы можете проверять статус его аккаунта AdSense (accounts.get) или управлять его рекламными блоками (accounts.adunits).

Оставить отзыв о...

Текущей странице
AdSense Host API
AdSense Host API