Skip to content

Webhook subscriptions ​

Subscribe to booking events and have Meetzi POST each event to your callback URL. Each subscription selects one event type and optionally one owned booking page.

Create a subscription ​

POST/v1/subscriptionsBearer token

Request body ​

Send JSON with Content-Type: application/json.

FieldTypeRequiredDescription
trigger_typestringYesOne of new_booking, booking_cancelled, or booking_updated.
target_urlstring (URL)YesAn absolute callback URL. Use an HTTPS URL for your receiver.
booking_page_idstring (UUID) or nullNoAn owned, non-deleted booking page. Omit or use null to subscribe to all pages owned by the user. An empty string is invalid.
external_idstring or nullNoOptional identifier stored with the subscription. It is not included in the response or delivered booking payload.

The API validates target_url as a URL. You are responsible for choosing a reachable receiver you control.

sh
curl --request POST 'https://api.meetzi.co/v1/subscriptions' \
  --header "Authorization: Bearer $MEETZI_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
    "trigger_type": "new_booking",
    "target_url": "https://example.com/webhooks/meetzi",
    "booking_page_id": "33333333-3333-4333-8333-333333333333"
  }'

For all owned pages:

json
{
  "trigger_type": "booking_updated",
  "target_url": "https://example.com/webhooks/meetzi",
  "booking_page_id": null
}

Response ​

201 Created · Store id so you can later remove the subscription.

json
{
  "id": "66666666-6666-4666-8666-666666666666",
  "is_active": true
}
FieldTypeDescription
idstringSubscription ID.
is_activebooleanWhether the subscription is active.

If an active subscription already has the same user, event type, callback URL, and page filter, the existing subscription is returned with 201. This does not update its external_id or other stored fields. A different event type, URL, or page filter creates a separate subscription.

Errors ​

StatusMeaning
400Invalid JSON fields; message Invalid Zapier subscription request.
401Missing, invalid, or revoked API key.
404Booking page not found: the selected page is missing, deleted, or not owned by the user.
500Authentication failure, or Failed to create Zapier subscription.

Delete a subscription ​

DELETE/v1/subscriptions/{id}Bearer token

Deactivate an active subscription owned by the connected user. The subscription record is retained, but future events no longer use it.

Path parameterTypeRequiredDescription
idstring (UUID)YesThe subscription ID returned by the creation endpoint.

Send no request body.

sh
curl --request DELETE \
  'https://api.meetzi.co/v1/subscriptions/66666666-6666-4666-8666-666666666666' \
  --header "Authorization: Bearer $MEETZI_API_KEY"

Response ​

204 No Content · The response body is empty; do not parse it as JSON.

A second deletion of the same subscription returns 404, since only active subscriptions can be deactivated.

Errors ​

StatusMeaning
400The ID is not a UUID; message Invalid Zapier subscription id.
401Missing, invalid, or revoked API key.
404Subscription not found: missing, already inactive, or owned by someone else.
500Authentication failure, or Failed to delete Zapier subscription.

Continue with webhook delivery to understand the event body and receiver behavior.