Requests API reference for AI agent approvals
Learn how to create, inspect, and cancel Contro1 requests for approvals, clarifications, and escalations.
Core API
Use Contro1 audit records to log actions that agents are authorized to run autonomously, and correlation_id to connect requests and logs into one case timeline.
Create requests when a human must decide. Create audit records when the agent already acted within policy. Use correlation_id to keep the whole story together in one case.
Use the request API when the agent needs a human before it proceeds. Use audit records when the agent already has authority to act and Contro1 should retain a searchable, immutable record.
Both flows use the same base URL, API key, SDK client, and organization scope. The audit endpoint is shown below as a copyable code block.
Send audit records with the same Bearer API key used for requests.
Only action, summary, and source.integration are required. Add actor, resource, outcome, tags, and metadata when they help future investigation.
A case is the full conversation timeline between an agent and humans around one topic: the agent asks, a human answers, the agent may ask a follow-up question, and the agent can later log what it did.
Use the same correlation_id for every request and audit record in that topic. In the dashboard, this appears as one case timeline. Use in_reply_to when the new item is directly replying to a previous request or audit record.
in_reply_to must reference an item in the same organization. If you send both correlation_id and in_reply_to, the in_reply_to item must belong to the same case or the API returns 400.
For NIST AI RMF or OMB-style governance evidence, a case can represent one high-impact action, incident, or AI use case review. Contro1 keeps the operational evidence; your governance system still owns classification, impact assessment, and legal records.
Connectors derive one stable correlation_id per native framework run or session, then pass it through every related request and audit record.
No. logAction never routes to an operator or blocks the agent. It records an action the agent was already authorized to perform.
No. Standalone requests can stay flat. Use correlation_id only when multiple items belong to the same business case or incident.
Yes. Set in_reply_to to { type: "request", id: request_id }. The server links it to the case and the dashboard shows both items together.
Learn how to create, inspect, and cancel Contro1 requests for approvals, clarifications, and escalations.
Validate signed Contro1 callbacks and safely resume AI workflows after approvals, rejections, expirations, or escalations.
Secure your Contro1 integrations with environment-based API keys, role-aware routing, and clear ownership boundaries.
A US-first playbook for putting human review, audit trails, and accountability around AI agents, without turning governance into a year-long program.