Create an agent draft
Creates a draft agent. The response is the ONE read that includes
tool_signing_secret — store it immediately; it is never returned
again (rotate via the dashboard if lost).
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
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Create/update body for an agent draft. tool_signing_secret is never
accepted from the wire — it is server-generated and returned only by
create and rotate-secret.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/agents" \ -H "Content-Type: application/json" \ -d '{ "name": "Booking assistant", "base_prompt": "You are a friendly booking assistant for Wema Dental.", "voice": "amara", "model": "sautikit-voice-1", "max_call_minutes": 10 }'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "base_prompt": "string", "accent": "string", "speech_style": "string", "voice": "string", "model": "string", "max_call_minutes": 0, "status": "string", "current_revision": 0, "tool_count": 0, "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "tool_signing_secret": "string"}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string" }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string" }}{ "error": { "code": "validation.bad_request", "message": "string", "request_id": "string" }}