Авторизация пользователя
Задача запроса на авторизацию - получение уникального ключа сессии
Уникальный ключ сессии действует в течение восьми часов, после истечения срока действия его необходимо продлить.
Используемый метод 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 }