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