MetaKit
beta
API Reference

Base URL: https://api.metakit.cloud

Webhooks

Register webhook endpoints (Settings → Webhooks, or via the API). MetaKit sends a JSON POST event to every registered URL. See the Webhook Events section for the full catalog of events and example payloads. Deliveries retry with exponential backoff; the same event is sent to each webhook independently.

GET

/v1/webhooks

List webhooks

All registered webhook endpoints.

Example request
curl https://api.metakit.cloud/v1/webhooks \
  -H "Authorization: Bearer stk_live_..."
Example response
[
  { "id": "6a...", "name": "Trade alerts", "url": "https://example.com/hook",
    "lastDeliveryStatus": "never", "createdAt": "2026-07-10T12:00:00.000Z" }
]
POST

/v1/webhooks

Create webhook

Register a webhook endpoint.

Request body
{ "name": "Trade alerts", "url": "https://example.com/hook" }
Example request
curl https://api.metakit.cloud/v1/webhooks \
  -H "Authorization: Bearer stk_live_..." \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{ "name": "Trade alerts", "url": "https://example.com/hook" }...'
Example response
{ "id": "6a...", "name": "Trade alerts", "url": "https://example.com/hook",
  "lastDeliveryStatus": "never", "createdAt": "2026-07-10T12:00:00.000Z" }
PATCH

/v1/webhooks/{id}

Update webhook

Update a webhook name and/or URL.

Request body
{ "name": "Renamed", "url": "https://example.com/new" }
Example request
curl https://api.metakit.cloud/v1/webhooks/123 \
  -H "Authorization: Bearer stk_live_..." \
  -H "Content-Type: application/json" \
  -X PATCH \
  -d '{ "name": "Renamed", "url": "https://example.com/new" }...'
Example response
{ "id": "6a...", "name": "Renamed", "url": "https://example.com/new", "...": "..." }
DELETE

/v1/webhooks/{id}

Delete webhook

Remove a webhook. Returns 204.

Example request
curl https://api.metakit.cloud/v1/webhooks/123 \
  -H "Authorization: Bearer stk_live_..." \
  -X DELETE
Example response
204 No Content