Авторизация пользователя
Задача запроса на авторизацию - получение уникального ключа сессии
Уникальный ключ сессии действует в течение восьми часов, после истечения срока действия его необходимо продлить.
Используемый метод Session.signin
Обратите внимание
Все следующие запросы должны быть подписаны идентификатором сессии
Параметры запроса
Название ключа |
Описание |
Тип значения |
Обязательный |
Значение по-умолчанию |
username |
Имя пользователя |
string |
Да |
- |
password |
Пароль пользователя |
string |
Да |
- |
is_subagent |
Является ли пользователь субагентом |
boolean |
Да |
- |
Пример запроса к серверу
Пример запроса к серверу с использованием bash:
1 QUERY_HOST="https://spn24.ru/api/v1"
2 QUERY_ID="833105db-2dbe-d9ba-2ef4-0afe715dfe93"
3 QUERY_METHOD="Session.signin"
4 QUERY_HEADER="Content-Type: application/json"
5 LOGIN="mylogin"
6 PASSWORD="mypassword"
7
8 QUERY_BODY="{
9 \"id\": \"$QUERY_ID\",
10 \"jsonrpc\": \"2.0\",
11 \"method\": \"$QUERY_METHOD\",
12 \"params\": {
13 \"username\": \"$LOGIN\",
14 \"password\": \"$PASSWORD\",
15 \"is_subagent\": true
16 }
17 }"
18
19 curl -i -X POST -H $QUERY_HEADER -d $QUERY_BODY $QUERY_HOST
Результат запроса
Результат запроса представляет собой объект следующего содержания:
1 {
2 "id": "530c4636-0408-45f8-ab41-28a749a3c43e",
3 "jsonrpc": "2.0",
4 "result": {
5 'id': 1, # идентификатор пользователя
6 'login': 'testlogin', # логин пользователя
7 'role_id': 1, # идентификатор роли пользователя
8 'access_level': 40, # значение внутрисистемного уровня доступа (не используется)
9 'role_order': 1, # значение для сортировки пользовательской роли (не используется)
10 'firm_id': 1, # идентификатор организации пользователя
11 'ucaption': 'ООО "Тест"', # Название организации субагента
12 'pcaption': 'Генеральный директор', # Название должности пользователя в организации
13 'fio': 'Иванов Иван Иванович', # ФИО пользователя
14 'email': 'test@test.ru', # email пользователя
15 'is_boss': True, # внутренний флаг руководителя организации (не используется)
16 'access': {
17 'raw': {
18 'level': 30, # значение внутрисистемного уровня доступа (не используется)
19 'is_admin': True, # внутренний флаг администратора (не используется)
20 'is_boss': True, # внутренний флаг руководителя организации (не используется)
21 'is_show_tarif': True, # внутренний флаг показа тарифной карты (не используется)
22 'is_teaching': True, # внутренний флаг прохождения обучения (не используется)
23 },
24 'search': True, # флаг доступа к поиску
25 'reserve': True, # флаг доступа к резервированию
26 'my_deals_tables': True, # флаг доступа к разделу "мои сделки"
27 'my_organisation': True, # флаг доступа к разделу "моя организация"
28 'my_users': True, # флаг доступа к разделу "мои сотрудники"
29 'tariff_card': True, # флаг доступа к разделу "тарифная карта"
30 'actions_log': True, # флаг доступа к разделу "действия"
31 'documents': True, # флаг доступа к разделу "документы"
32 'calendar': True, # флаг доступа к календарю
33 'information': True, # флаг доступа к информации
34 'settings': True, # флаг доступа к настройкам
35 },
36 'is_subagent': True, # признак субагента
37 'status_id': 1, # идентификатор статуса субагента
38 'session_id': 'df08ff79-354c-4c2b-8982-34e3f2175838', # Token авторизации, которым должны быть подписаны все последующие запросы
39 }
40 }