Update a subscription
Update a subscription. Only the fields you send change. Set is_active to false to pause deliveries without deleting the subscription.
PATCH
https://api.centerfy.ai/webhooks/inbound/outbound-webhooks/:id Headers
| Header | Required | Value | Description |
|---|---|---|---|
x-api-key | Yes | your sub-account API key (cfy_…) | Authenticates the request; or use Authorization: Bearer <key>. |
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string (uuid) | Yes | The outbound webhook subscription id. |
Body parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
name | string | No | — | New label (max 200 characters); cannot be empty. |
url | string | No | — | New public http(s) URL (max 2048 characters). |
events | string[] | No | — | Replaces the event list. At least one, without repeats. |
is_active | boolean | No | — | Pause (false) or resume (true) deliveries. |
source | string | null | No | — | Loop-prevention label (max 100 characters); null or empty clears it. |
Request body
{
"is_active": false
}Example
curl -X PATCH "https://api.centerfy.ai/webhooks/inbound/outbound-webhooks/{id}" \
-H "x-api-key: $CENTERFY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"is_active": false
}' import { CenterfyClient } from "@centerfy/sdk";
const centerfy = new CenterfyClient({ apiKey: process.env.CENTERFY_API_KEY! });
const result = await centerfy.outboundWebhooks.update("<webhookId>", {
"is_active": false
});
console.log(result); centerfy outboundWebhooks update <webhookId> '{"is_active":false}' MCP tool: centerfy_outbound_webhooks_update (see MCP server)
Response
{
"status": "success",
"webhook": {
"id": "6f7a8b9c-0d1e-4f2a-8b3c-4d5e6f7a8b9c",
"name": "CRM sync",
"url": "https://hooks.example.com/centerfy",
"events": [
"contact.created",
"contact.updated"
],
"is_active": false,
"source": "my-crm",
"has_secret": true,
"created_at": "2026-10-01T10:00:00.000Z",
"updated_at": "2026-10-04T12:00:00.000Z"
}
}Errors
400— if no field is sent, name is empty, the url is not a public http(s) URL, or an event is not supported.404— if the subscription is not in this sub-account.
Notes
The secret can’t be changed here — use rotate-secret.