SautiDesk
SautiDesk API
Webhooks

Rotate a webhook signing secret

POST
/v1/desk/webhooks/{id}/rotate-secret

Creates a new signing secret and returns it once. The old secret stops verifying immediately, so update the receiver first or accept both briefly.

Requires: desk.admin scope, workspace owner or admin.

Authorization

bearerAuth
AuthorizationBearer <token>

A SautiDesk API key. An owner or admin makes it under Settings in SautiDesk for a named person and picks the scopes. The key is shown once. Send it as Authorization: Bearer <key>. It acts as that person and as nobody else.

In: header

Path Parameters

id*string

The webhook's id (a UUID).

Response

OK

Example

{  "webhook": {    "id": "3f2b8c1e-5a4d-4e7b-9c10-2d6a8e4f1b37",    "url": "https://example.com/file",    "description": "example",    "events": [      "example"    ],    "enabled": false,    "secret_prefix": "example",    "created_by": "example",    "created_at": "2026-10-14T08:30:00Z",    "updated_at": "2026-10-14T08:30:00Z",    "last_delivery": {      "status": "open",      "at": "example"    }  },  "secret": "example-secret"}
FieldTypeDescription
webhookrequiredobject
idrequiredstring
urlrequiredstring
descriptionrequiredstring
eventsrequiredstring[]
enabledrequiredbooleanTrue to switch it on, false to switch it off.
secret_prefixrequiredstring
created_bystring | null
created_atrequiredstring
updated_atrequiredstring
last_deliveryrequiredany
statusrequiredstringThe status to set.
atrequiredstring
secretrequiredstringA secret your server uses to check the message really came from SautiDesk.
curl -X POST "https://api.sautidesk.com/v1/desk/webhooks/string/rotate-secret"