Cron job – Push booking & cancellations

Scheduled hourly push of reservation data (Confirm or Cancel) to your registered push-book webhook, plus full inbound payload reference.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Scheduled push-booking (cron)

Nuitee Cloud documentation describes an hourly job that pushes reservations to the URL you registered with POST /push/webhook/pushbook.

Push booking runs automatically via a cron job every 1 hour. The service fetches bookings, builds the reservation payload, and forwards it to your configured push-book webhook. No manual API call is required for scheduled delivery.

Confirm with onboarding: exact cron expression, timezone (UTC vs property local), status filter, retry policy, and lookback window for missed reservations may vary by deployment.

What you should implement

  • Idempotent processing by reservation_id
  • Accept repeated POSTs for the same booking
  • Return HTTP 2xx quickly; defer heavy PMS work to a queue if needed

Inbound payload (Nuitee Cloud → your webhook)

Below is the Request payload that Nuitee Cloud sends to the webhook url.

{
    "hotelId": "hopper_13",
    "reservations": {
        "reservation": [
            {
                "reservation_datetime": "2025-02-18T16:14:54",
                "propertyname": "IDOU New York",
                "reservation_id": "55191",
                "special_request": "Late check-in requested",
                "totalamountaftertax": "120.00",
                "totaltax": "10.00",
                "currencycode": "USD",
                "status": "Cancel",
                "customer": {
                    "first_name": "nuitee",
                    "last_name": "travel"
                },
                "paymentcarddetail": {
                    "CardHolderName": "nuitee travel",
                    "CardType": "VI",
                    "ExpireDate": "01/2030",
                    "CardNumber": "4111111111111111",
                    "cvv": "123"
                },
                "room": [
                    {
                        "arrival_date": "2025-03-01",
                        "departure_date": "2025-03-02",
                        "room_id": "RMID56890",
                        "room_name": "Double Room",
                        "price": [
                            {
                                "date": "2025-03-01",
                                "rate_id": "RTID",
                                "rate_name": "RTID",
                                "amountaftertax": "120.00"
                            }
                        ],
                        "first_name": "nuitee",
                        "last_name": "travel",
                        "taxes": [
                            {
                                "name": "VAT",
                                "value": "10.00"
                            }
                        ],
                        "amountaftertax": "120.00",
                        "GuestCount": [
                            {
                                "AgeQualifyingCode": "10",
                                "Count": "2"
                            }
                        ]
                    }
                ]
            }
        ]
    }
}

Request body structure

When we call your webhook, the request body has this structure. All fields use string values unless noted.

Payment information: All reservations may include Virtual Credit Card (VCC) details for payment.

PathTypeDescription
Root
hotelIdstringSupplier property code — must match mapping from /push/hotels
reservationsobjectContainer for reservation data
reservations.reservationarrayList of reservation objects
reservation
reservation_datetimestringCreated time YYYY-MM-DDTHH:mm:ss
propertynamestringProperty display name
reservation_idstringUnique reservation id — use for idempotency
special_requeststringGuest remarks
totalamountaftertaxstringTotal including tax
totaltaxstringTotal tax
currencycodestringISO currency (e.g. USD)
statusstringConfirm — new/confirmed; Cancel — cancelled
reservation.customerobjectPrimary guest
customer.first_namestringGuest first name
customer.last_namestringGuest last name
reservation.paymentcarddetailobjectVCC / card details when applicable
paymentcarddetail.CardHolderNamestringName on card
paymentcarddetail.CardTypestringe.g. VI, MC
paymentcarddetail.ExpireDatestringe.g. 01/2030
paymentcarddetail.CardNumberstringCard number
paymentcarddetail.cvvstringSecurity code
reservation.roomarrayRoom stay(s)
room.arrival_datestringCheck-in YYYY-MM-DD
room.departure_datestringCheck-out YYYY-MM-DD
room.room_idstringSupplier room code — same as roomId in products/ARI
room.room_namestringRoom type name
room.pricearrayPer-date price breakdown
room.first_namestringGuest first name for room
room.last_namestringGuest last name for room
room.taxesarrayTax lines
room.taxes[].namestringTax name
room.taxes[].valuestringTax amount
room.amountaftertaxstringRoom total after tax
room.GuestCountarrayGuest counts by age code
room.GuestCount[].AgeQualifyingCodestringe.g. 10 adult, 8 child
room.GuestCount[].CountstringCount in category
room.price (each element)Same rate plan for all stay dates; rate_id / rate_name constant with different nightly amountaftertax per date
price[].datestringRate date YYYY-MM-DD
price[].rate_idstringSupplier rate code — same as rateId in products/ARI
price[].rate_namestringRate plan name
price[].amountaftertaxstringNightly amount (typically tax-inclusive)

Expected response (your webhook → Nuitee Cloud)

Return HTTP 2xx when you accept the reservation. Error body format (when applicable):

{
  "code": 500,
  "message": "An unexpected error occurred",
  "requestId": "b47ead9ed7c8d18243bcd68e6260062e",
  "bookingId": "123456"
}

requestId and bookingId may be present on some platform flows — confirm with onboarding.

Manual push API

POST /push/webhook/booking can trigger an on-demand push of a single booking to your webhook when enabled. See Push booking for registration of your URL.

Related

Responses

Language
Credentials
Header
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json