Private Beta: Stratus is currently in private beta. Visit stratus.run to apply for access. Once approved you’ll be able to create an account and generate API keys immediately.
Stratus API Key
Authenticates you with Stratus X1. Create and manage keys in the Dashboard → API Keys. Keys start with
stratus_sk_live_.LLM Provider Key
Optional. Your OpenAI, Anthropic, Google Gemini, or OpenRouter key. When omitted, Formation’s shared OpenRouter pool activates automatically. Add your own key to remove the 25% pool markup and pay providers directly.
Stratus API Keys
Stratus uses API keys for authentication. All requests must include your API key in theAuthorization header.
Getting Your API Key
- Sign in at stratus.run/signin using Google, GitHub, Telegram, or email OTP
- Navigate to Dashboard → API Keys
- Click “Create New API Key”
- Name your key and copy it
API Key Format
Stratus API keys use the formatstratus_sk_live_*. Keys are also accepted via the x-api-key header (Anthropic SDK convention).
Using Your API Key
Environment Variables
Recommended: Store your API key in environment variables..gitignore:
In Your Code
TypeScript / Node.js
Python
HTTP Requests
Key Resolution Priority
When Stratus receives a chat or messages request, it resolves which LLM key to use in this order:| Priority | Source | How to use | Markup |
|---|---|---|---|
| 1 — Inline headers | Your key passed directly in the request header | X-OpenAI-Key, X-Anthropic-Key, X-Google-Key, X-OpenRouter-Key | None — you pay provider directly |
| 2 — Vault-stored keys | Your key saved via POST /v1/account/llm-keys | Set once, used automatically | None — you pay provider directly |
| 3 — Formation pool | Formation’s shared OpenRouter key | Automatic fallback when no native key is found | 25% markup on credit cost |
Inline Key Headers
Pass your own key directly per-request. Useful for testing, CI pipelines, or multi-key setups:| Header | Provider | Key format |
|---|---|---|
X-OpenAI-Key | OpenAI | sk-proj-... or sk-... |
X-Anthropic-Key | Anthropic | sk-ant-... |
X-Google-Key | Google Gemini | AIza... |
X-OpenRouter-Key | OpenRouter | sk-or-... |
Formation’s Pool (Zero-Config Default)
When no key is supplied at priority 1 or 2, Stratus transparently routes the request through Formation’s shared OpenRouter pool. The response includes billing transparency fields:key_source is "user" and formation_markup_applied is null.
Benefits of Bring-Your-Own-Key (BYOK)
No Markup
Pay providers directly at your rates. Formation’s 25% pool markup is not applied.
Privacy
Vault-stored keys are encrypted at rest using AES-256-GCM and never leave encrypted storage.
Cost Control
Use your negotiated provider rates. High-volume accounts often get better rates than the pool.
Compliance
Meet data residency and privacy requirements by using your own provider account.
Setting Up Vault-Stored Keys (Optional)
Store your provider keys once — Stratus encrypts them and uses them automatically on every request, bypassing the Formation pool markup entirely.- Dashboard
- API
The fastest way. No code required.
- Go to stratus.run/dashboard?tab=llm-keys
- Enter keys for the providers you use — you only need to fill in the ones you want to use
- Click Save Keys
key_source: "user" in the response and no Formation markup will be applied.You can add, update, or remove keys from the dashboard at any time. Changes take effect immediately.
Managing Your API Keys
Creating Keys
Create API keys from the Stratus dashboard. Each account supports up to 3 active API keys — useful for separating environments or rotating keys without downtime.Revoking Keys
If a key is compromised:- Go to Dashboard → API Keys
- Click “Delete” on the compromised key
- The key is immediately invalid
- Create a new key and update your applications
Troubleshooting
All errors use an OpenAI-compatible response shape:401 — Missing API Key
Authorization header was sent, or it isn’t formatted as Bearer <token>.
Fix: Add Authorization: Bearer stratus_sk_live_<your-key> to every request. The x-api-key header is also accepted.
401 — Invalid API Key
stratus_sk_live_.
402 — Insufficient Credits
formation_markup variant of this error, registering your own provider key via POST /v1/account/llm-keys eliminates the 25% markup and reduces the required credits.
401 — No Provider Key Found
X-OpenAI-Key / X-Anthropic-Key / X-Google-Key.
400 — LLM Key Validation Failed
POST /v1/account/llm-keys, Stratus makes a live test call to the provider. The provider rejected it — wrong key, permissions issue, or the key is rate-limited.
Fix: Verify the key in your provider’s dashboard and confirm it has API access enabled. If the provider is throttling it, wait a moment and retry.
422 — Validation Error
details array for field-level error messages and correct the request payload. See the API Reference for required fields.
Next Steps
Quickstart
Make your first API call in under 60 seconds.
Tutorials
Real-world agents — navigation, cascades, concurrency.
API Reference
Full endpoint docs, parameters, and error codes.

