---
title: "Create a webhook endpoint"
method: POST
path: "/v1/webhooks/endpoints"
tags: ["Webhooks"]
---

# Create a webhook endpoint

`POST /v1/webhooks/endpoints`

Creates a new webhook endpoint owned by the authenticated API key's user. Events are routed to the user context that emits them; playlist.video_added is delivered to the user who adds the video, who may be a playlist editor rather than its owner. Returns the endpoint ID and signing secret.

## Request body

- CreateEndpointRequest — Request body for creating a webhook endpoint
  - `filterTypes` string[], required — Event types to subscribe to (e.g., video.created, export.ready)
  - `url` string, uri, required — The URL where webhook events will be sent

## Response `200`

Endpoint created successfully

- CreateEndpointResponse — Response when a webhook endpoint is created
  - `id` string, required — Unique identifier for the webhook endpoint
  - `secret` string, required — Signing secret for verifying webhook payloads (shown only once)

## Other responses

- `400` — The request was malformed or contained invalid parameters.
- `401` — Authentication is required. Provide a valid API key.
- `403` — You don't have permission to access this resource.
- `404` — The requested resource was not found.
- `429` — You have exceeded the rate limit. Please slow down.
- `500` — An unexpected error occurred
- `501` — The requested operation is not implemented.

---

[API](https://skmtc.dev/withchima/apis/tella-public-api.md) · [All operations](https://skmtc.dev/withchima/apis/tella-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/withchima/tella-public-api/revisions/ba2bb13928a5/schema)
