5  /  12

CheckIn - заезд гостя

Описание

Команда производит заселение гостей в номера.

Направление

PMS -> TurnIP

Метод

POST

Запрос


POST /api/CheckIn HTTP/1.1
Content-Type: application/json
API-KEY: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Length: 1586

{
    "rooms": [
        {
            "room": "101", //Комната
            "channelListID": 41, //Индивидуальный список ТВ-каналов
            "portalID": 3060, //Индивидуальный портал
            "newCheckin": false, //Новый заезд
            "language": "ru", //Язык портала
            "guests": [
                {
                    "guestname": "Константин Константинович", // Имя гостя //Обязательный
                    "checkOutDateTime": "24/12/2023 12:00", //Дата выезда гостя //Обязательный
                    "mainGuest": true, //Основной гость
                    "guestID": "567896", //идентификатор гостя в PMS
                    "guestGroupID": "123456654321" //Группа гостя в PMS
                },
                {
                    "guestname": "Лидия Петровна",
                    "checkOutDateTime": "24/12/2023 12:00",
                    "mainGuest": false,
                    "guestID": "567897",
                    "guestGroupID": "123456654321"
                },
                {
                    "guestname": "Петр Константинович",
                    "checkOutDateTime": "24/12/2023 12:00"
                }
            ]
        },
        {
            "room": "108",
            "roomChannelListID": 41,
            "roomPortalID": 3060,
            "newCheckin": false,
            "roomLanguage": "ru",
            "guests": [
                {
                    "guestname": "Дмитрий Владимирович",
                    "checkOutDateTime": "24/12/2023 12:00",
                    "mainGuest": true,
                    "guestID": "567896",
                    "guestGroupID": "123456654321"
                }
            ]
        }
    ]
}


Параметры запроса

Параметр Тип Значение
rooms array Структура, содержащая список комнат, в которые производится заселение.
rooms:room string Комната, в которою производится заселение. Обязательный параметр.
rooms:channelListID number Индивидуальный список ТВ-каналов, устанавливаемый гостю на период проживания. Список каналов будет применяться к комнате только на период проживания главного гостя в комнате (см. параметр mainGuest).
Идентификатор гостевого портала может быть получен с помощью команды GetChannelList.
rooms:portalID number Индивидуальный портал, устанавливаемый гостю на период его проживания. Индивидуальный портал будет применяться к комнате только на период проживания главного гостя в комнате (см. параметр mainGuest).
Идентификатор гостевого портала может быть получен с помощью команды GetPortalList.
rooms:newCheckin boolean Выселить всех предыдущих гостей из номере пред операцией: true или операция подселения: false. Значение по умолчанию: false.
rooms:language string Язык портала гостя. Имеет эффект только для главного гостя (см. параметр mainGuest). Если не передается, используется язык портала по умолчанию.
rooms:guests array Структура, содержащая список гостей, заезжающих в комнату.
rooms:guests:guestname string Имя гостя. Обязательный параметр.
rooms:guests:checkOutDateTime string Время выезда гостя. Обязательный параметр. Время заезда всегда устанавливается равным времени проведения операции поселения (текущему времени).

Формат "DD/MM/YYYY HH:MM".

Ограничение: время выезда должно быть больше текущего времени. Передача времени выезда меньшего текущего привет к ошибке 400 Bad Request: {"number":20,"message":"Check-out time is less than current."}.
rooms:guests:mainGuest boolean Устанавливает данного гостя главным в комнате. На период проживания главного гостя применяются параметры rooms:channelListID и rooms:portalID, если такие передаются. В комнате может быть только один главный гость.

Значение по умолчанию: false.

Если производится поселение гостей в пустую комнату, которая не имеет главного гостя, и при этом явно не задан параметр "mainGuest": true у одного из гостей, TurnIP назначит главного гостя произвольно из списка гостей, передаваемых из PMS.

Если производится подселение гостя в комнату с уже имеющимся главным гостем, а у подселяемого нового гостя установлен параметр "mainGuest": true, то произойдет замена главного гостя в комнате.

Недопустима передача двух гостей с одновременно установленным признаком "mainGuest": true. Такой вызов приведет к ошибке 400 Bad Request: {"number":16,"message":"There is more than one main guest listed for room @room."}.

Также см. раздел Главный гость документации TurnIP.
rooms:guests:guestID string Идентификатор гостя в сторонней системе (PMS).
rooms:guests:guestGroupID string Идентификатор группы гостя в сторонней системе (PMS).

Ограничения

  • В перечислении комнат не допускаются повторения.
  • Имя гостя - обязательный параметр.
  • В комнате может быть только один главный гость.
  • В комнате каждый гость должен быть уникален в разрезе "guestID":, если код передается
  • Время выезда должно быть больше текущего времени.
  • Попытка заселить гостя в комнату, определённую как общественную зону, приведет к ошибке.
  • Попытка заселить гостя в комнату, отмеченную как недоступная, приведет к ошибке.

Ответ

TurnIP возвращает код 200 OK в случае успешного выполнения операции либо код 400 Bad Request с описанием ошибки в body в формате {"number":nn,"message":"Error Description."}

Параметры ответа, коды ошибок

Number Message Описание
10 Requires no duplicates of the room field. В запросе переданы два одинаковых номера комнаты. Номера комнат должны быть уникальны.
11 Room field not set. В запросе отсутствует обязательный параметр комната - "room":.
12 Room XXX not found. Передан несуществующий номер комнаты.
13 Room XXX not for living. Попытка засление гостя в комнату, не являющейся комнатой для проживания.
14 Room XXX not available. Попытка засление гостя в комнату, у которой в настройках снят признак доступности.
15 Portal not found. В параметре "portalID": передан код несуществующего в гостинице гостевого портала.
16 There is more than one main guest listed for room XXX. Для комнаты XXX указан более чем один главный гость. В комнате может быть только один главный гость. Неразрешимый конфликт.
17 Enter the guest's name. Не передан обязательный параметр "guestname": или имя гостя пустое.
18 Specify checkOutDateTime for main guest. Не передан обязательный параметр "checkOutDateTime": для главного гостя в комнате.
19 Invalid field format checkOutDateTime. Ошибка в формате поля "checkOutDateTime":.
20 Check-out time is less than current. Время, переданное в поле "checkOutDateTime":, меньше текущего времени.
21 Channel list not found. В параметре "channelListID": передан код несуществующего в гостинице списка каналов.
22 The request for the room XXX contains the same guestID. В параметрах "guestID": переданы задублированные коды в разрезе одной комнаты. Показан заезд одного и того же гостя в одну комнату. Комната может содержать только уникальных гостей.
23 A guest with the specified guestID yyyyyy already lives in the room XXX. В параметре "guestID": передан код, уже проживающего в комнате гостя. Комната может содержать только уникальных гостей.
Нравится0