Ask. Decide when needed. Check what happened.
Start with a request. When work needs a person or an outside service, follow the operation and read the evidence before calling it done.
user_id — a developer-defined identifier for the end user making the request (like your internal customer ID or Auth0 sub). Cadreen uses it to scope memory, conversations, and history to that person. Omit it to build a shared workspace where all requests are tenant-level. Each workspace is isolated by default.Choose your first call
Not sure where to start? Pick the row that matches what you are trying to do. Every path starts with /api/v1/cadreen.
| I want to | Use | Why |
|---|---|---|
| Ask a question — get an answer grounded in your data | /chat/completions | OpenAI-compatible. Full intelligence layer — rules, memory, decision logs, tool calling. Drop into any tool that speaks OpenAI protocol. |
| Ask it to do something — refund, transfer, approve — with your rules enforced | /intent | Cadreen-native. Typed outcomes: answered, needs_input, blocked_by_policy, blocked_by_missing_connection, executing. |
| Set everything up — one call, describe what you need | /setup | Describe your purpose. Cadreen proposes connections, memory, policies, and webhooks. No manual endpoint choreography. |
| See what it can handle before you go live | /assess | Capability preflight. Returns what Cadreen can and cannot do for your purpose. No action taken. |
| See exactly why it decided what it did | /intelligence/{trace_id} | Full breakdown: which rules fired, what knowledge was consulted, why the gate decided what it did. Send this trace to support. |
Choose your path
Two doors. Pick the one that matches what you're building. Everything else is a second step.
You already use OpenAI. Change two fields — base URL and model — keep your code. Get governance, memory, and traces immediately.
See howStart fresh with the full layer — rules, memory, healing, and traces. One call to set up, and a successful answer explains itself.
Start buildingLet Cadreen call your APIs. Every call checked against your rules first.
Add memoryTeach it facts and preferences. It remembers across requests.
Add human approvalSet rules that ask you before doing something risky.
Connect via MCPUse inside Claude Desktop, Cursor, or any MCP client.
Route to any modelBYOK, budgets, multi-provider routing. With or without Cadreen.
Operate in dashboardSee what happened, what it learned, what needs you.
For most web projects you can ignore this. It's for robots, sensors, and headsets.
POST /api/v1/cadreen/intent
Authorization: Bearer sk_cadreen_...
{"messages":[{"role":"user","content":"Refund $700 to customer 123 for order 456"}],"user_id":"cust_12345"}{"id":"a2c9...","type":"blocked","status":"blocked_by_policy","next_action":{"type":"resolve_escalation","label":"Resolve the policy block","reason":"Governance policy prevented the action"},"meta":{"governance":{"decision":"handoff","reason":"Refunds over $500 need a manager's approval"}},"operation_id":null,"intelligence":{...}}