Авторизация¶
Для работы с большинством методов API необходимо получение token. В случае успешной авторизации метод возвращает token и некоторые выжные для работы с API переменные. Время жизни токена опеределяется установленными параметрами в разделе «Параметры платформы».
В примере запроса используются переменные username и password, которые идентичны тем, что Вы используете для входа в личный кабинет.
Метод авторизации одинаковый для всех пользователей.
Предупреждение
Встроенная система защиты обрабатывает неуспешные запросы авторизации. В случае превышения установленных в платформе лимитов будет выполнена блокировка хоста, с которого выполняется запрос. Разблокировать хост можно в «Защитнике»
Запрос¶
POST {{v2_host}}/api/
Content-Type: application/json
{
"action": "auth",
"obj": "User",
"action_id": "123",
"params": {
"login": "{{username}}",
"password": "{{password}}"
}
}
Успешная авторизация владельцем АТС (клиентом)¶
POST {{v2_host}}/api/
HTTP/1.1 200 OK
Server: nginx/1.16.1
Date: Mon, 20 Sep 2021 06:14:14 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 979
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST, OPTIONS
{
"action": "auth",
"action_id": "123",
"obj": "User",
"code": 200,
"notifies": [],
"body": {
"version": {
"software": "2.9.0",
"last_update": 1631889200.532154
},
"exp": "2021-09-20T10:14:13.998824",
"user_id": 48,
"user_name": "Алексей",
"user_login": "a@office.runtel.org",
"domain_id": 34,
"role_id": 2,
"role_name": "PBX administrator",
"role_type": 1,
"role_perms": {},
"role_visible": {},
"role_filters": {},
"auth_type": "http",
"domain_name": "office.runtel.org",
"domain_test_until": null,
"domain_mode": 2,
"domain_billing_options": {
"balance": "1000.0",
"block_inbound": false,
"block_outbound": false,
"block_face": false
},
"tz": "Europe/Prague",
"locale": "en_US",
"token": "J...W"
}
}
Для потери регистрации необходимо выполнить метод logout.¶
POST http://{{v2_host}}/api/
Content-Type: application/json
Authorization: Bearer {{auth_token}}
{
"action": "logout",
"obj": "User",
"action_id": "123",
"params": {
}
}