Quickstart
Get your API Key
Sign up at omniquasar.com and create a key from the Dashboard → API Keys page.
Set the Base URL
Replace your existing OpenAI Base URL. No other code changes needed.
https://omniquasar.com/api/proxy/v1Make your first call
curl -X POST https://omniquasar.com/api/proxy/v1/chat/completions \
-H "Authorization: Bearer omni_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"model": "omni-fast",
"messages": [{"role": "user", "content": "Hello!"}]
}'Authentication
All API requests require an API key passed as a Bearer token in the Authorization header.
Authorization: Bearer omni_your_key_here- API keys are prefixed with
omni_ - Create, rotate, and revoke keys from the Dashboard → API Keys page
- Never share or commit your API key to source control
Models
Choose a model based on your quality and cost requirements.
| Model | ID | Credit Multiplier | Available on |
|---|---|---|---|
| Omni AI Fast | omni-fast | ×2 | All plans |
| Omni AI Standard | omni-standard | ×1 | All plans |
| Omni AI Highest | omni-highest | ×10 | Pro & Max only |
Credits & Billing
Credits are deducted based on input token count only. Output tokens are free.
Formula: credits deducted = base_credits × model_multiplier
Tiered deduction by input context size
| Input Tokens | Base Credits |
|---|---|
| ≤ 16K | 1 |
| 16K – 32K | 2 |
| 32K – 128K | 5 |
| > 128K | 10 |
Plans
| Plan | Price | Credits |
|---|---|---|
| Free | $0 | 100 (one-time sign-up bonus) |
| Pro | $15 / mo | 750 / mo |
| Max | $50 / mo | 3,000 / mo |
Extra credits: $5 = 150 credits · one-time purchase · never expire
Cancelled or interrupted streaming requests
Once a request is dispatched to the model, cancelling it or dropping the connection mid-stream does not stop billing: the credits reserved for that request are charged and are not refunded. Only requests that fail due to platform-side errors are free of charge.
API Reference
POST https://omniquasar.com/api/proxy/v1/chat/completionsRequest Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
model | string | Yes | omni-fast, omni-standard, or omni-highest |
messages | array | Yes | Array of {role, content} objects — OpenAI format |
stream | boolean | No | Enable SSE streaming (default: false) |
max_tokens | integer | No | Maximum tokens in response |
temperature | number | No | Sampling temperature 0–2 |
Non-streaming example
curl -X POST https://omniquasar.com/api/proxy/v1/chat/completions \
-H "Authorization: Bearer omni_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"model": "omni-fast",
"messages": [{"role": "user", "content": "Hello!"}]
}'{
"id": "chatcmpl-xxx",
"model": "omni-fast",
"choices": [{
"message": { "role": "assistant", "content": "Hello! How can I help?" },
"finish_reason": "stop"
}],
"usage": { "prompt_tokens": 10, "completion_tokens": 12 }
}Streaming example
curl -X POST https://omniquasar.com/api/proxy/v1/chat/completions \
-H "Authorization: Bearer omni_your_key_here" \
-H "Content-Type: application/json" \
-d '{"model":"omni-fast","messages":[{"role":"user","content":"Hello!"}],"stream":true}'data: {"choices":[{"delta":{"content":"Hello"}}]}
data: {"choices":[{"delta":{"content":"!"}}]}
data: [DONE]Note: Omni API is powered by a stack of Claude models working together. When streaming is enabled, the connection is kept alive with SSE heartbeats during processing. The response content arrives after processing completes — not token-by-token. This is fully compatible with Claude Code, Roo Code, and Kilo Code.
Error Codes
| HTTP Status | Meaning | Resolution |
|---|---|---|
| 401 | Invalid or revoked API key | Check your key in Dashboard → API Keys |
| 402 | Insufficient credits | Top up credits or upgrade your plan in the Dashboard |
| 429 | Retryable upstream or rate-limit response | Wait for the Retry-After duration, then retry the same request |
| 503 | Service temporarily unavailable | Retry after a short wait; contact support if it persists |