API система. Общая информация
API система использует стандартные HTTP-методы (GET, POST, PUT, DELETE, PATCH) для выполнения операций с сущностями. Для авторизации используется механизм access и refresh токенов.
Авторизация¶
Процесс авторизации¶
- Пользователь вызывает метод аутентификации https://demo.iqtek.ru/dialer/api/v1/docs#/users/__call___acl_users_login_post, передавая логин и пароль
{
"login": "string",
"password": "string"
}
- В ответ система возвращает:
- Access token (действует 24 часа по умолчанию)
- Refresh token (действует 7 дней по умолчанию)
- ID сессии (используется для управления сессиями)
Успешный ответ (200)
{
"success": true,
"data": {
"access_token": "string",
"refresh_token": "string",
"session_id": "string"
}
}
{
"success": false,
"message": "string",
"details": "string"
}
Access token¶
- Отправляется после успешной авторизации в каждый запрос в header заголовках.
- Создается по JWT стандарту.
- Содержит закодированные данные:
- когда был выдан
- id пользователя
- под каким логином пользователь авторизовался
- битовая маска всех прав пользователя
Refresh token¶
- Позволяет получить новый access token без повторного ввода логина/пароля
- Используется для фоновой переавторизации, чтобы не прерывать работу пользователя
Типы авторизации¶
- Стандартная (по access token)
- По API-key (бессрочный токен для интеграций между системами). Пользователь вызывает метод аутентификации https://demo.iqtek.ru/dialer/api/v1/docs#/users/__call___acl_users_api_key_login_post, передавая логин и пароль.
Основные методы HTTP¶
- GET - получение данных без их изменения
- POST - создание новой сущности
- PUT - полное обновление сущности (требует передачи всех полей)
- PATCH - частичное обновление сущности
- DELETE - удаление сущности
Дополнительно может использоваться:
- POST/search - метод поиска
- POST/check - метод проверки корректности настройки сущности на странице создания
- PATCH/bulk - метод для массового изменения отдельных полей
- DELETE/bulk - метод для массового удаления