Мастер-Тур(15):API для отдачи цен в поисковые системы
Статья находится на стадии разработки.
Версия статьи от 9-08-2016.
Поддерживаемые версии ПК «Мастер-Тур»: |
Содержание
Введение
Данный 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*"
}
]
}
|
Выгрузка списка категорий отелей (GetHotelCategories)
Метод возвращает список категорий отелей (примеры: 3*, 4*, Apts и т.д.).
- Формат запроса:
- ?action=GetHotelCategories
- Параметры:
- id – идентификатор категории отеля (опциональный, если указан, то запрашивается только одна запись)
{
"version": "1.0",
"hotelCategories": [
{
"id": {Int32},
"name": {String}
},
...
]
}
Корневой элемент hotelCategories содержит произвольное количество элементов hotelCategory, каждый из которых описывает категорию отеля атрибутами id (идентификатор) и name (название). |
{
"version": "1.0",
"countries": [
{
"id": 97,
"name": "Тунис"
},
{
"id": 90,
"name": "Австрия"
},
{
"id": 30,
"name": "Франция"
}
]
}
|