Documentation

Omni API reference

Point your existing SDK at a different base URL, use your Omni API key and the model ID omni-3-pro — the request format stays the same.

Quickstart

1. Sign up

Create your account now. API key creation opens when the Alpha starts; you can then create a key from the Dashboard → API Keys page.

2. Set the base URL

Replace your existing OpenAI base URL and set the model to omni-3-pro. The request format stays the same.

3. Make your first call

Base URL

https://omniquasar.com/api/proxy/v1

Request

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-3-pro",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

SDK examples

The same request in three common clients. Store your key in an environment variable such as OMNI_API_KEY rather than hard-coding it.

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-3-pro",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Authentication

Every request needs an API key passed as a Bearer token in the Authorization header.

  • API keys are prefixed with omni_
  • API key creation opens when the Alpha starts. Existing keys can be revoked from the Dashboard → API Keys page
  • Never share or commit your API key to source control

Header

Authorization: Bearer omni_your_key_here

Models

ModelOmni 3 ProIDomni-3-proStatusAlphaPriceSee published rates below

Credits & Billing

Usage is billed per token in USD. Each request is charged for its input tokens plus its output tokens (including reasoning), each at the per-token rate of the model you call. Your balance is shown as a prepaid USD value where $1 = 1 credit.

Formula: USD cost = input_tokens × input_rate + output_tokens × output_rate. Per-token rates depend on the model; the exact USD charged for your recent requests appears in the Developer Console usage history.

Published rates (omni-3-pro)

Token typeInput tokensAlpha price$1.00 / 1M tokensPlanned price after Alpha$2.00 / 1M tokens
Token typeOutput tokens (including reasoning)Alpha price$4.00 / 1M tokensPlanned price after Alpha$8.00 / 1M tokens

Omni 3 Pro is in Alpha. Alpha prices are half of the planned prices after Alpha. In exchange, we retain request and response data and may use it to train our models. See the Privacy Policy.

Plans

PlanFreePrice$0Usage Value$5.00 value (5 credits) one-time sign-up bonus
PlanCredit Top-UpPriceFrom $10, one-timeUsage Value$1 = 1 credit · $10–$1,000 per top-up · 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

POSThttps://omniquasar.com/api/proxy/v1/chat/completions

Request parameters

ParametermodelTypestringRequiredYesDescriptionomni-3-pro
ParametermessagesTypearrayRequiredYesDescriptionArray of {role, content} objects — OpenAI format
ParameterstreamTypebooleanRequiredNoDescriptionEnable SSE streaming (default: false)
Parametermax_tokensTypeintegerRequiredNoDescriptionMaximum tokens in response
ParametertemperatureTypenumberRequiredNoDescriptionSampling temperature 0–2

Note: When streaming is enabled, the connection is kept alive during processing and the response content arrives after processing completes — not token-by-token. Works with any framework that supports the OpenAI chat completions API, including Kilo Code, Claude Code, OpenCode, and Cursor.

Non-streaming response · 200

{
  "id": "chatcmpl-xxx",
  "model": "omni-3-pro",
  "choices": [{
    "message": { "role": "assistant", "content": "Hello! How can I help?" },
    "finish_reason": "stop"
  }],
  "usage": { "prompt_tokens": 10, "completion_tokens": 12 }
}

Streaming request

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-3-pro","messages":[{"role":"user","content":"Hello!"}],"stream":true}'

Streaming response

data: {"choices":[{"delta":{"content":"Hello"}}]}
data: {"choices":[{"delta":{"content":"!"}}]}
data: [DONE]

Error Codes

HTTP Status400MeaningUnknown model, or a malformed / truncated JSON bodyResolutionCheck the model name and that the request body is valid JSON
HTTP Status401MeaningMissing, invalid, or revoked API keyResolutionCheck your key in Dashboard → API Keys
HTTP Status402MeaningInsufficient usage balanceResolutionTop up usage value in the Dashboard
HTTP Status403MeaningThe requested model is not available to your accountResolutionChoose one of the documented model IDs
HTTP Status404MeaningUnsupported endpointResolutionOnly /v1/chat/completions, /v1/messages, and /v1/models are supported
HTTP Status413MeaningRequest body exceeds 10 MiBResolutionReduce the request size, then retry
HTTP Status429MeaningRate limit, or a retryable service errorResolutionWait for the Retry-After duration, then retry the same request
HTTP Status500MeaningInternal server errorResolutionRetry later; include the x-request-id if you contact support
HTTP Status503MeaningModel prices unavailable, or the service is not configuredResolutionRetry after a short wait; contact support if it persists

Retryable service errors (including 502 responses) are normalised to 429 so you only need one backoff path.

Every API response carries an x-request-id header. Include that value whenever you contact support — it is how we locate your exact request.

Debugging and retries

When contacting support, include:

  • x-request-id
  • timestamp
  • model
  • HTTP status code
  • whether streaming was enabled

Retry policy

Retry 429 and 503 with exponential backoff. If a Retry-After header is present, wait at least that long before retrying.

Error response shape

{
  "error": {
    "message": "Insufficient credits",
    "type": "invalid_request_error",
    "param": null,
    "code": "insufficient_credits"
  }
}

Ready to get started?

Sign up now. API key creation opens when the Alpha starts; then point your base URL at Omni API.

Found a mistake? support@omniquasar.com

Sign up