Skip to main content
POST
Create Reservation
Create a reservation in NowBookIt from your POS or external system. Use this endpoint when a customer has made a pre-booked reservation — it validates against NowBookIt’s live schedule and the booking appears in the diary exactly as it would if the customer had booked online. For walk-ins, use POST /Bookings instead — that endpoint seats guests immediately without enforcing availability rules.
Call GET /Bookings/schedule first to retrieve available services for the desired time and pax. The serviceId from that response is required here.
Booking vs Reservation
string
required
Your API key
string
required
Must be application/json
integer
required
Number of guests (minimum 1)
string
required
NowBookIt service ID. Retrieve from GET /Bookings/schedule for the target date and pax.
string
required
NowBookIt section ID
object
required
Customer details. firstName, lastName, and phone are required.
string
UTC datetime. Takes precedence over time. Format: yyyy-MM-ddTHH:mm:ssZ
string
Venue local datetime. Ignored if bookingTimeAsUtc is present. Format: yyyy-MM-dd HH:mm
string
Booking status. Must be a valid status from GET /resources/booking-statuses. Defaults to Unconfirmed.
string
External booking ID from your system
string
Booking notes visible in NowBookIt
integer
Duration in minutes. Overrides the service default.
string
Staff member ID
string
Staff member name
array
NowBookIt table IDs. Retrieve from GET /Bookings/tables.
Additional links: [{ linkName, linkURL }]

Authorizations

X-API-KEY
string
header
required

Headers

X-API-KEY
string
required

API Key authentication header

Body

application/json
numOfPeople
integer<int32>
required

The number of guests on booking.

Required range: 1 <= x <= 2147483647
time
string | null

Booking Date and time in Venue's Timezone. Valid Format: 'yyyy-MM-dd HH:mm'

bookingTimeAsUtc
string | null

Booking Date and time in UTC Timezone. Valid Format: 'yyyy-MM-ddTHH:mm:ssZ'

bookingId
string | null
serviceId
string | null
sectionId
string | null
customer
object
notes
string | null
tables
string[] | null

Nominate NBI Table Ids for this Booking.

status
string | null
duration
integer<int32> | null

The Booking duration in Minutes.

staffId
string | null
staffName
string | null

Response

Create new Reservation from API

bookingId
string | null

The new NBI Booking Id.

time
string<date-time>

The Booking Date and Time.

numOfPeople
integer<int32>
bookingStatus
string | null
duration
integer<int32>
tableNames
string[] | null
serviceId
string | null
serviceName
string | null
sectionId
string | null
isSuccess
boolean
errorMessage
string | null