---
title: "Register webhook endpoint"
method: POST
path: "/api/agent/webhooks"
tags: ["Webhooks"]
---

# Register webhook endpoint

`POST /api/agent/webhooks`

## Request body

- WebhookRegisterRequest
  - `url` string, required
  - `event_types` WebhookEventType[]
  - `description` string

## Response `201`

Webhook endpoint created

- WebhookRegisterResponse
  - `webhook_id` string, uuid, required
  - `url` string, required
  - `secret` string, required
  - `event_types` WebhookEventType[], nullable, required
  - `created_at` string, date-time, required

## Other responses

- `400` — Bad request
- `401` — Unauthorized
- `409` — Conflict
- `429` — Rate limit exceeded
- `500` — Internal server error

## Changes

> 28 revisions in range; 1 could not be searched.

- **2026-05-26** `7fa84eca1e2a` — 6 warning, 6 info
  - added the new `agent_worker.approval_requested` enum value to the `event_types/items/` response property for the response status `201`
  - added the new `agent_worker.budget_exhausted` enum value to the `event_types/items/` response property for the response status `201`
  - added the new `agent_worker.competitor_diff_detected` enum value to the `event_types/items/` response property for the response status `201`
  - added the new `agent_worker.paused` enum value to the `event_types/items/` response property for the response status `201`
  - …8 more
- **2026-03-01** `2df2182b5901` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/citedy/apis/citedy-agent-api/changes/api/agent/webhooks/post.md)

---

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