Мастер-Тур(15):API для отдачи цен в поисковые системы

Материал из Megatec
Перейти к: навигация, поиск

Статья находится на стадии разработки.
Версия статьи от 9-08-2016.

Поддерживаемые версии ПК «Мастер-Тур»:
Начиная с 15 версии


Введение

Данный web-сервис выполняет следующие задачи:

  • выгружает справочники (города вылета, страны, курорты, отели и т.д.)
  • осуществляет параметризованный поиск цен
  • актуализирует выбранный тур по его идентификатору

Выдача результатов осуществляется в формате JSON

Установка

Настройка

Загрузка справочников

Выгрузка списка стран (GetCountries)

Метод производит выгрузку всех направлений туроператора.

  • Формат запроса:
    •  ?action=GetCountries
  • Принимаемые параметры:
    • id – идентификатор страны (опциональный, если указан, то запрашивается только одна запись)
  • Возвращаемый результат:
    • id – идентификатор страны
    • name – название страны (рус/анг)
Пример

Вызов метода GetCountries

http://localhost:9000/TourSearchOwin/searchApi?action=GetCountries

Возвращаемый результат метода GetCountries (в формате JSON)

{
   "version": "1.0",
   "countries":    [
            {
         "id": 97,
         "name": "Тунис"
      },            
            {
         "id": 90,
         "name": "Австрия"
      },
            {
         "id": 30,
         "name": "Франция"
      }            
   ]
}


Выгрузка списка городов вылета (GetDepartCities)

Метод производит выгрузку всех доступных городов вылета, а также содержит данные о том, какие направления доступны из каждого города вылета.

  • Формат запроса:
    •  ?action=GetDepartCities
  • Принимаемые параметры:
    • id – идентификатор города вылета (опциональный, если указан, то запрашивается только одна запись)
  • Возвращаемый результат:
    • id – идентификатор города
    • name – название города (рус/анг)
    • countriesTo – идентификаторы стран, которые присутствуют в данном городе вылета
Пример

Вызов метода GetDepartCities

http://localhost:9000/TourSearchOwin/searchApi?action=GetDepartCities

Возвращаемый результат метода GetDepartCities (в формате JSON)

{
   "version": "1.0",
   "departCities":    [
            {
         "id": -1,
         "name": "Не указан",
         "countriesTo":          [
            97,
            90
         ]
      },
            {
         "id": 1,
         "name": "Москва",
         "countriesTo":          [
            90,
            30
         ]
      }
   ]
}


Выгрузка списка курортов (GetResorts)

Метод возвращает список всех доступных курортов.

  • Формат запроса:
    •  ?action=GetResorts
  • Принимаемые параметры:
    • id – идентификатор курорта (опциональный, если указан, то запрашивается только одна запись)
  • Возвращаемый результат:
    • id – идентификатор курорта
    • name – название курорта (рус/анг)
    • countryId – идентификатор страны, в котором расположен курорт
Пример

Вызов метода GetResorts

http://localhost:9000/TourSearchOwin/searchApi?action=GetResorts

Возвращаемый результат метода GetResorts (в формате JSON)

{
   "version": "1.0",
   "countries":    [
            {
         "id": 1,
         "name": "Каринтия",
         "countryId": 90
      },           
            {
         "id": 42,
         "name": "Хаммамед",
         "countryId": 97
      },
            {
         "id": 40,
         "name": "Сусс",
         "countryId": 97
      }           
   ]
}


Выгрузка списка категорий отелей (GetHotelCategories)

Метод возвращает список категорий отелей (примеры: 3*, 4*, Apts и т.д.).

  • Формат запроса:
    •  ?action=GetHotelCategories
  • Принимаемые параметры:
    • id – идентификатор категории отеля (опциональный, если указан, то запрашивается только одна запись)
  • Возвращаемый результат:
    • id – идентификатор категории отеля
    • name – название категории отеля
Пример

Вызов метода GetHotelCategories

http://localhost:9000/TourSearchOwin/searchApi?action=GetHotelCategories

Возвращаемый результат метода GetHotelCategories (в формате JSON)

{
   "version": "1.0",
   "hotelCategories":    [
            {
         "id": 59,
         "name": "5*"
      },
            {
         "id": 58,
         "name": "4*"
      },
            {
         "id": 57,
         "name": "3*"
      }
   ]
}


Выгрузка списка отелей (GetHotels)

Метод возвращает список всех доступных отелей, на которые есть актуальные цены.

  • Формат запроса:
    •  ?action=GetHotels
  • Принимаемые параметры:
    • id – идентификатор отеля (опциональный, если указан, то запрашивается только одна запись)
  • Возвращаемый результат:
    • id – идентификатор отеля
    • name – название отеля
    • hotelCategoryId – идентификатор категории отеля
    • resortId – идентификатор курорта, в котором расположен отель
Пример

Вызов метода GetHotels

http://localhost:9000/TourSearchOwin/searchApi?action=GetHotels

Возвращаемый результат метода GetHotels (в формате JSON)

{
   "version": "1.0",
   "hotels":    [
            {
         "id": 672,
         "name": "'Opal",
         "hotelCategoryId": 59,
         "resortId": 0
      },
            {
         "id": 106,
         "name": "OPERA LAFAYETTE",
         "hotelCategoryId": 23,
         "resortId": 42
      },
            {
         "id": 683,
         "name": "Altstadt Vienna",
         "hotelCategoryId": 23,
         "resortId": 0
      },
            {
         "id": 702,
         "name": "Albatros",
         "hotelCategoryId": 57,
         "resortId": 0
      },
            {
         "id": 709,
         "name": "Am Brilliantengrund",
         "hotelCategoryId": 23,
         "resortId": 40
      },
            {
         "id": 2362,
         "name": "Gastehaus Franz Riml",
         "hotelCategoryId": 58,
         "resortId": 0
      }            
   ]
}


Выгрузка видов питания (GetMeals)

Метод возвращает список видов питания (примеры: HB, BB, без питания и т.д.).

  • Формат запроса:
    •  ?action=GetMeals
  • Принимаемые параметры:
    • id – идентификатор вида питания (опциональный, если указан, то запрашивается только одна запись)
  • Возвращаемый результат:
    • id – идентификатор вида питания
    • name – название вида питания
Пример

Вызов метода GetMeals

http://localhost:9000/TourSearchOwin/searchApi?action=GetMeals

Возвращаемый результат метода GetMeals (в формате JSON)

{
   "version": "1.0",
   "meals":    [
            {
         "id": 1,
         "name": "Пансион"
      },
            {
         "id": 2,
         "name": "Полупансион"
      },
            {
         "id": 4,
         "name": "Завтрак буфет"
      },
            {
         "id": 11,
         "name": "Шведский стол"
      }
   ]
}