Описание API | Интернет-магазин круизов компании Мостурфлот

Описание API

Версия API 2.0.14, последнее изменение 06.05.2022 15:01 (MSK).

Для работы с API необходимо получить уникальный идентификатор пользователя (USERHASH). Работа с API организуется путём отправки HTTP-запросов на адрес https://booking.mosturflot.ru/api?language=en-US, необходимые параметры передаются методом GET, POST, либо путём загрузки XML-файла с параметрами запроса (в случае загрузки файла, его имя может быть любым, если загружено несколько файлов, будет обработан только первый из них). Обрабатываются только ожидаемые параметры, всё остальное игнорируется. Ответ предоставляется в формате XML либо JSON (формат можно выбрать, установив соответствующий глобальный параметр).


Речные круизы - Информация о круизе

Возвращает полные данные по конкретному круизу. Объём данных определяется параметрами запроса.

Параметры
  • tourid  -  Идентификатор круиза. Определяет круиз, по которому запрашиваются данные.
    • Тип: Целое число
    • Обязательный: Да
  • routedetail  -  Подробности маршрута. При установке в TRUE в ответ будут добавлены данные о маршруте, стоянках и экскурсиях.
    • Тип: Логический
    • Обязательный: Нет
    • Значение по умолчанию: FALSE
  • tariffs  -  Тарифы. При установке в TRUE в ответ будут добавлены данные о тарифах.
    • Тип: Логический
    • Обязательный: Нет
    • Значение по умолчанию: FALSE
  • loading  -  Загрузка круиза. При установке в TRUE в ответ будут добавлены данные о фактической загрузке. Информация доступна не для всех круизов (если недоступна, соответствующие разделы ответа будет пусты).
    • Тип: Логический
    • Обязательный: Нет
    • Значение по умолчанию: FALSE
Формат ответа
  • createdate  -  Дата и время создания ответа
    • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
    • Обязательный: Да
  • version  -  Текущая версия API
    • Тип: Строка
    • Обязательный: Да
  • status  -  Результат выполнения запроса. -1 - Ошибка выполнения, 0 - Нет данных, 1 - Выполнен успешно.
    • Тип: Целое число
    • Обязательный: Да
  • answer  -  Ответ
    • Тип: Набор данных
    • Обязательный: Да
    • tourid  -  ID круиза
      • Тип: Целое число
      • Обязательный: Да
    • shipid  -  ID теплохода
      • Тип: Целое число
      • Обязательный: Да
    • shipname  -  Название теплохода
      • Тип: Строка
      • Обязательный: Да
    • shipown  -  Признак собственности. TRUE - собственный теплоход ОАО "Мостурфлот".
      • Тип: Логический
      • Обязательный: Да
    • tourstart  -  Дата и время начала круиза
      • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
      • Обязательный: Да
    • tourfinish  -  Дата и время окончания круиза
      • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
      • Обязательный: Да
    • tourroute  -  Маршрут круиза
      • Тип: Строка
      • Обязательный: Да
    • tourdays  -  Продолжительность круиза
      • Тип: Целое число
      • Обязательный: Да
    • tourholiday  -  Признак круиза выходного дня. TRUE - круиз выходного дня.
      • Тип: Логический
      • Обязательный: Да
    • touronline  -  Признак online-продажи. TRUE - круиз доступен для online-бронирования и продажи.
      • Тип: Логический
      • Обязательный: Да
    • tourminprice  -  Минимальная цена. Указывается минимальная цена для одного взрослого пассажира на основном месте.
      • Тип: Целое число
      • Обязательный: Да
    • tourminpriceregular  -  Минимальная цена до применения скидки. Вспомогательное поле для внутреннего использования.
      • Тип: Целое число
      • Обязательный: Да
    • tourminpricediscount  -  Скидка для минимальной цены. Вспомогательное поле для внутреннего использования.
      • Тип: Целое число
      • Обязательный: Да
    • tourisspecialoffer  -  Круиз является спецпредложением. Скидка может быть указана в поле TOURDISCOUNT, либо она может быть уже учтена в тарифах.
      • Тип: Логический
      • Обязательный: Да
    • tourdiscount  -  Скидка. Указывается в процентах, следует применять ко всем тарифам, результат необходимо округлять до целого.
      • Тип: Число с плавающей точкой
      • Обязательный: Да
    • tourdiscountexp  -  Срок действия скидки. Скидка действует до указанной даты и времени. Пустое значение означает бессрочную скидку.
      • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
      • Обязательный: Да
    • tourroutedetail  -  Cтоянки круиза. Присутствует при установке в TRUE параметра ROUTEDETAIL.
      • Тип: Массив данных
      • Обязательный: Нет
      • item (элемент массива)  -  Данные о стоянке
        • Тип: Набор данных
        • Обязательный: Нет
        • pointname  -  Название стоянки
          • Тип: Строка
          • Обязательный: Да
        • cityid  -  ID города (населённого пункта)
          • Тип: Целое число
          • Обязательный: Да
        • cityname  -  Название города (населённого пункта)
          • Тип: Строка
          • Обязательный: Да
        • date  -  Дата стоянки. Значащей является только дата, время будет установлено в 00:00:00 (МСК).
          • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
          • Обязательный: Да
        • arrival  -  Дата и время прибытия на стоянку
          • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
          • Обязательный: Да
        • departure  -  Дата и время отправления со стоянки
          • Тип: Дата и время, формат определяется значением глобального параметра DATETIME
          • Обязательный: Да
        • excursions  -  Экскурсии
          • Тип: Массив данных
          • Обязательный: Нет
          • item (элемент массива)  -  Данные об экскурсии
            • Тип: Набор данных
            • Обязательный: Нет
            • desc  -  Описание экскурсии. Текст в формате HTML.
              • Тип: Строка
              • Обязательный: Да
            • type  -  Тип экскурсии. 0 - включена в стоимость, 1 - экскурсия за дополнительную плату.
              • Тип: Целое число
              • Обязательный: Да
            • typename  -  Название типа экскурсии
              • Тип: Строка
              • Обязательный: Да
        • note  -  Примечание к стоянке
          • Тип: Строка
          • Обязательный: Да
    • tourtariffs  -  Тарифы круиза. Присутствует при установке в TRUE параметра TARIFFS.
      • Тип: Массив данных
      • Обязательный: Нет
      • item (элемент массива)  -  Данные о тарифах категории кают
        • Тип: Набор данных
        • Обязательный: Нет
        • categoryid  -  ID категории кают
          • Тип: Целое число
          • Обязательный: Да
        • categoryname  -  Название категории
          • Тип: Строка
          • Обязательный: Да
        • categoryminprice  -  Минимальная цена категории. Указывается минимальная цена для одного взрослого пассажира на основном месте.
          • Тип: Целое число
          • Обязательный: Да
        • categorytariffs  -  Тарифы категории
          • Тип: Массив данных
          • Обязательный: Нет
          • item (элемент массива)  -  Данные о тарифах категории кают
            • Тип: Набор данных
            • Обязательный: Нет
            • tariffid  -  ID тарифа
              • Тип: Целое число
              • Обязательный: Да
            • tariffname  -  Название тарифа
              • Тип: Строка
              • Обязательный: Да
            • tariffpassqty  -  Число пасажиров. 0 - тариф без пассажира (доплата), 1 - пассажир присутствет.
              • Тип: Строка
              • Обязательный: Да
            • tariffminprice  -  Минимальная цена тарифа
              • Тип: Целое число
              • Обязательный: Да
            • meals  -  Варианты питания
              • Тип: Массив данных
              • Обязательный: Нет
              • item (элемент массива)  -  Данные о варианте питания
                • Тип: Набор данных
                • Обязательный: Нет
                • mealid  -  ID варианта питания
                  • Тип: Целое число
                  • Обязательный: Да
                • mealname  -  Название варианта питания
                  • Тип: Строка
                  • Обязательный: Да
                • mainprice  -  Полная цена для основного места. Пустое значение означает недоступность тарифа, 0 - бесплатно.
                  • Тип: Целое число
                  • Обязательный: Да
                • upperprice  -  Полная цена для верхнего места. Пустое значение означает недоступность тарифа, 0 - бесплатно.
                  • Тип: Целое число
                  • Обязательный: Да
                • advprice  -  Полная цена для дополнительного места. Пустое значение означает недоступность тарифа, 0 - бесплатно.
                  • Тип: Целое число
                  • Обязательный: Да
    • tourtariffsnote  -  Примечание к тарифам круиза. Присутствует при установке в TRUE параметра TARIFFS.
      • Тип: Строка
      • Обязательный: Нет
    • tourcabinstotal  -  Общее число кают
      • Тип: Целое число
      • Обязательный: Да
    • tourcabinsbusy  -  Число занятых кают
      • Тип: Целое число
      • Обязательный: Да
    • tourcabinsfree  -  Число свободных кают
      • Тип: Целое число
      • Обязательный: Да
    • tourloadimage  -  План палуб теплохода. URL изображения без указания протокола (http://). При возможности будет отображена реальная загрузка круиза.
      • Тип: Строка
      • Обязательный: Да
    • tourloading  -  Данные о загрузке. Присутствует при установке в TRUE параметра LOADING.
      • Тип: Массив данных
      • Обязательный: Нет
      • item (элемент массива)  -  Данные о загрузке каюты
        • Тип: Набор данных
        • Обязательный: Нет
        • cabinid  -  ID каюты
          • Тип: Целое число
          • Обязательный: Да
        • cabinnumber  -  Номер каюты
          • Тип: Целое число
          • Обязательный: Да
        • cabincategoryid  -  ID категории каюты
          • Тип: Целое число
          • Обязательный: Да
        • cabincategoryname  -  Название категории каюты
          • Тип: Строка
          • Обязательный: Да
        • cabinstatus  -  Статус каюты. -2 - недоступна, -1 - оплачена, 0 - забронирована, 1 и более - число свободных мест.
          • Тип: Целое число
          • Обязательный: Да
        • cabinstatusname  -  Название состояния каюты
          • Тип: Строка
          • Обязательный: Да
    • tournote  -  Примечание к круизу
      • Тип: Строка
      • Обязательный: Да
  • request  -  Запрос. Содержит массив принятых и использованных для выполнения запроса параметров.
    • Тип: Массив данных
    • Обязательный: Да
  • warnings  -  Предупреждения. Содержит массив предупреждений (если есть).
    • Тип: Массив данных
    • Обязательный: Да
  • errors  -  Ошибки. Содержит массив ошибок (если есть).
    • Тип: Массив данных
    • Обязательный: Да
Пример GET-запроса
Пример XML-запроса
Пример XML ответа
Пример JSON ответа (преобразован в массив)