Базовые элементы

Общие поля для всех методов

Все запросы и ответы Авиа-сервера имеют определённый набор общих элементов.

Запрос

Тело любого запроса состоит из трёх основных элементов.

Реквизиты
  • Requisites — реквизиты доступа к серверу (опционально). Тип данных — сложный.
  • Requisites.Login — логин для доступа к серверу (опционально). Тип данных — строка.
  • Requisites.Password — пароль для доступа к серверу (опционально). Тип данных — строка.
  • Requisites.AuthToken — ключ доступа к серверу (опционально). Тип данных — строка. Необходимо либо указывать ключ доступа, либо связку логина с паролем.
  • Requisites.NemoOneAuthToken — ключ для авторизации по ID пользователя Nemo 1 (опционально). Тип данных — строка.
Идентификатор пользователя
  • UserID — идентификатор пользователя, выполняющего запрос к серверу (опционально). Тип данных — целое неотрицательное 32-битное число.
Тело запроса
  • RequestBody — тело запроса к серверу. Тип данных — сложный.

Ответ

Основные элементы любого ответа

Идентификатор запроса
  • RequestID — идентификатор обработанного запроса. Тип данных — целое 64-битное число. Не может быть меньше 0.
Ошибки
  • Errors — массив информации об ошибках, произошедших при обработке запроса (обязательно). Тип данных — массив.
  • Errors.Error — информация об одной ошибке, произошедшей при обработке запроса (обязательно). Тип данных — сложный.
  • Errors.Error.Level — сообщение об ошибке, полученное от поставщика (обязательно). Тип данных — перечисление, возможные значения:
    • APIFormat — ошибка уровня валидации запроса.
    • Supplier — ошибка, полученная от поставщика услуг или внешнего источника данных.
    • Runtime — ошибка в процессе обработки запроса.
    • Network - непредвиденная ошибка сети.
  • Errors.Error.Code — код произошедшей ошибки (обязательно). Тип данных — ushort (беззнаковое 16-битное число).
  • Errors.Error.Message — серверное сообщение об ошибке (обязательно). Тип данных — строка.
  • Errors.Error.ServiceMessage — сообщение об ошибке, полученное от поставщика (опционально). Тип данных — строка.
  • Errors.Error.AdditionalInfo — содержит различную дополнительную информацию об ошибке (опционально). Тип данных — сложный.
  • Errors.Error.AdditionalInfo.InfoItem — единичная дополнительная информация об ошибке (опционально). Тип данных — сложный.
  • Errors.Error.AdditionalInfo.InfoItem.InfoKey — тип дополнительной информации (опционально). Тип данных — перечисление, возможные значения:
    • SegmentsStatus — информация о статусах сегментов при невалидном статусе одного из них при бронировании (опционально). Передаётся в формате номер_сегмент:статус_сегмента,номер_сегмент:статус_сегмента и так далее по числу сегментов, где «,» — разделитель информации о разных сегментах, а «:» — разделитель номера (нумерация с 0) и статуса этого сегмента.
  • Errors.Error.AdditionalInfo.InfoItem.InfoValue — дополнительная информация об ошибке (опционально). Тип данных — строка.
Предупреждения
  • Warnings — массив важных информационных сообщений о специфике обработки запроса. Тип данных — массив.
  • Warnings.Warning — информационное сообщение о специфике обработки запроса. Тип данных — сложный.
  • Warnings.Warning.Code — код типа сообщения. Тип данных — ushort (беззнаковое 16-битное число).
  • Warnings.Warning.Message — текст сообщения. Тип данных — строка.
Тело ответа
  • ResponseBody — контейнер для тела ответа. Тип данных — сложный.
Пример блока авторизации по AuthToken

        <ns1:Requisites>
          <stl:AuthToken>****</stl:AuthToken>
        </ns1:Requisites>
        <ns1:UserID>11111</ns1:UserID>