[Шпаргалка] Получение токенов для работы с API сервисов Google

Для работы с API какого-либо сервиса Google необходимо создать новый проект в Google Developers Console.
После создания проекте на его странице необходимо перейти в пункт «Enable and manage APIs». На вкладке «Google APIs» найти необходимые сервисы и включить их, нажав на «Enable API». После этого на странице Credentials получить авторизационные данные.

Если в качестве метода авторизации выбран метод «OAuth 2.0», то в дальнейшем для работы с api сервисов google нужен будет авторизационный токен пользователя.

Получение токена:

  1. Переходим на страницу такого вида:
    http://accounts.google.com/o/oauth2/auth?scope=&access_type=offline&prompt=consent&redirect_uri=&response_type=code&client_id=<Ваш Client ID>, где

    • client_id — Вш Client ID, полученный после выбора «OAuth 2.0» на странице Credentials
    • redirect_uri — url страницы, на которую вы будете переадресованы, после перехода по ссылке
    • scope — области доступа, список сервисов, к которым вам нужен будет доступ (OAuth 2.0 Scopes for Google APIs)

    Получается такая ссылка:
    https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/analytics+https://www.googleapis.com/auth/webmasters&access_type=offline&prompt=consent&redirect_uri=http://localhost&response_type=code&client_id=827722786-hu0of25n0cslo1sbf9os7rr4qsub.apps.googleusercontent.com

  2. После редиректа на страницу из параметра redirect_uri, в url будет присутствовать параметр code (всё, что между «code=» и «#»), сохраняем его.
  3. Отправляем POST запрос на адрес https://accounts.google.com/o/oauth2/token со следующими параметрами (подробнее тут Using OAuth 2.0 for Client-side Applications):

    В ответ получаем json файл с параметрами access_token и refresh_token.

  4. Обычный токен (access_token) живёт в течении часа, поэтому в дальнейшем его необходимо обновлять, используя refresh_token.
    Для этого необходимо отправить POST запрос на адрес https://www.googleapis.com/oauth2/v4/token с параметрами:

    В ответ вы получить json объект, содержащий новый access_token.

Полезные сервисы:
Query Explorer — инструмент, для тестирования запросов к API Google Analytics
APIs Explorer — список инструментов, для тестирования API различных сервисов гугла.