Partner API имеет ограничения на количество запросов. Если лимит запросов будет исчерпан, API покажет код ошибки 429 и json в таком формате:
{
"message": "%описание%"
}
Ниже представлены базовые лимиты, которые могут быть пересмотрены в индивидуальном порядке, — все зависит от роста числа бронирований:
Search API
Агрегационный поиск: 3 запроса в секунду, 20 запросов в минуту, 900 запросов в час.
Поиск по отелю: 50 запросов в секунду, 200 запросов в минуту, 1000 запросов в час.
Поиск по дополнительным услугам: 10 запросов в секунду, 100 запросов в минуту, 1000 запросов в час.
Поиск по правилам раннего заезда и позднего выезда: 10 запросов в секунду, 100 запросов в минуту, 1000 запросов в час.
Reservation API
Verify: 10 запросов в секунду, 15 запросов в минуту, 100 запросов в час.
Created: 10 запросов в секунду, 15 запросов в минуту, 100 запросов в час.
Cancel: 5 запросов в секунду, 10 запросов в минуту, 50 запросов в час.
CalculatePenalty: 10 запросов в секунду, 15 запросов в минуту, 100 запросов в час
Read: 50 запросов в секунду, 500 запросов в минуту, 5000 запросов в час.
Content API
На все API: 50 запросов в секунду, 200 запросов в минуту, 3000 запросов в час.
Geo API
На все API: 50 запросов в секунду, 1000 запросов в минуту, 5000 запросов в час.
Например, установлено ограничение по поиску отелей в Search API — 50 запросов в секунду. Если за одну секунду пришел 51-й запрос, все остальные запросы будут возвращаться с ошибкой, пока она не закончится.
Список кодов и описание ошибок
HTTP-код | Краткое описание ошибки | Детальное описание ошибки |
200 | Запрос успешно выполнен | Штатный ответ на операцию, ошибок не возникло. |
400 |
Incorrect Request | Некорректный запрос. Проверьте корректность введенных параметров в запросе на вашей стороне:
|
Incorrect CreateBookingToken |
Некорректный уникальный токен брони. Проверьте корректность значения на вашей стороне. | |
Customer: firstName is required | Необходимо ввести имя клиента. | |
Customer: lastName is required | Необходимо ввести фамилию клиента. | |
Guest: firstName is required | Необходимо ввести имя гостя. | |
Guest: lastName is required | Необходимо ввести фамилию гостя. | |
GuestCount: number of adults not specified | Не указано количество взрослых гостей. | |
ArivalDateTime {ARRIVAL_DATE} should be before departureDateTime {DEPARTURE_DATE} | Время заезда должно быть раньше даты выезда. | |
Start date earlier than the end date | Дата начала проживания должна быть раньше даты окончания. | |
Booking is null | Направлен пустой запрос на создание или верификацию брони. Проверьте корректность запроса на вашей стороне. | |
placement.code {PLACEMENT_CODE} incorrect | Неверный код размещения. | |
BookingOrder: services not supported | Услуги не поддерживаются. | |
BookingOrder: customer is required | Требуется указать клиента. | |
BookingOrder: roomStays not found | Вариант проживания не найден. | |
RoomStay: incorrect guest count, can`t place | Указано неправильное количество гостей. | |
RoomStay: more guests than specified in GuestCount | Указано больше гостей, чем предполагает поле GuestСount. | |
Booking: roomStays is required | Необходимо выбрать вариант проживания. | |
RoomStay: stayDates is required | Требуется указать период проживания — дата и время выезда/заезда. | |
RoomStay: ratePlan is required | Требуется указать тарифный план. | |
RoomStay: roomType is required | Требуется указать информацию о категории номера. | |
401 | Ошибка авторизации | Проверьте корректность введенного API-ключа на вашей стороне. |
403 | Отель не предоставил доступ к своим данным | Попробуйте вызвать метод повторно не ранее, чем через 5 минут. |
404 | Указан неправильный путь запроса | Возможно, объект удален или указан неверный id. |
429 | Технические правила платформы: большое количество запросов в ограниченный период времени | Partner API имеет ограничения на количество запросов в секунду, минуту, час. Информация о том, какой именно лимит превышен, передается в параметре warning в ответе на запрос. В таком случае необходимо дождаться завершения часа, минуты, секунды. |
500 | Внутренняя ошибка сервера | Попробуйте вызвать метод повторно не менее, чем через 5 минут. Возможно, проблема на нашей стороне. Если ошибка повторяется, обратитесь в службу поддержки на support@travelline.ru. |