IntroductionAuthenticationSelecting 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 availabilityBook

Webhooks

Webhooks are a messaging mechanism that allow you to get notified on an endpoint of your choice as soon as certain events happen in Bookingmood.

For more information on the webhook mechanics, see our documentation

The webhook object

Attributes

iduuid

Unique identifier

organization_iduuid
organizations.id

Identifier of the organization this webhook is defined in

created_attimestamp with time zone

Creation timestamp

updated_attimestamp with time zone

Last modification timestamp

descriptiontext

An optional description of the webhook

endpointtext

URL to which notifications should be sent

eventsArray<WebhookEvent>

Events to which the webhook is subscribed. For possible values, see a complete list

signing_secrettext

String used to sign each notification send to the webhook. Used to verify the validity of the webhook notifications.

sourcetext

From where the webhook is registered. Can be from the admin, via the API, or via an external tool such as Zapier.

The webhook object

JSON

{
  "id": "00000000-0000-0000-0000-000000000000",
  "organization_id": "00000000-0000-0000-0000-000000000000",
  "created_at": "2026-03-12T05:46:23.814Z",
  "updated_at": "2026-03-12T05:46:23.814Z",
  "description": "",
  "endpoint": "",
  "events": [
    "bookings.created",
    "contacts.updated"
  ],
  "signing_secret": "md5((random())::text)",
  "source": ""
}

List webhooks

Filters

idFilter<uuid>

Unique identifier

organization_idFilter<uuid>
organizations.id

Identifier of the organization this webhook is defined in

created_atFilter<timestamp with time zone>

Creation timestamp

updated_atFilter<timestamp with time zone>

Last modification timestamp

descriptionFilter<text>

An optional description of the webhook

endpointFilter<text>

URL to which notifications should be sent

eventsFilter<Array<WebhookEvent>>

Events to which the webhook is subscribed. For possible values, see a complete list

signing_secretFilter<text>

String used to sign each notification send to the webhook. Used to verify the validity of the webhook notifications.

sourceFilter<text>

From where the webhook is registered. Can be from the admin, via the API, or via an external tool such as Zapier.

Responses

200

A list of webhooks with the selected columns

206

Partial Content

GET /webhooks
curl -X GET "https://api.bookingmood.com/v1/webhooks?select=*" \
  -H "Authorization: Bearer YOUR_API_KEY"

Create webhooks

Body

Partial<Webhook> | Array<Partial<Webhook>>

Responses

201

The newly created webhooks with the selected columns

POST /webhooks
curl -X POST "https://api.bookingmood.com/v1/webhooks" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '[]'

Delete webhooks

Filters

idFilter<uuid>

Unique identifier

organization_idFilter<uuid>
organizations.id

Identifier of the organization this webhook is defined in

created_atFilter<timestamp with time zone>

Creation timestamp

updated_atFilter<timestamp with time zone>

Last modification timestamp

descriptionFilter<text>

An optional description of the webhook

endpointFilter<text>

URL to which notifications should be sent

eventsFilter<Array<WebhookEvent>>

Events to which the webhook is subscribed. For possible values, see a complete list

signing_secretFilter<text>

String used to sign each notification send to the webhook. Used to verify the validity of the webhook notifications.

sourceFilter<text>

From where the webhook is registered. Can be from the admin, via the API, or via an external tool such as Zapier.

Responses

204

The deleted webhooks with the selected columns

DELETE /webhooks
curl -X DELETE "https://api.bookingmood.com/v1/webhooks" \
  -H "Authorization: Bearer YOUR_API_KEY"

Update webhooks

Filters

idFilter<uuid>

Unique identifier

organization_idFilter<uuid>
organizations.id

Identifier of the organization this webhook is defined in

created_atFilter<timestamp with time zone>

Creation timestamp

updated_atFilter<timestamp with time zone>

Last modification timestamp

descriptionFilter<text>

An optional description of the webhook

endpointFilter<text>

URL to which notifications should be sent

eventsFilter<Array<WebhookEvent>>

Events to which the webhook is subscribed. For possible values, see a complete list

signing_secretFilter<text>

String used to sign each notification send to the webhook. Used to verify the validity of the webhook notifications.

sourceFilter<text>

From where the webhook is registered. Can be from the admin, via the API, or via an external tool such as Zapier.

Body

Partial<Webhook>

Responses

204

The updated webhooks with the selected columns

PATCH /webhooks
curl -X PATCH "https://api.bookingmood.com/v1/webhooks" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{}'