Разделы и статьи

Content API — описание объектов размещения

Какие данные синхронизируются

На схеме показаны этапы получения описания отеля в Content API — описание отеля, категорий номеров, тарифов, услуг, фото отеля и категорий номеров:

ea7a83fff07d99474abdc5e54d23bd35.png


Синхронизация работает только по объектам, которые настроят интеграцию с каналом продаж в менеджере каналов.

Мы не проверяем данные, которые отельеры добавляют в личном кабинете. Канал продаж при получении данных в Content API может проверить данные самостоятельно. Как правило, отели хорошо следят за контентом, так как эта информация отображается на официальном сайте при помощи модуля бронирования TL: Booking Engine.


Как получить полное описание всех объектов размещения

В методе /v1/properties Content API впишите в поле «include» — all.

914f4eaa371a4e05e1d8943d133f3221.png


В каком порядке отображаются изображения в api/content и api/search

Порядок устанавливается отельером в личном кабинете TravelLine и каналу продаж необходимо реализовать порядок отображения изображений объекта размещения или категории номера, который приходит по API.


Как получить данные отелей определенного региона

В Geo API V1 можно получить список объектов по стране, региону, городу. Например, для получения списка объектов по стране, выберите Geo API V1 → /v1/countries/{countryCode}/properties:

6ae3fef4741910e9bd9b40c3ae7eba2a.png


Пример ответа на запрос:

7f3ca55354d49653fb70376c672eb472.png


Можно ли в TravelLine внести данные для конкретного канала

Такие данные отель заполняет на стороне канала. Мы можем разместить только общую информацию и ссылку на ваш канал, при переходе по которой отель сможет заполнить все необходимые данные на вашей стороне. Пример того, что будет видеть отель:

a2d2e15838c073d7ee7c506ac9c72821.png


Пример ссылки на форму регистрации: https://secure.101hotels.com/join


Информация о кроватях в номере

В теле ответа методов описания объектов размещений появились «Оснащения номеров» — roomTypes.amenities. Реализован справочник «Оснащения номеров» — /v1/room-amenity-categories.


Отправка событий каналам продаж через API

Каналы продаж могут получать события, чтобы оперативно реагировать на изменение данных в TravelLine. Событийная модель реализована на основе webhooks — механизма оповещения пользователей системы о событиях. На схеме показаны этапы получения событий при изменении данных в Content API:

fb56eb32a1b529631382deb4a1e37958.png


Виды событий:

  • Добавление прав на средство размещения в рамках партнера (канала продаж) propertyAdded.

  • Удаление прав на средство размещения в рамках партнера (канала продаж) PropertyDeleted.

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


Способ получения событий:

Канал продаж реализует на своей стороне публичный API endpoint, принимающий события, к которому система TravelLine может обращаться с авторизованным доступом.

При изменении контентной информации отельером на стороне TravelLine: описание и фото средства размещения, категорий номеров и тарифов — Платформа TravelLine направляет webhooks о том, что данные изменились, с помощью обращения к публичному endpoint.


Особенности:

  • При получении ответа со статусом, отличным от 200, платформа TravelLine производит попытку повторного запроса. Задержка перед отправкой повторного запроса составляет 1 секунду.

  • Таймаут при отправке событий — 45 секунд.

  • События хранятся 3 дня.


Пример запроса:


Параметры:

  • entityId — идентификатор сущности, по которой произошло изменение (средства размещения);

  • eventType — тип события;

  • eventCreationTime — время, когда событие произошло.

Периодичность отправки событий: события направляются пачками каждые 2 минуты, если за этот промежуток времени появились события для отправки. События в рамках одной пачки могут повторяться, в случае если произошло несколько изменений.


На первом этапе подписки на события необходимо предоставить следующие данные:

  • Типы событий: укажите, какие события вы хотите получать.

  • API endpoint URL: предоставьте URL-адрес, на который будут отправляться уведомления.

  • Авторизационные данные: выберите и укажите тип аутентификации.


Мы поддерживаем два типа аутентификации:

  • API-KEY Auth: для этого типа аутентификации необходимо предоставить API-KEY, который будет использоваться для защиты запросов.

  • Basic Auth: для этого типа аутентификации необходимо предоставить логин и пароль.

Вы можете выбрать наиболее подходящий для вас тип аутентификации.


Обратите внимание
. При получении webhooks важно сохранить текущий принцип актуализации контента — обращение к методам Content API — 1 раз в сутки в ночное время, так как платформа TravelLine не гарантирует доставку всех сообщений до партнеров.


Как найти данные в конкретном регионе

1. Получаете список объектов в регионе: /api/geo/​v1​/regions​/{regionId}​/properties.

2. Передаете список объектов в метод поиска: /api/search/​v1​/properties​/room-stays​/search.


Как найти данные в конкретном городе

1. Получаете список объектов в городе: /api/geo/v1​/cities​/{cityId}​/properties.

2. Передаете список объектов в метод поиска: /api/search/v1/properties/room-stays/search.