Получение результатов поиска
GET tour/search-requests/:id
где :id — идентификатор запроса, полученный в ответе метода POST tour/search-requests.
| Параметр | Тип | Описание |
|---|---|---|
| page | int | Номер страницы для выдачи результатов. По умолчанию равен 1. |
Пример:
curl -i -H 'itapi-auth-key: some_key_value' https://itapi.iterios.com/api/v1/tour/search-requests/8490?page=1
Пример ответа:
{
"status":
{...}, // объект статуса
"page":
{...}, //объект page
"data": [
{...} // один из результатов
]
}
Описание параметров в status: таблица 3
| Код | Описание |
|---|---|
| status | Текущий статус поиска: queue, process, completed, error |
| price_count | Общее количество найденных предложений |
| price_min | Самая минимальная цена, по всем адаптерам |
| currency | Валюта, в которой выполняется поиск |
| adapter[] | Массив со статусами по каждому поставщику |
Атрибуты ответа для массива status.adapter (статус по каждому поставщику):
| Код | Описание |
|---|---|
| id | Идентификатор поставщика (из tour/reference) |
| name | Название поставщика |
| price_min | Минимальная найденная цена для этого адаптера |
| price_count | Найденное количество цен (может обновляться при подгрузке данных) |
| status | Текущий статус поиска:
|
Описание параметров в data: таблица 3.1
| Параметр | Описание |
|---|---|
| page | Объект с данными для постраничной навигации. Атрибуты описаны в таблице 3.2 |
| items | Массив с ценовыми предложениями. Каждый элемент массива — это объект, атрибуты которого описаны в таблице 3.3 |
Описание атрибутов для объекта page (постраничная навигация): таблица 3.2
| Параметр | Описание |
|---|---|
| total | Общее количество найденных результатов (может меняться) |
| page_total | Количество возвращенных элементов |
| price_min | Значение минимальной цены в этих результатах. Целое число, по формуле: $min_price = intval($price * 100) |
| price_max | Значение максимальной цены в этих результатах. Целое число, по формуле: $min_price = intval($price * 100) |
Описание атрибутов для объекта из массива items (ценовые предложения): таблица 3.3
| Параметр | Тип | Описание |
|---|---|---|
| claim_id | string | ID цены в системе поставщика, в основном число, но может быть и текст |
| booking_url | string | Полноценная ссылка в систему поставщика, на форму бронирования этого ценового предложения (тура). |
| adapter | object | Объект с данными поставщика из справочников |
| — adapter[id] | int | Идентификатор поставщика |
| — adapter[name] | string | Название поставщика |
| dep_city | object | Объект с описанием города вылета, содержит как описание из справочников, так и оригинальные значения поставщика |
| — dep_city[id] | int | ID города вылета из справочников |
| — dep_city[name] | string | Название города вылета из справочников |
| — dep_city[orig_id] | string | ID города вылета от поставщика |
| — dep_city[orig_name] | string | Название города вылета от поставщика |
| dep_date | date|string | Дата вылета, в формате YYYY-MM-DD |
| ret_date | date|string | Дата возвращения, в формате YYYY-MM-DD |
| nights | int | Общая продолжительность тура (ночей) |
| tickets | object | Объект с информацией о наличии билетов |
| — tickets[econom] | string(2) | Билеты в категории ECONOM. Значение всегда содержит два символа: туда и обратно. Значения для каждого направления могут быть:
Пример: “YR” — туда “есть”, обратно — “под запрос” |
| — tickets[business] | string(2) | Билеты в категории BUSINESS. Значения такие же, как и для tickets[econom]. |
| price | float | Цена для тура |
| currency | string | Валюта для цены (из запроса) |
| options | object | Массив с дополнительными опциями для ценового предложения |
| options[transport_inc] | int 1|0 | Указывает, включен ли транспорт в цену |
| options[ticket] | int 1|0 | Наличие билетов для этого ценового предложения |
| options[room] | int 1|0 | Наличие мест в отеле для этого ценового предложения |
| hotels | array | Массив с объектами, которые описывают отели, входящие в это ценовое предложение. Атрибуты каждого объекта описаны в таблице 3.4 |
| moment_confirm | int 1|0 | Моментальное подтверждение бронировки |
| exclusive | int 1|0 | Эксклюзивное предложение |
| promo | int 1|0 | Акционное предложение |
| promo_text | string | Текстовое описание акции |
| recommended | int 1|0 | Рекомендуемое предложение |
| best_price | int 1|0 | Лучшая цена |
| early_booking | int 1|0 | Раннее бронирование |
| dep_time | date|string | Время вылета, в ISO формате: Thh:mmTZD (Пример: T19:20+02:00) |
| info | object | Массив с дополнительной информацией |
Описание атрибутов для объекта из массива items[].hotels (отели для ценового предложения): таблица 3.4
| Параметр | Тип | Описание |
|---|---|---|
| id | int | Идентификатор отеля из справочников |
| name | string | Название отеля из справочников |
| orig_id | string | Оригинальный ID из системы поставщика |
| orig_name | string | Оригинальное название из системы поставщика |
| check_in | string|datetime | Дата и время заселения, в формате YYYY-MM-DDThh:mm У некоторых операторов может быть по несколько отелей в одном предложении. |
| check_out | string|datetime | Дата и время выселения, в формате YYYY-MM-DDThh:mm У некоторых операторов может быть по несколько отелей в одном предложении. |
| nights | int | Количество ночей для этого отеля |
| adult | int | Количество взрослых, не всегда есть эта информция |
| child | int | Количество детей, не всегда есть эта информция |
| hotel_url | string | Ссылка на описание отеля в системе туроператора. |
| note | array | Массив строк с текстовыми данными для каждого отеля. |
| category | object | Объект с описанием категории отеля (звезды) |
| — category[id] | int | ID категории из справочников |
| — category[name] | string | Название категории из справочников |
| — category[orig_id] | string | ID категории от поставщика |
| — category[orig_name] | string | Название категории от поставщика |
| room | object | Объект с названием типа номера для отеля, информация только от поставщика |
| — room[orig_id] | string | ID категории номера от поставщика |
| — room[orig_name] | string | Название категории номера от поставщика |
| meal | object | Объект с описанием вариантов питания |
| — meal[id] | string | ID из справочников |
| — meal[name] | string | Название из справочников |
| — meal[orig_id] | string | ID от поставщика |
| — meal[orig_name] | string | Название от поставщика |
| accommodation | object | Объект с названием размещения в отеле, информация только от поставщика |
| — accommodation[orig_id] | string | ID размещения от поставщика |
| — accommodation[orig_name] | string | Название размещения от поставщика |
| city | object | Объект с описанием города (курорта), в котором расположен отель |
| — city[id] | int | ID из справочников |
| — city[name] | string | Название из справочников |
| — city[orig_id] | string | ID от поставщика |
| — city[orig_name] | string | Название от поставщика |
| country | object | Объект с описанием страны, в которой расположен отель |
| — country[id] | int | ID из справочников |
| — country[name] | string | Название из справочников |
| — country[orig_id] | string | ID от поставщика |
| — country[orig_name] | string | Название от поставщика |
Пример ответа:
{
"status": "success",
"data": {
"page": {
"total": 3000,
"page_total": 20,
"price_min": "30000",
"price_max": "62400"
},
"items": [
{
"claim_id": "the_claim_id_from_operator",
"booking_url": "full_url_for_booking_at_the_operator_online",
"adapter": {
"id": 2,
"name": "Join UP!"
},
"dep_city": {
"id": 2,
"name": "Киев",
"orig_id": 23,
"orig_name": "Kiev"
},
"dep_date": "YYYY-MM-DD",
"ret_date": "YYYY-MM-DD",
"nights": 6,
"hotels": [
{
"id": 23,
"name": "Myra Hotel",
"orig_id": 233234,
"orig_name": "Myra Hotel",
"check_in": "YYYY-MM-DDThh:mm",
"check_out": "YYYY-MM-DDThh:mm",
"nights": 3,
"adult": 2,
"child": 0,
"category": {
"id": 5,
"name": "3",
"orig_id": 3,
"orig_name": "***"
},
"room": {
"orig_id": 6347,
"orig_name": "Standard Room"
},
"meal": {
"id": 5,
"name": "AI",
"orig_id": 5,
"orig_name": "AI"
},
"accommodation": {
"orig_id": 654,
"orig_name": "DBL"
},
"city": {
"id": 4678,
"name": "Marmaris",
"orig_id": 4678,
"orig_name": "Marmaris"
},
"country": {
"id": 56,
"name": "Turkey",
"orig_id": 56,
"orig_name": "Turkey"
}
}
],
"tickets": {
"econom": "YY",
"business": "NN"
},
"price": "624.00",
"currency": "USD",
"options": {
"transport_inc": true,
"ticket": true,
"room": true
}
}
]
}
}
