POST /oauth/token
На вашем сервере обменивает одноразовый код после согласия пилота на токены доступа — или обновляет уже выданный токен.
Нюансы
- Вызывайте только со своего сервера, с секретом приложения.
- При обновлении старый обновляющий токен становится недействительным.
- Если отозванный обновляющий токен использовать повторно — отзывается всё согласие пилота.
- Секрет можно передать в теле запроса или через Basic-авторизацию.
Авторизация
Открывается в браузере пилота или вызывается с секретом приложения — без пользовательского токена.
Тип содержимого: application/x-www-form-urlencoded
Параметры
grant_type
string
form
authorization_code или refresh_token
Обязательный параметрclient_id
string
form
client_id приложения
Обязательный параметрclient_secret
string
form
Секрет приложения (или HTTP Basic)
Обязательный параметрcode
string
form
Код из redirect (grant_type=authorization_code)
redirect_uri
string
form
Тот же redirect_uri, что при authorize
code_verifier
string
form
PKCE verifier (grant_type=authorization_code)
refresh_token
string
form
Refresh-токен (grant_type=refresh_token)
Примеры
# Обмен code curl -X POST 'https://panel.aeronation.ru/oauth/token' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=authorization_code' \ -d 'client_id=YOUR_CLIENT_ID' \ -d 'client_secret=YOUR_SECRET' \ -d 'code=SplxlOBeZQQYbYS6WxSbIA' \ -d 'redirect_uri=https://example.com/callback' \ -d 'code_verifier=dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' # Обновление access curl -X POST 'https://panel.aeronation.ru/oauth/token' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=refresh_token' \ -d 'client_id=YOUR_CLIENT_ID' \ -d 'client_secret=YOUR_SECRET' \ -d 'refresh_token=eyJ…'
HTTP/1.1 200 OK
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…",
"token_type": "Bearer",
"expires_in": 900,
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9…",
"scope": "openid profile flights:read"
}
Ошибки
invalid_client
HTTP 401
Неверный client_id / client_secret или приложение отключено
invalid_grant
HTTP 400
Неверный/использованный code, PKCE fail, отозванный грант, reuse refresh
unsupported_grant_type
HTTP 400
grant_type не authorization_code и не refresh_token
invalid_client
HTTP 400
Приложение отключено после выдачи code
HTTP/1.1 400 Bad Request
{
"error": "invalid_grant",
"error_description": "PKCE verification failed"
}