Users own business behavior
Business intents, stages, payment asks, attempt counters, escalations, plans, and actions are authored in one versioned Agent Pack.
No-send Agent Turn API
RACO turns one inbound debtor message into a controlled Agent Turn: authored intent, account stage, payment ask, escalation route, action proposals, and an optional no-send reply. Your team builds the Agent Pack in Studio; trusted account facts stay server-side.
POST /raco/agent-turns/decide
Authorization: RacoClient ••••:••••
{
"schemaVersion": "raco_agent_turn_request_v1",
"projectId": "raco_proj_example",
"caseId": "loan-7821",
"conversationId": "conv_loan_7821",
"messageId": "msg_7821",
"idempotencyKey": "agent_turn_msg_7821",
"channel": "sms",
"debtorMessage": "I can maybe do 100 next Friday."
}{
"ok": true,
"sent": false,
"status": "decided",
"decision": {
"route": { "type": "reply", "pauseAutomation": false },
"compliance": { "suppressOutbound": false, "requiresHumanReview": false },
"negotiation": { "status": "ready", "stage": { "stageId": "soft_collection" } }
},
"reply": { "text": "Thanks. I can note Friday as the proposed date.", "noSend": true }
}How one turn decides
What you control
Business intents, stages, payment asks, attempt counters, escalations, plans, and actions are authored in one versioned Agent Pack.
Only platform safety, security, compliance, and fail-closed mechanics are system-owned; Studio shows those boundaries.
Agent Turn calls never deliver messages or mutate external accounts. Action proposals require a separate approval lifecycle.
Live account and legal facts are resolved server-side. Caller-authored account state is rejected from Agent Turn requests.
Projects may configure a write-only OpenAI or Anthropic key. Provider output stays inside the closed Agent Pack taxonomy.
Issue per-project clients for Agent Turn decisions or event ingestion, with one-time secrets, rotation, revocation, and audit.
Endpoints
Safety boundary