Rotate the callback signing secret
Issues a new key for signing the campaign's answer callback and returns it once. The previous key stops signing immediately, in any campaign state, so update your verifier first or accept a short window of failed checks.
Authorization
bearerAuth Long-lived ES256 JWT minted from the dashboard (https://app.sautikit.com/developers/api-keys). Signed by the
platform keyring. Carries workspace_id and scopes claims;
revoked via the platform deny-list.
In: header
Path Parameters
uuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/dialer/campaigns/497f6eca-6276-4993-bfeb-53cbbbba6f08/rotate-secret"{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "callback_secret": "string"}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ], "resolution": "string", "reason": "invalid_characters", "suggested_e164": "+254727524723" }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ], "resolution": "string", "reason": "invalid_characters", "suggested_e164": "+254727524723" }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ], "resolution": "string", "reason": "invalid_characters", "suggested_e164": "+254727524723" }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ], "resolution": "string", "reason": "invalid_characters", "suggested_e164": "+254727524723" }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string", "details": [ "string" ], "resolution": "string", "reason": "invalid_characters", "suggested_e164": "+254727524723" }}Update a dialer campaign PATCH
Changes only the fields sent. `mode` may switch between `progressive` and `predictive` (US-49) while the campaign is a draft or paused, never while it is running (`409 dialer.invalid_state`); the plan must include the new mode (`402 plan.required`). Switching keeps every contact, attempt and report row. A completed campaign cannot be edited (`409 dialer.invalid_state`).
Start a campaign (spends money) POST
Moves a `draft` campaign to `running`. Calls are released at the campaign's rate and concurrency; answered contacts POST to the callback URL. Requires at least one dialable contact, a valid callback URL and an owned caller ID. The response carries the worst-case cost estimate.