Core resources
Api requestsAttribute optionsAttributesBooking detailsBooking updatesBookingsCalendar event notesCalendar event updatesCalendar eventsCapacitiesCapacity group dependenciesCapacity groupsContact bookingsContactsCoupon productsCoupon servicesCoupon usesCouponsExternal calendarsInvoicesLine item taxesLine itemsMembersMessage eventsMessage templatesMessagesOrganization calendar logsOrganizationsPaddle plansPaddle subscriptionsPaymentsPermissionsPrice calendar entriesPricelabs pricingPricing widgetsProduct attribute optionsProduct calendar logsProduct message templatesProduct reply to addressesProduct servicesProductsRefundsReply to addressesReview productsReview widget listingsReview widgetsReviewsSeasonsServicesSite listingsSite nav itemsSite pagesSite viewsSitesTask assigneesTask template assigneesTask templatesTasksTaxesUser profilesWebhook notificationsWebhooksWidget analyticsWidget listingsWidgetsBooking flow
Query availabilitySearch availabilityBookCart validateCart checkoutPerform a booking of one or more items by providing a cart object. This endpoint accepts the same parameters as the /book endpoint, but instead of a single product, an array of items can be provided. Each item in the cart should have a product, interval, occupancy and form values. If the booking is successful, a reference and booking ID will be returned for each item in the cart. If a payment URL is included in the response, the user should be redirected to that URL to complete the booking.
currencyCurrencyThe currency to use for the booking. See the widget docs for the allowed values.
failure_urlstringThe URL to redirect the user to when a booking payment fails.
languageLanguageThe user's preferred language.
redirect_urlstringThe URL to redirect the user to after the booking is completed.
show_pending_as"CANCELLED" | "TENTATIVE" | "CONFIRMED"How to interpret pending events when checking availability. Defaults to TENTATIVE
cartCartThe cart with items to checkout.
201Information identifying the booking. If a payment URL is set, the user should be redirected to that URL to complete the booking.
TypeScript
{
booking_id: uuid;
payment_url: string | null;
reference: string;
secret: string;
}POST /cart-checkoutcurl -X POST "https://api.bookingmood.com/v1/cart-checkout?currency=USD&failure_url=https://example.com/booking-failed&language=en-US&redirect_url=https://example.com/booking-success&show_pending_as=TENTATIVE" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"coupon_codes": [
"SUMMER21"
],
"items": [
{
"form_values": {
"00000000-0000-0000-0000-000000000000": "value"
},
"interval": {
"start": "2026-06-03",
"end": "2026-06-07"
},
"id": "00000000-0000-0000-0000-000000000000",
"occupancy": {
"00000000-0000-0000-0000-000000000000": 1
},
"product_id": "00000000-0000-0000-0000-000000000000"
}
]
}'JSON
{
"booking_id": "00000000-0000-0000-0000-000000000000",
"payment_url": null,
"reference": "ABC123",
"secret": "SECRET"
}