Introduction
AuthenticationSelecting dataFilteringSorting & pagination

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 listingsWidgets

Booking flow

Query availabilitySearch availabilityBookCart validate
Cart checkout

Cart validate

Validate a cart of items by checking the availability and occupancy of each item. This endpoint can be used to validate a cart before performing a booking with the /cart-checkout endpoint.

Params

show_pending_as"CANCELLED" | "TENTATIVE" | "CONFIRMED"

How to interpret pending events when checking availability. Defaults to TENTATIVE

Body

cartCart

The cart with items to validate.

Responses

200

Validity of each of the items in the cart

TypeScript

Array<{
  availabilityMatch: boolean;
  id: uuid;
  occupancyMatch: boolean;
  valid: boolean;
}>
POST /cart-validate
curl -X POST "https://api.bookingmood.com/v1/cart-validate?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"
      }
    ]
  }'
Example response

JSON

[
  {
    "availabilityMatch": true,
    "id": "00000000-0000-0000-0000-000000000000",
    "occupancyMatch": true,
    "valid": true
  }
]