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 availabilityBookUnits that can be booked individually
iduuidUnique identifier
ac_idtext | nullIdentifier for products imported from AvailabilityCalendar.com
created_attimestamp with time zoneCreation timestamp
updated_attimestamp with time zoneLast modification timestamp
deleted_attimestamp with time zone | nullTimestamp at which the unit was deleted
approximate_addresstextApproximate address of the unit
approximate_coordinatesCoordinates | nullCoordinates of the approximate address
cancel_after_initial_payment_errorbooleanconfirm_after_initial_paymentbooleanWhether to automatically confirm the booking after the initial payment. Only applies when interaction is request
confirmation_messageMultiLanguageStringMessage to show to the customer after submitting a booking from a widget or website
confirmation_message_titleMultiLanguageStringcooldown_timeintegerMinimum number of days between bookings
ctaMultiLanguageStringCall to action shown at the bottom of the booking form
currencyCurrencyCurrency bookings are made in
depositjsonb | nullDeposit charged for rent
descriptionMultiLanguageStringLocalized description
exact_addresstextExact address of the unit
exact_coordinatesCoordinates | nullCoordinates of the exact address
feejsonbFee charged for rent
ftstsvectorFull text search index
hide_exact_addressbooleanWhether to hide the exact address from customers before bookings are confirmed
ical_export_secrettextSecret used to generate iCal feed URLs
ical_export_secret_no_detailstextSecret used to generate iCal feed URLs without booking details
imagesArray<ProductImage>List of images
interaction"request" | "book"Interaction type, either request or book
latest_arrival_timetime without time zone | nullnameMultiLanguageStringLocalized name
payment_expiration_durationintegerprice_breakdown_specificity"combined" | "separate"rent_period"daily" | "nightly"Rent period of the unit
rent_pricing_definitionRentPricingDefinitionPricing definition of the unit. Either configuration or services
request_status"CANCELLED" | "TENTATIVE" | "CONFIRMED"Status of new bookings. Only applies when interaction is request
tentative_interactiontextInteraction type on tentative intervals, either request or book
timezonetextTimezone of the unit
JSON
{
"id": "00000000-0000-0000-0000-000000000000",
"ac_id": "",
"organization_id": "00000000-0000-0000-0000-000000000000",
"created_at": "2026-03-12T05:09:02.881Z",
"updated_at": "2026-03-12T05:09:02.881Z",
"deleted_at": "2026-03-12T05:09:02.881Z",
"approximate_address": "",
"approximate_coordinates": {
"lat": 52.379189,
"lng": 4.899431
},
"cancel_after_initial_payment_error": false,
"confirm_after_initial_payment": false,
"confirmation_message": {
"default": "Hello",
"nl-NL": "Hallo"
},
"confirmation_message_title": {
"default": "Hello",
"nl-NL": "Hallo"
},
"cooldown_time": 0,
"cta": {
"default": "Hello",
"nl-NL": "Hallo"
},
"currency": "USD",
"deposit": {},
"description": {
"default": "Hello",
"nl-NL": "Hallo"
},
"exact_address": "",
"exact_coordinates": {
"lat": 52.379189,
"lng": 4.899431
},
"fee": {},
"hide_exact_address": false,
"ical_export_secret": "md5((random())::text)",
"ical_export_secret_no_details": "md5((random())::text)",
"images": [
{
"alt": {
"default": "Image"
},
"size": "1x1",
"src": "https://example.com/image.jpg"
}
],
"interaction": "request",
"latest_arrival_time": null,
"name": {
"default": "Hello",
"nl-NL": "Hallo"
},
"payment_expiration_duration": 0,
"price_breakdown_specificity": "combined",
"rent_period": "nightly",
"rent_pricing_definition": "service",
"request_status": "TENTATIVE",
"tentative_interaction": "request",
"timezone": "UTC"
}idFilter<uuid>Unique identifier
ac_idFilter<text | null>Identifier for products imported from AvailabilityCalendar.com
organization_idFilter<uuid>Identifier of the organization this product is defined in
created_atFilter<timestamp with time zone>Creation timestamp
updated_atFilter<timestamp with time zone>Last modification timestamp
deleted_atFilter<timestamp with time zone | null>Timestamp at which the unit was deleted
approximate_addressFilter<text>Approximate address of the unit
approximate_coordinatesFilter<Coordinates | null>Coordinates of the approximate address
cancel_after_initial_payment_errorFilter<boolean>confirm_after_initial_paymentFilter<boolean>Whether to automatically confirm the booking after the initial payment. Only applies when interaction is request
confirmation_messageFilter<MultiLanguageString>Message to show to the customer after submitting a booking from a widget or website
confirmation_message_titleFilter<MultiLanguageString>cooldown_timeFilter<integer>Minimum number of days between bookings
ctaFilter<MultiLanguageString>Call to action shown at the bottom of the booking form
currencyFilter<Currency>Currency bookings are made in
depositFilter<jsonb | null>Deposit charged for rent
descriptionFilter<MultiLanguageString>Localized description
exact_addressFilter<text>Exact address of the unit
exact_coordinatesFilter<Coordinates | null>Coordinates of the exact address
feeFilter<jsonb>Fee charged for rent
ftsFilter<tsvector>Full text search index
hide_exact_addressFilter<boolean>Whether to hide the exact address from customers before bookings are confirmed
ical_export_secretFilter<text>Secret used to generate iCal feed URLs
ical_export_secret_no_detailsFilter<text>Secret used to generate iCal feed URLs without booking details
imagesFilter<Array<ProductImage>>List of images
interactionFilter<"request" | "book">Interaction type, either request or book
latest_arrival_timeFilter<time without time zone | null>nameFilter<MultiLanguageString>Localized name
payment_expiration_durationFilter<integer>price_breakdown_specificityFilter<"combined" | "separate">rent_periodFilter<"daily" | "nightly">Rent period of the unit
rent_pricing_definitionFilter<RentPricingDefinition>Pricing definition of the unit. Either configuration or services
request_statusFilter<"CANCELLED" | "TENTATIVE" | "CONFIRMED">Status of new bookings. Only applies when interaction is request
tentative_interactionFilter<text>Interaction type on tentative intervals, either request or book
timezoneFilter<text>Timezone of the unit
200A list of products with the selected columns
206Partial Content
GET /productscurl -X GET "https://api.bookingmood.com/v1/products?select=*" \
-H "Authorization: Bearer YOUR_API_KEY"idFilter<uuid>Unique identifier
ac_idFilter<text | null>Identifier for products imported from AvailabilityCalendar.com
organization_idFilter<uuid>Identifier of the organization this product is defined in
created_atFilter<timestamp with time zone>Creation timestamp
updated_atFilter<timestamp with time zone>Last modification timestamp
deleted_atFilter<timestamp with time zone | null>Timestamp at which the unit was deleted
approximate_addressFilter<text>Approximate address of the unit
approximate_coordinatesFilter<Coordinates | null>Coordinates of the approximate address
cancel_after_initial_payment_errorFilter<boolean>confirm_after_initial_paymentFilter<boolean>Whether to automatically confirm the booking after the initial payment. Only applies when interaction is request
confirmation_messageFilter<MultiLanguageString>Message to show to the customer after submitting a booking from a widget or website
confirmation_message_titleFilter<MultiLanguageString>cooldown_timeFilter<integer>Minimum number of days between bookings
ctaFilter<MultiLanguageString>Call to action shown at the bottom of the booking form
currencyFilter<Currency>Currency bookings are made in
depositFilter<jsonb | null>Deposit charged for rent
descriptionFilter<MultiLanguageString>Localized description
exact_addressFilter<text>Exact address of the unit
exact_coordinatesFilter<Coordinates | null>Coordinates of the exact address
feeFilter<jsonb>Fee charged for rent
ftsFilter<tsvector>Full text search index
hide_exact_addressFilter<boolean>Whether to hide the exact address from customers before bookings are confirmed
ical_export_secretFilter<text>Secret used to generate iCal feed URLs
ical_export_secret_no_detailsFilter<text>Secret used to generate iCal feed URLs without booking details
imagesFilter<Array<ProductImage>>List of images
interactionFilter<"request" | "book">Interaction type, either request or book
latest_arrival_timeFilter<time without time zone | null>nameFilter<MultiLanguageString>Localized name
payment_expiration_durationFilter<integer>price_breakdown_specificityFilter<"combined" | "separate">rent_periodFilter<"daily" | "nightly">Rent period of the unit
rent_pricing_definitionFilter<RentPricingDefinition>Pricing definition of the unit. Either configuration or services
request_statusFilter<"CANCELLED" | "TENTATIVE" | "CONFIRMED">Status of new bookings. Only applies when interaction is request
tentative_interactionFilter<text>Interaction type on tentative intervals, either request or book
timezoneFilter<text>Timezone of the unit
Partial<Product>204The updated products with the selected columns
PATCH /productscurl -X PATCH "https://api.bookingmood.com/v1/products" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{}'Register a new product in your organization. This action will automatically update your subscription.
nameMultiLanguageStringLocalized name
rent_period"daily" | "nightly"Rent period of the unit
timezonetextTimezone of the unit
201The newly created product
POST /productscurl -X POST "https://api.bookingmood.com/v1/products" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"name": {},
"rent_period": "nightly",
"timezone": "UTC"
}'Delete a product from your organization. This will also delete all bookings for this product. Your subscription will be adjusted automatically. This action cannot be undone.
idrequireduuidThe identifier of the product to delete
200The deleted product
DELETE /productscurl -X DELETE "https://api.bookingmood.com/v1/products" \
-H "Authorization: Bearer YOUR_API_KEY"