---
title: "Create / update the signed booking webhook (Zapier, Make, n8n, your backend)"
method: PUT
path: "/api/integrations/webhook"
tags: ["Integrations"]
---

# Create / update the signed booking webhook (Zapier, Make, n8n, your backend)

`PUT /api/integrations/webhook`

## Request

- Base URL: `https://whenmeet.me`
- URL: `https://whenmeet.me/api/integrations/webhook`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `__Host-session`

HTTPS only (no private / link-local IPs or metadata hosts). The signing secret is returned only on create or with rotate: true — store it then. Deliveries: see the bookingEvent webhook in this spec.

## Request body

- object
  - `url` string, uri, required
  - `rotate` boolean

## Response `200`

{ url, secret? }

- object
  - `url` string
  - `secret` string: Shown once.

## Other responses

- `400`: invalid_url.
- `401`: unauthenticated (no session or token), or invalid_token (a Bearer token that is malformed, unknown or revoked — never a silent anonymous fallback).
- `402`: plan_limit (+ used, limit): the Free plan’s 2 integrations are in use — docs/BILLING.md.

---

[API](https://skmtc.dev/whenmeet/apis/whenmeet-me-api.md) · [All operations](https://skmtc.dev/whenmeet/apis/whenmeet-me-api/llms.txt) · [OpenAPI document](https://skmtc.dev/whenmeet/apis/whenmeet-me-api/revisions/202b80022215?raw)
