Bookings
Bookings, grouping the calendar events, invoices and payments of a guest's stay
The booking object
Attributes
iduuidUnique identifier
creator_iduuid | nullIdentifier of the user that created the booking
created_atread-onlytimestamp with time zoneCreation timestamp
updated_atread-onlytimestamp with time zoneLast modification timestamp
confirmed_attimestamp with time zone | nullTimestamp at which the booking was confirmed
currencyCurrencyBase currency of the booking
display_currencyCurrencyCurrency used to display prices to the guest
exchange_raterealExchange rate used to convert the booking currency to the display currency
ftsread-onlytsvectormethodBookingMethodMethod used to make the booking: request or book
referencetextPublicly visible reference of the booking
secrettextSecret reference of the booking
silentbooleanWhether the booking was made without automatically sending a confirmation email
Related resources
Embed related resources in the response with the select parameter, for example select=*,organizations!organization_id(*). Resources related through more than one column need the column as a hint, like table!column(*).
organizations!organization_id(*)object | nullThe organization referenced by organization_id.
booking_details(*)arrayThe booking details referencing this booking through booking_details.booking_id.
booking_updates(*)arrayThe booking updates referencing this booking through booking_updates.booking_id.
calendar_events!booking_id(*)arrayThe calendar events referencing this booking through calendar_events.booking_id.
contact_bookings(*)arrayThe contact bookings referencing this booking through contact_bookings.booking_id.
coupon_uses(*)arrayThe coupon uses referencing this booking through coupon_uses.booking_id.
invoices!booking_id(*)arrayThe invoices referencing this booking through invoices.booking_id.
{
"id": "00000000-0000-0000-0000-000000000000",
"creator_id": "00000000-0000-0000-0000-000000000000",
"organization_id": "00000000-0000-0000-0000-000000000000",
"site_id": "00000000-0000-0000-0000-000000000000",
"widget_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2026-10-30T23:39:58.169Z",
"updated_at": "2026-10-30T23:39:58.169Z",
"confirmed_at": "2026-10-30T23:39:58.169Z",
"currency": "ARS",
"display_currency": "ARS",
"exchange_rate": 0,
"method": "request",
"reference": "ABC123",
"secret": "",
"silent": false
}curl -X GET "https://api.bookingmood.com/v1/bookings?limit=10&select=*,organizations!organization_id(*),sites(*)" \
-H "Authorization: Bearer YOUR_API_KEY"List bookings
Filters
idFilter<uuid>Unique identifier
creator_idFilter<uuid | null>Identifier of the user that created the booking
organization_idFilter<uuid>Identifier of the organization this booking is defined in
created_atFilter<timestamp with time zone>Creation timestamp
updated_atFilter<timestamp with time zone>Last modification timestamp
confirmed_atFilter<timestamp with time zone | null>Timestamp at which the booking was confirmed
currencyFilter<Currency>Base currency of the booking
display_currencyFilter<Currency>Currency used to display prices to the guest
exchange_rateFilter<real>Exchange rate used to convert the booking currency to the display currency
ftsFilter<tsvector>methodFilter<BookingMethod>Method used to make the booking: request or book
referenceFilter<text>Publicly visible reference of the booking
secretFilter<text>Secret reference of the booking
silentFilter<boolean>Whether the booking was made without automatically sending a confirmation email
Responses
200A list of bookings with the selected columns
206Partial Content
400The request is malformed, for example an unknown column or an invalid filter.
401The API key is missing or invalid.
code, message, details and hint. See the introduction for more on errors.GET /bookingscurl -X GET "https://api.bookingmood.com/v1/bookings?select=*&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"[
{
"id": "00000000-0000-0000-0000-000000000000",
"creator_id": "00000000-0000-0000-0000-000000000000",
"organization_id": "00000000-0000-0000-0000-000000000000",
"site_id": "00000000-0000-0000-0000-000000000000",
"widget_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2026-10-30T23:39:58.169Z",
"updated_at": "2026-10-30T23:39:58.169Z",
"confirmed_at": "2026-10-30T23:39:58.169Z",
"currency": "ARS",
"display_currency": "ARS",
"exchange_rate": 0,
"method": "request",
"reference": "ABC123",
"secret": "",
"silent": false
}
]Delete bookings
Filters
Without filters, this request deletes all bookings you have access to. Always filter on at least one column, e.g. id=eq.{id}.
idFilter<uuid>Unique identifier
creator_idFilter<uuid | null>Identifier of the user that created the booking
organization_idFilter<uuid>Identifier of the organization this booking is defined in
created_atFilter<timestamp with time zone>Creation timestamp
updated_atFilter<timestamp with time zone>Last modification timestamp
confirmed_atFilter<timestamp with time zone | null>Timestamp at which the booking was confirmed
currencyFilter<Currency>Base currency of the booking
display_currencyFilter<Currency>Currency used to display prices to the guest
exchange_rateFilter<real>Exchange rate used to convert the booking currency to the display currency
ftsFilter<tsvector>methodFilter<BookingMethod>Method used to make the booking: request or book
referenceFilter<text>Publicly visible reference of the booking
secretFilter<text>Secret reference of the booking
silentFilter<boolean>Whether the booking was made without automatically sending a confirmation email
Responses
200The deleted bookings with the selected columns. Returns 204 without a body when sending the header Prefer: return=minimal.
400The request is malformed, for example an unknown column or an invalid filter.
401The API key is missing or invalid.
403The API key has no permission for this change, for example when writing rows of another organization.
code, message, details and hint. See the introduction for more on errors.DELETE /bookingscurl -X DELETE "https://api.bookingmood.com/v1/bookings?id=eq.00000000-0000-0000-0000-000000000000" \
-H "Authorization: Bearer YOUR_API_KEY"[
{
"id": "00000000-0000-0000-0000-000000000000",
"creator_id": "00000000-0000-0000-0000-000000000000",
"organization_id": "00000000-0000-0000-0000-000000000000",
"site_id": "00000000-0000-0000-0000-000000000000",
"widget_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2026-10-30T23:39:58.169Z",
"updated_at": "2026-10-30T23:39:58.169Z",
"confirmed_at": "2026-10-30T23:39:58.169Z",
"currency": "ARS",
"display_currency": "ARS",
"exchange_rate": 0,
"method": "request",
"reference": "ABC123",
"secret": "",
"silent": false
}
]Update bookings
Filters
Without filters, this request updates all bookings you have access to. Always filter on at least one column, e.g. id=eq.{id}.
idFilter<uuid>Unique identifier
creator_idFilter<uuid | null>Identifier of the user that created the booking
organization_idFilter<uuid>Identifier of the organization this booking is defined in
created_atFilter<timestamp with time zone>Creation timestamp
updated_atFilter<timestamp with time zone>Last modification timestamp
confirmed_atFilter<timestamp with time zone | null>Timestamp at which the booking was confirmed
currencyFilter<Currency>Base currency of the booking
display_currencyFilter<Currency>Currency used to display prices to the guest
exchange_rateFilter<real>Exchange rate used to convert the booking currency to the display currency
ftsFilter<tsvector>methodFilter<BookingMethod>Method used to make the booking: request or book
referenceFilter<text>Publicly visible reference of the booking
secretFilter<text>Secret reference of the booking
silentFilter<boolean>Whether the booking was made without automatically sending a confirmation email
Body
Partial<Booking>Read-only attributes are set by the database and can't be written.
Responses
200The updated bookings with the selected columns. Returns 204 without a body when sending the header Prefer: return=minimal.
400The request is malformed, for example an unknown column, an invalid filter or an invalid body.
401The API key is missing or invalid.
403The API key has no permission for this change, for example when writing rows of another organization.
409The change conflicts with existing data, for example a duplicate key or a reference to a row that does not exist.
code, message, details and hint. See the introduction for more on errors.PATCH /bookingscurl -X PATCH "https://api.bookingmood.com/v1/bookings?id=eq.00000000-0000-0000-0000-000000000000" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"currency": "ARS"
}'[
{
"id": "00000000-0000-0000-0000-000000000000",
"creator_id": "00000000-0000-0000-0000-000000000000",
"organization_id": "00000000-0000-0000-0000-000000000000",
"site_id": "00000000-0000-0000-0000-000000000000",
"widget_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2026-10-30T23:39:58.169Z",
"updated_at": "2026-10-30T23:39:58.169Z",
"confirmed_at": "2026-10-30T23:39:58.169Z",
"currency": "ARS",
"display_currency": "ARS",
"exchange_rate": 0,
"method": "request",
"reference": "ABC123",
"secret": "",
"silent": false
}
]