Спецификация метода Cryptic

Пример вызова


Протокол: HTTP GET
Адресная строка: api/Cryptic/Index?commandText={commandText}&sessionId={sessionId}&idProfile={idProfile}&idSystem={idSystem}&languageCode={languageCode}&securityKey={securityKey}&mock={mock}


Метод апи: Index
Данный метод позволяет выполнить произвольную команду терминала системы бронирования и получить ответ в виде plain text

Информация о запросе

Ниже приведены параметры запроса и их краткое описание

Параметры запроса

НазваниеОписаниеТИП
commandText отправляемая команда

GET

sessionId идентификатор сессии для отправления криптик команды

GET

idProfile идентификатор финансового профиля для применения сборов

GET

idSystem поставщик, в который отправляется запрос отмены брони

GET

languageCode идентификатор языка

GET

securityKey ключ для доступа к сервису, предоставляется по запросу на support@corteos.ru

GET

mock использовать в ответе фиктивные данные для разработки (true/false)

GET


Описание работы сервиса

Cryptic - позволяет выполнить произвольную команду терминала системы бронирования и получить ответ в виде plain text.

Например, запрос наличия мест Москва-Лондон

Ответ на запрос Cryptic

Общая информация о структуре ответа

Ответ метода Cryptic содержит в себе 3 узла:

  • Errors - ошибки, произошедшие в процессе выполнения запроса;
  • FreeTextData - ответ в виде plain text;

FreeTextData

Ответ в виде plain text.

Например:

<?xml version="1.0" encoding="utf-8" ?>
<FreeTextData>
  ANMOWLON
  ** AMADEUS AVAILABILITY - AN ** LON LONDON.GB                  0 TU 24OCT 2203
  1FV*SU6036  J7 C6 D6 I5 Z3 Y7 B7 /VKO A LED 1  2355    0125+1E0/319
  M7 U7 P7 K7 H7 L7 Q7 T7 E7 N7 R0 G0 V0
  *AY 168  Y9 B9 H9 K9 M9 P8 T7 /LED 1 HEL 2  0545+1  0655+1E0/AT7
  L4 V3 S3 N2 Q2 O1 Z1 R1 G2 X1 EL
  BA 795  J9 C7 D4 Y9 B9 H6 ML /HEL 2 LHR 3  0745+1  0900+1E0/320      11:05
  S9 G9
  2FV*SU6036  J7 C6 D6 I5 Z3 Y7 B7 /VKO A LED 1  2355    0125+1E0/319
  M7 U7 P7 K7 H7 L7 Q7 T7 E7 N7 R0 G0 V0
  *AY 168  Y9 B9 H9 K9 M9 P8 T7 /LED 1 HEL 2  0545+1  0655+1E0/AT7
  L4 V3 S3 N2 Q2 O1 Z1 R1 G2 X1 EL
  BA:AY5905  J9 C9 D4 I9 Y9 B9 H9 /HEL 2 LHR 3  0745+1  0900+1E0/320      11:05
  K9 M9 P9 T9 L9 V9 S9 N9 Q9 G9
  3   S7 021  Y4 P4 B4 H4 K4 M4 L4  DME   LED 1  2345    0120+1E0/E70
  V4 T4 R4 S4 E4 N4 QR OR WR GR
  *AY 168  Y9 B9 H9 K9 M9 P8 T7 /LED 1 HEL 2  0545+1  0655+1E0/AT7
  L4 V3 S3 N2 Q2 O1 Z1 R1 G2 X1 EL
  BA 795  J9 C7 D4 Y9 B9 H6 ML /HEL 2 LHR 3  0745+1  0900+1E0/320      11:15
  S9 G9
</FreeTextData>

Errors

Контейнер ошибок, каждый элемент которого выглядит следующим образом:
Module: MASTERPRICERPARSER Method: TRYEXECUTE Error: TRANSACTION UNABLE TO PROCESS : CB (711 / 301)
В данном ответе сожержится следующая информация:

  • Module - название модуля, в котором произошла ошибка
  • Method - имя процедуры, в которой возникла ошибка
  • Error - описание ошибки
В данном примере приведена системная ошибка на стороне поставщика система бронирования Amadeus.




Структура запроса при отправке запроса в теле сообщения

  • id_Profile - int, число, идентификатор финансового профиля(финансовый профиль) для применения 3D и финусловий;
  • SecurityKey - ключ для работы с API;
  • IsMock - bool - используется только для разработки, для моментального получения прегенеренного ответа;
  • id_System - система бронирования - идентификатор GDS
  • CommandText - string - текст команды;
  • SessionId - string - необязательное поле, идентификатор сессии;

Пример для отправки запроса в теле сообщения

<?xml version="1.0" encoding="utf-8" ?>
<CrypticRequest id_Profile="XXX" SecurityKey="XXXXXXXXX" id_System="3">
  <CommandText>ANMOWLON</CommandText>
  <SessionId />
</CrypticRequest>

Пример успешного ответа

<?xml version="1.0" encoding="utf-8" ?>
<CrypticResponse>
  <Errors/>
  <ReferenceContainer/>
  <FreeTextData>
    ANMOWLON
    ** AMADEUS AVAILABILITY - AN ** LON LONDON.GB                  0 TU 24OCT 2203
    1FV*SU6036  J7 C6 D6 I5 Z3 Y7 B7 /VKO A LED 1  2355    0125+1E0/319
    M7 U7 P7 K7 H7 L7 Q7 T7 E7 N7 R0 G0 V0
    *AY 168  Y9 B9 H9 K9 M9 P8 T7 /LED 1 HEL 2  0545+1  0655+1E0/AT7
    L4 V3 S3 N2 Q2 O1 Z1 R1 G2 X1 EL
    BA 795  J9 C7 D4 Y9 B9 H6 ML /HEL 2 LHR 3  0745+1  0900+1E0/320      11:05
    S9 G9
    2FV*SU6036  J7 C6 D6 I5 Z3 Y7 B7 /VKO A LED 1  2355    0125+1E0/319
    M7 U7 P7 K7 H7 L7 Q7 T7 E7 N7 R0 G0 V0
    *AY 168  Y9 B9 H9 K9 M9 P8 T7 /LED 1 HEL 2  0545+1  0655+1E0/AT7
    L4 V3 S3 N2 Q2 O1 Z1 R1 G2 X1 EL
    BA:AY5905  J9 C9 D4 I9 Y9 B9 H9 /HEL 2 LHR 3  0745+1  0900+1E0/320      11:05
    K9 M9 P9 T9 L9 V9 S9 N9 Q9 G9
    3   S7 021  Y4 P4 B4 H4 K4 M4 L4  DME   LED 1  2345    0120+1E0/E70
    V4 T4 R4 S4 E4 N4 QR OR WR GR
    *AY 168  Y9 B9 H9 K9 M9 P8 T7 /LED 1 HEL 2  0545+1  0655+1E0/AT7
    L4 V3 S3 N2 Q2 O1 Z1 R1 G2 X1 EL
    BA 795  J9 C7 D4 Y9 B9 H6 ML /HEL 2 LHR 3  0745+1  0900+1E0/320      11:15
    S9 G9
  </FreeTextData>
  <SessionId>1OFJH3P7XD8GC1UJHY07OD5W66###2###01JA2T0WWF</SessionId>
</CrypticResponse>

Тестовая форма для отправки запроса через HTML FORM

Заполните недостающие данные в тестовой форме и нажмите кнопку "отправить" для проверки работы запроса.

Описание отправки терминальных команд

  • Открытие сессии. Для открытия сессии поле "Идентификатор сессии" необходимо оставить пустым. Так Кортеос открывает сессиию с терминалом указанной ГДС
  • Отправка произвольного количества терминальных команд. Полученный идентификатор сессии нужно вставить в поле "Идентификатор сессии". Вставить текст команды в соответствующее поле. При необходимости повторить шаг.
  • Закрытие сессии. Для закрытия сессии необходимо вставить идентификатор сессии в соотвествующее поле. Текст команды в случае закрытия сессии - CLOSE
Пример запроса можно посмотреть выше в разделе "Пример для отправки запроса в теле сообщения"