---
title: "Register a delivery endpoint"
method: POST
path: "/api/v1/webhooks"
tags: ["webhooks"]
---

# Register a delivery endpoint

`POST /api/v1/webhooks`

## Request

- Base URL: `https://worthune.com`
- URL: `https://worthune.com/api/v1/webhooks`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`

HTTPS, publicly reachable (no private or loopback hosts). The signing secret is returned exactly once.

## Request body

- object
  - `url` string, uri, required: https:// only.
  - `events` string[], required

## Response `201`

Registered.

- object
  - `ok` unknown, required
  - `endpoint` object, required
    - `id` integer, required
    - `url` string, required
    - `events` string[], required
    - `status` 'active' | 'disabled', required
  - `secret` string, required: Shown once — store it now.
  - `signatureRecipe` string, required

## Other responses

- `400`: Malformed JSON or a body that is not { url: string, events: string[] }.
- `401`: No key presented (Authorization: Bearer wk_… or X-Api-Key).
- `402`: Unrecognized or revoked API key.
- `403`: The key's role is below the operation's floor (viewer < developer < owner), the key predates organization support, or the plan lacks the feature. On a sandbox key, also: the cap of 5 active households on create and import, the cap of 1 active Lodestar mandate, and the white-label surfaces (tenant config, embed tokens) and narration or mapping drafts on Worthune's model (they run on your own: a model assigned at /api/v1/model-policy, or x-model-key), which the sandbox does not carry.
- `422`: The URL is not deliverable, or events is empty / contains an unknown kind.
- `429`: Hourly per-org stateful quota, a per-route durable limit, or the 120 requests/minute per-IP burst backstop.
- `503`: Billing is not configured on this deployment; household resources are disabled rather than served without tenancy (production fail-closed).

---

[API](https://skmtc.dev/worthune/apis/worthune-api.md) · [All operations](https://skmtc.dev/worthune/apis/worthune-api/llms.txt) · [OpenAPI document](https://skmtc.dev/worthune/apis/worthune-api/revisions/9f2241072555?raw)
