Skip to main content
Webhooks let you push change events to external services whenever pages are created, updated, or deleted. Each webhook receives a signed HTTP POST with details about the change.

Enabling webhooks

Add the [webhooks] section to your .kiwi/config.toml:

Creating a webhook

Register a webhook URL with an optional glob pattern to filter which paths trigger it.
The secret is only returned once at creation time. Store it securely — you’ll need it to verify webhook signatures.

Path glob patterns

Glob matching uses Go’s filepath.Match with an added ** recursive wildcard.

Payload format

Every webhook receives a JSON POST body:

Signature verification

Every webhook POST includes three headers for verification: The signature is computed over {webhook-id}.{webhook-timestamp}.{body} using the webhook secret as the HMAC key.

Managing webhooks

List all webhooks

The secret field is omitted from list responses for security.

Delete a webhook

Last modified on May 4, 2026