Структура ответа#
Детальное описание структуры ответа от /hotels/view_booking.
Основная структура#
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
supplierOrderId | string | Нет | Идентификатор заказа у поставщика |
partner | ViewBookingPartnerInfo | Нет | Информация о заказе партнера |
hotel | ViewBookingHotelInfo | Нет | Информация об отеле и номере |
guests | ViewBookingGuestsInfo | Нет | Информация о гостях |
prices | ViewBookingPriceInfo | Нет | Ценовая информация |
bookingInfo | ViewBookingInfo | Нет | Статус и даты бронирования |
checkin | date | Да | Дата заезда (YYYY-MM-DD) |
checkout | date | Да | Дата выезда (YYYY-MM-DD) |
upsells | ViewBookingUpsellInfo[] | Нет | Дополнительные услуги |
customer | ViewBookingCustomerInfo | Нет | Контактное лицо |
hostContacts | ViewBookingHostInfo | Нет | Контактная информация владельца квартиры |
extraInfo | ViewBookingExtraInfo | Нет | Дополнительная информация по проживанию |
Структура ViewBookingPartnerInfo#
| Поле | Тип | Описание |
|---|---|---|
partnerOrderId | string | Идентификатор заказа партнера |
comment | string | Комментарий |
amountSellB2b2c | Money | Сумма продажи B2B2C |
Структура ViewBookingHotelInfo#
| Поле | Тип | Описание |
|---|---|---|
hotelId | string | Идентификатор отеля |
room | ViewBookingRoomInfo | Информация о номере |
Структура ViewBookingRoomInfo#
| Поле | Тип | Описание |
|---|---|---|
name | string | Название номера |
mealName | string | Тип питания |
beddingNames | string[] | Типы кроватей |
Структура ViewBookingGuestsInfo#
| Поле | Тип | Описание |
|---|---|---|
count | integer | Общее количество гостей |
adultCount | integer | Количество взрослых |
childrenCount | integer | Количество детей |
guests | ViewBookingGuestDetails[] | Детали гостей |
Структура ViewBookingGuestDetails#
| Поле | Тип | Описание |
|---|---|---|
firstName | string | Имя |
lastName | string | Фамилия |
isChild | boolean | Ребенок |
age | integer | Возраст (для детей) |
citizenship | string | Гражданство (ISO 3166-1 alpha-2) |
gender | string | Пол |
Структура ViewBookingPriceInfo#
| Поле | Тип | Описание |
|---|---|---|
supplier | string | Код поставщика |
contractId | string | Идентификатор контракта (офиса) поставщика |
searchPresetId | string | Идентификатор пресета поиска |
pricingPresetId | string | Идентификатор пресета ценообразования |
payable | Money | Сумма к оплате |
amountSell | Money | Сумма продажи |
paymentType | string | Тип оплаты |
cancellationRules | CancellationRules | Правила отмены |
Структура ViewBookingInfo#
| Поле | Тип | Описание |
|---|---|---|
status | string | Статус бронирования (Completed, Cancelled, Failed) |
isCancellable | boolean | Возможность отмены |
createdAt | datetime | Дата создания (ISO 8601) |
updatedAt | datetime | Дата обновления (ISO 8601) |
cancelledAt | datetime | Дата отмены (ISO 8601) |
Структура ViewBookingUpsellInfo#
| Поле | Тип | Описание |
|---|---|---|
type | string | Тип услуги (early_checkin, late_checkout) |
name | string | Название услуги |
value | Money | Стоимость |
Структура ViewBookingCustomerInfo#
| Поле | Тип | Описание |
|---|---|---|
firstName | string | Имя |
lastName | string | Фамилия |
email | string | |
phone | string | Телефон |
comment | string | Комментарий |
Структура ViewBookingHostInfo#
| Поле | Тип | Описание |
|---|---|---|
name | string | Имя |
email | string | |
phone | string | Телефон |
comment | string | Комментарий |
Структура ViewBookingExtraInfo#
| Поле | Тип | Описание |
|---|---|---|
entrance | string | Номер подъезда |
apartmentNumber | string | Номер квартиры |
entranceCode | string | Код от домофона |
howToFind | string | Как найти дом |
howToGetIn | string | Как попасть в квартиру |
lockCode | string | Код от сейфа или двери |
checkInRules | string | Правила заселения |
checkOutRules | string | Правила выселения |
accommodationRules | string | Правила проживания |
wifiName | string | Название сети Wi-Fi |
wifiPassword | string | Пароль от Wi-Fi |
Примеры ответов#
Успешный ответ#
Развернуть пример
1{
2 "supplierOrderId": "SUP-12345",
3 "partner": {
4 "partnerOrderId": "ORDER-12345",
5 "comment": "VIP клиент"
6 },
7 "hotel": {
8 "hotelId": "hotel-001",
9 "room": {
10 "name": "Стандартный двухместный",
11 "mealName": "Завтрак",
12 "beddingNames": ["Двуспальная кровать"]
13 }
14 },
15 "guests": {
16 "count": 2,
17 "adultCount": 2,
18 "childrenCount": 0,
19 "guests": [
20 {
21 "firstName": "IVAN",
22 "lastName": "IVANOV",
23 "isChild": false,
24 "citizenship": "RU",
25 "gender": "male"
26 },
27 {
28 "firstName": "MARIA",
29 "lastName": "IVANOVA",
30 "isChild": false,
31 "citizenship": "RU",
32 "gender": "female"
33 }
34 ]
35 },
36 "prices": {
37 "supplier": "ostrovok",
38 "contractId": "uy123u8213y2j",
39 "searchPresetId": "87123eh22323",
40 "pricingPresetId": "ed23uhds223f",
41 "payable": {
42 "amount": 1500,
43 "currency": "string"
44 },
45 "amountSell": {
46 "amount": 1500,
47 "currency": "string"
48 },
49 "paymentType": "online",
50 "cancellationRules": {
51 "freeCancellationBefore": "2025-12-13T12:00:00+00:00"
52 }
53 },
54 "bookingInfo": {
55 "status": "Completed",
56 "isCancellable": true,
57 "createdAt": "2025-11-20T10:30:00+00:00",
58 "updatedAt": "2025-11-20T10:30:05+00:00"
59 },
60 "checkin": "2025-12-15",
61 "checkout": "2025-12-18",
62 "customer": {
63 "firstName": "Ivan",
64 "lastName": "Ivanov",
65 "email": "ivan@example.com",
66 "phone": "+79991234567"
67 },
68 "hostContacts": {
69 "name": "Petr",
70 "email": "petr@example.com",
71 "phone": "+12345678",
72 "comment": "comment"
73 },
74 "extraInfo": {
75 "entrance": "1",
76 "apartmentNumber": "1",
77 "entranceCode": "111",
78 "howToFind": "red roof",
79 "howToGetIn": "apartment number 1",
80 "lockCode": "789123",
81 "checkInRules": "after 16:00",
82 "checkOutRules": "before 12:00",
83 "accommodationRules": "string",
84 "wifiName": "wifi name",
85 "wifiPassword": "123qwerty"
86 }
87}Ответ с ошибкой#
1{
2 "error": {
3 "code": "BOOKING_NOT_FOUND",
4 "message": "Бронирование не найдено",
5 "description": "Бронирование с указанным идентификатором не найдено",
6 "errorId": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
7 }
8}Типичные ошибки#
| Код ошибки | Причина | Решение |
|---|---|---|
BOOKING_NOT_FOUND | Бронирование не найдено, не принадлежит клиенту или не является отельным | Проверьте корректность bookingId |
VALIDATION_FAILED | Не передан обязательный параметр (bookingId или language) | Проверьте наличие всех обязательных полей |
SUPPLIER_ERROR | Поставщик вернул ошибку | Повторите запрос позже |
INTERNAL_ERROR | Неизвестный или невалидный ответ от поставщика | Обратитесь в поддержку |
TIMEOUT | Превышено время ожидания ответа от поставщика | Повторите запрос позже |