Все методы REST API, кроме user/login, требуют токен доступа. Токен бывает двух видов: постоянный API-токен и временный JWT-токен.
Способы передачи токена
| Вид токена | Где взять | Как передать | Срок действия |
|---|---|---|---|
| Постоянный API-токен (UUID) | Личный кабинет, раздел токенов доступа | Поле token в теле запроса | Бессрочно или до даты, указанной при создании токена |
| Временный JWT-токен | Метод user/login | Заголовок token: <jwt-token> | По умолчанию 7 дней; владелец компании может задать другой срок в настройках безопасности |
Если в запросе есть заголовок token с действующим JWT-токеном, используется он. Иначе система берёт поле token из тела запроса.
Обновления временного токена нет: когда срок истёк, получите новый токен методом user/login.
Управлять постоянными токенами через API можно методами раздела Токены доступа.
Примеры
Постоянный токен в теле запроса
curl -X POST "https://api.neuro-vision.ru/v1/kyc/session/status" -H "Content-Type: application/json" -d '{"token": "00000000-0000-0000-0000-000000000000", "sessionId": "00000000-0000-0000-0000-000000000000"}' Временный токен в заголовке
curl -X POST "https://api.neuro-vision.ru/v1/kyc/session/status" -H "token: <jwt-token>" -H "Content-Type: application/json" -d '{"sessionId": "00000000-0000-0000-0000-000000000000"}' Для запросов multipart/form-data постоянный токен передаётся полем формы: -F "token=00000000-0000-0000-0000-000000000000".
Ошибки авторизации
Нет токена или токен недействителен (401)
{
"status": "error",
"message": "access denied"
} Проверьте, что токен передан, не истёк и не удалён.
Неверный логин или пароль в user/login (403)
{
"status": "error",
"message": "access denied"
} Нет права на метод
Если у пользователя, которому принадлежит токен, нет нужного права, метод отвечает ошибкой. Формат зависит от метода и описан на его странице. Права пользователям назначаются в личном кабинете, в разделе ролей и прав.
Общий список ошибок — на странице Ошибки.
Рекомендации
- Храните постоянный токен только на своём сервере. Не передавайте его в браузер и мобильное приложение.
- Для разных интеграций создавайте отдельные токены, чтобы отозвать один, не затрагивая остальные.
- Задавайте токенам срок действия, если интеграция временная.