Page tree

Citypoint - контроль и аналитика автопарка

Skip to end of metadata
Go to start of metadata

Запрос:

URL:

POST https://api.url/v2.1/oauth/token

Заголовки:

Content-Type - поддерживаются следующие форматы: application/x-www-form-urlencoded и multipart/form-data.

Параметры запроса:

ИмяТипЗначение по умолчаниюОписание
grant_typestring

Тип авторизации, при первоначальном заходе должно быть refresh_token

client_idint
Идентификатор клиента (выдаётся по запросу)
client_secretstring

Секретный ключ клиента (выдаётся по запросу)

scopestring
к каким api запрашивается доступ, для мобильного приложения должно быть scope=api:mobile
refresh_tokenstring
текущий ключ обновления

Ответ:


ПолеОписание
token_typeТип ключа.
expires_inНа сколько выдан ключ (Время жизни access_token)
access_token

Токен доступа в формате JWT.

Внутри токена содержит поле user_id - идентификатор пользователя.

Для получения  user_id надо разбить  access_token по "." и декодировать полученные части из BASE64.

refresh_token

Токен для обновления access_token по истечению его срока действия. 

Время жизни refresh_token по умолчанию 1 год. Доступно изменение данного периода по запросу пользователя.

Коды ответов:

200 ОК - Сервер обработал запрос.  В теле ответа  содержатся ключи доступа.

401 Unauthorized - некорректный логин/пароль пользователя, передан некорректный секрет

400 Bad Request - Переданы неподдерживаемые параметры либо сервер не понял запрос (описание ошибки в теле ответа).

Также возможны другие ошибки.

Пример

POST http://api.url/v2.1/oauth/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded

grant_type=refresh_token&client_id=1&client_secret=my_secret&refresh_token=current_refresh_token&scope=api:mobile

HTTP/1.1 200 OK
Content-Type: application/json
					
{
    "token_type": "Bearer",
    "expires_in": 300,
    "access_token": "new access key",
    "refresh_token": "new refresh key"
} 



  • No labels