Build anything, beautifully documented.
Start with a five-minute quickstart, then go deep on routing, agents, skills and memory.
// 1. Create a key in your dashboard → API keys
// 2. Copy your base URL from the same screen
const res = await fetch(`${BASE_URL}/api/v1/chat/completions`, {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.AI_MODELS_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'auto', // or any model id from /api/v1/models
messages: [{ role: 'user', content: 'Hello, world' }],
stream: true,
}),
});Find your path
Quickstart
Sign up, create a key and make your first streaming request in five minutes.
Learn moreModels & routing
How the catalogue is organised and how “auto” picks the best model.
Learn moreAgents
Create goal-driven agents, schedule runs and require approvals.
Learn moreSkills
Use built-in skills or wrap your own APIs as reusable capabilities.
Learn moreMemory
Scope context to users, teams or workspaces and control retention.
Learn moreSecurity & keys
Key scopes, rotation, SSO and audit logs.
Learn more
Core concepts at a glance
- API
Requests
Chat-style messages in, streamed tokens out. Set model to “auto” or pin one.
- Billing
Tokens & usage
Everything is measured in tokens. Plans include a monthly allowance; overage is billed every 30 days.
- Account
Workspaces
Projects, keys, agents and memory live in a workspace you can share with your team.
- Billing
Revenue reporting
Report revenue events from your stack with a single call.
Developer FAQ
Where do I find my base URL?
In the dashboard under API keys, alongside your keys.
Which SDKs can I use?
Any HTTP client works. The request shape is familiar, so many existing chat-completion libraries work with a base URL change.
How do I handle errors?
Responses use standard HTTP status codes with a JSON error body. Retry 429 and 5xx with backoff.
Where can I get help?
Visit the Help Center, join the community, or email support on paid plans.