Перейти к основному содержанию
POST
Аутентификация – новая функция. Эти эндпоинты обслуживаются издателем вашего приложения, например https://<name>.auth.didit.me, и они никогда не принимают ваш API-ключ Didit.
Токен обновления можно использовать один раз. Если отправить уже использованный токен обновления повторно, это приводит к отзыву всей сессии, поэтому для одной сессии выполняйте только одно обновление за раз и заменяйте все три токена одновременно. См. Токены обновления.

Тело

Один из двух грантов, определяемый параметром grant_type. Endpoint принимает поля обоих грантов и проверяет каждое полученное поле, поэтому запрос на обновление, также содержащий некорректный code_verifier, вернёт ошибку поля. Отправляйте только поля вашего гранта; для любого другого поля будет возвращено unknown_field.

grant_type
enum<string>
обязательно
Доступные опции:
authorization_code
code
string
обязательно

Параметр запроса code, полученный вашим redirect_uri. Проверьте state обратного вызова перед обменом.

Maximum string length: 128
Пример:

"Vb0bVt4CLlr8ZL0kE5mAxv8gS6R0rW3hYqC1pN7dJ2s"

code_verifier
string
обязательно

Верификатор PKCE, чей хеш S256 использовался в качестве code_challenge при входе.

Required string length: 43 - 128
Pattern: ^[A-Za-z0-9._~-]{43,128}$
Пример:

"dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk"

redirect_uri
string
обязательно

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

Maximum string length: 2048
Пример:

"https://app.example.com/auth/callback"

client_id
string

Необязательно. При отправке значение должно совпадать с идентификатором вашего приложения (application ID), иначе запрос завершится с ошибкой invalid_client.

Maximum string length: 64
Пример:

"7b0a6c2e-3f41-4c9a-8d55-1e2f3a4b5c6d"

scope
string

Необязателен и принимается от стандартных клиентов OpenID Connect. Он никогда не расширяет то, что было предоставлено при входе.

Maximum string length: 512
Пример:

"openid email"

Ответ

Новые token для сессии.

token для одной сессии. Заменяйте все три вместе после обновления.

access_token
string
обязательно

ES256 JWT, заголовок typ: at+jwt. Отправляйте его как Authorization: Bearer <access_token>. Утверждения: AccessTokenClaims.

Пример:

"eyJhbGciOiJFUzI1NiIsImtpZCI6ImtfOHNKMmRRdlgwbkxyNVRmWWIzSGtQdyIsInR5cCI6ImF0K2p3dCJ9.eyJpc3MiOiJodHRwczovL3lvdXItYXBwLmF1dGguZGlkaXQubWUiLCJhdWQiOiI3YjBhNmMyZS0zZjQxLTRjOWEtOGQ1NS0xZTJmM2E0YjVjNmQiLCJzdWIiOiIxYzlkOGI4OC0xYmZmLTQzZDEtYWQ3YS04OGIyYmMwMDI0ZTkiLCJzaWQiOiJjOWFiZjZjYy0yZDY0LTRiZjItYjMxZS1hNGQwOWEwNzBhYjEiLCJqdGkiOiJSZ3F1NzE3OWUtbGhKMGJ2VmVELVlnIiwiaWF0IjoxNzkyMjMzNjc0LCJleHAiOjE3OTIyMzM5NzQsInZlbmRvcl9kYXRhIjoidXNlci00MiIsIm9yZyI6bnVsbCwidmVyaWZpZWQiOnt9LCJhbXIiOlsicGFzc3dvcmQiXSwiYWN0IjpudWxsLCJjbGllbnRfaWQiOiI3YjBhNmMyZS0zZjQxLTRjOWEtOGQ1NS0xZTJmM2E0YjVjNmQifQ.AxrqN8Pm-Op-3OayZk8HcvlFQZhozRiOvQ0SgQsGgrz4UNeJlUEeSlq9B8WcYUuM8naRaY5kQt_TUofnsYcyYQ"

id_token
string
обязательно

ES256 JWT, заголовок typ: JWT, для чтения вашим приложением данных о том, кто выполнил вход. Никогда не отправляйте его в качестве токена доступа. Утверждения: IDTokenClaims.

Пример:

"eyJhbGciOiJFUzI1NiIsImtpZCI6ImtfOHNKMmRRdlgwbkxyNVRmWWIzSGtQdyIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL3lvdXItYXBwLmF1dGguZGlkaXQubWUiLCJhdWQiOiI3YjBhNmMyZS0zZjQxLTRjOWEtOGQ1NS0xZTJmM2E0YjVjNmQiLCJzdWIiOiIxYzlkOGI4OC0xYmZmLTQzZDEtYWQ3YS04OGIyYmMwMDI0ZTkiLCJzaWQiOiJjOWFiZjZjYy0yZDY0LTRiZjItYjMxZS1hNGQwOWEwNzBhYjEiLCJqdGkiOiJNTHRPNHM4SHItQnJrcDd2NTlPV0Z3IiwiaWF0IjoxNzkyMjMzNjc0LCJleHAiOjE3OTIyMzM5NzQsInZlbmRvcl9kYXRhIjoidXNlci00MiIsIm9yZyI6bnVsbCwidmVyaWZpZWQiOnt9LCJhbXIiOlsicGFzc3dvcmQiXSwiYWN0IjpudWxsLCJhdXRoX3RpbWUiOjE3OTIyMzM2NzQsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJlbWFpbCI6InBlcnNvbkBleGFtcGxlLmNvbSIsIm5vbmNlIjoibi0wUzZfV3pBMk1qIn0.avhfDFp_aUV5_1ssYzwDcIA7H6Waf19P0bn5GCg25FhLIZBGIlwc8HiUPGj1j26r21OkP4FQnS_jM1Ho3dHtKQ"

refresh_token
string
обязательно

Одноразовый. Действителен до окончания сессии, при каждом обновлении возвращается новый.

Пример:

"N4yZTl6y24YKYq77X_SOrBn1q2Lit81WBQMOay7dq_IVfTnxyY8ZGcJk-6-fcmWW"

token_type
enum<string>
обязательно
Доступные опции:
Bearer
expires_in
integer
обязательно

Количество секунд до истечения срока действия токена доступа: не более 300, меньше, если сессия завершится раньше.

Требуемый диапазон: 0 <= x <= 300
Пример:

299

session_id
string<uuid>
обязательно

Сессия, к которой относятся эти токены; то же значение, что и в claim sid.

Пример:

"c9abf6cc-2d64-4bf2-b31e-a4d09a070ab1"

Последнее изменение 7 ноября 2026 г.