SendKuy API
API Reference

Change a webhook endpoint

Try it — PATCH /webhooks/{id}

Kept for this tab only — it disappears when you close it, and it is never sent anywhere except as the Authorization header on the call below.

Authorization

bearerAuth webhooks:write
AuthorizationBearer <token>

Authorization: Bearer sk_live_.... Keys in the query string or the request body are refused — a URL is logged by every proxy it passes, and that is how customer keys leak.

A key carries scopes. A call outside them answers 403 with insufficient_scope and names the scope it wanted.

In: header

Scope: webhooks:write

Path Parameters

id*string

The prefixed id of the object.

Header Parameters

Idempotency-Key?string

Any unique string, one per logical request. Retrying with the same key returns the first answer instead of doing the work twice, and answers with Idempotent-Replay: true.

Lengthlength <= 255

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH https://app.sendkuy.com/api/v1/webhooks/whk_9cBe3A1H-SLhW5fONWZ32wb-IIio5Ts3 \  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \  -H "Content-Type: application/json" \  -d '{  "url": "https://example.com/hooks/sendkuy",  "events": [    "message.failed",    "message.delivered"  ]}'
{  "data": {    "object": "webhook",    "id": "whk_9cBe3A1H-SLhW5fONWZ32wb-IIio5Ts3",    "url": "http://example.com",    "events": [      "string"    ],    "status": "active",    "secret_preview": "string",    "consecutive_failures": 0,    "last_failure_at": "2019-08-24T14:15:22Z",    "disabled_at": "2019-08-24T14:15:22Z",    "created_at": "2019-08-24T14:15:22Z",    "updated_at": "2019-08-24T14:15:22Z",    "secret": "string"  }}