Авторизация

В этом разделе содержатся инструкции, относящиеся к API разработчика Google Play. Дополнительную информацию см. в полной документации OAuth2 .

Начальная конфигурация

Доступ к Google Play Android Developer API аутентифицируется с использованием потока веб-сервера OAuth 2.0 . Прежде чем вы сможете использовать API, вам необходимо настроить проект консоли API, создать идентификатор клиента и сгенерировать токен обновления.

Создание проекта консоли API

  1. Перейдите в консоль API и войдите в свою учетную запись консоли Google Play.
  2. Выберите Создать проект .
  3. Перейдите в раздел «Сервисы» на левой навигационной панели.
  4. Включите Google Play Android Developer API .
  5. Примите Условия обслуживания.
  6. Перейдите в раздел «Доступ к API» на левой панели навигации.
  7. Выберите Создать идентификатор клиента OAuth 2.0 .
    • На первой странице вам нужно будет заполнить название продукта, но логотип не требуется. Обратите внимание, что ваши конечные пользователи не увидят название продукта.
    • На второй странице выберите веб-приложение и укажите URI перенаправления и источник Javascript. Обе эти настройки можно изменить позже.
  8. Выберите Создать идентификатор клиента .

Создание токена обновления

  1. Войдя в свою учетную запись консоли Google Play, перейдите по следующему URI:
    https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=...&client_id=...
  2. При появлении запроса выберите Разрешить доступ .
  3. Браузер будет перенаправлен на ваш URI перенаправления с параметром code , который будет выглядеть примерно так 4/eWdxD7b-YSQ5CNNb-c2iI83KQx19.wp6198ti5Zc7dJ3UXOl0T3aRLxQmbwI .
  4. Замените этот код на пару токенов доступа и обновления, отправив POST-запрос на https://accounts.google.com/o/oauth2/token со следующими установленными полями:
    grant_type=authorization_code
    code=<the code from the previous step>
    client_id=<the client ID token created in the APIs Console>
    client_secret=<the client secret corresponding to the client ID>
    redirect_uri=<the URI registered with the client ID>
    
    Успешный ответ будет содержать ваши токены в формате JSON. :
    {
      "access_token" : "ya29.ZStBkRnGyZ2mUYOLgls7QVBxOg82XhBCFo8UIT5gM",
      "token_type" : "Bearer",
      "expires_in" : 3600,
      "refresh_token" : "1/zaaHNytlC3SEBX7F2cfrHcqJEa3KoAHYeXES6nmho"
    }
    

Доступ к API

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

Использование токена доступа

Серверы могут выполнять вызовы API, передавая токен доступа в заголовке Authorization запроса:

Authorization: Bearer oauth2-token

Использование токена обновления

Каждый токен доступа действителен только в течение короткого времени. По истечении срока действия текущего токена доступа серверу потребуется использовать токен обновления, чтобы получить новый. Для этого отправьте POST-запрос на https://accounts.google.com/o/oauth2/token с установленными следующими полями:

grant_type=refresh_token
client_id=<the client ID token created in the APIs Console>
client_secret=<the client secret corresponding to the client ID>
refresh_token=<the refresh token from the previous step>

Успешный ответ будет содержать еще один токен доступа:

{
  "access_token" : "ya29.AHES3ZQ_MbZCwac9TBWIbjW5ilJkXvLTeSl530Na2",
  "token_type" : "Bearer",
  "expires_in" : 3600,
}

Таким образом, токен обновления обеспечивает постоянный доступ веб-сервера к API без необходимости активного входа в учетную запись Google.