Skip to content
BUILD WITH YOUR API

One connection.
Every possibility.

Connect your application to the providers configured in your workspace.

OrvAPI gateway

Use the OrvAPI JSON API at https://api.orvapi.com. Requests use your four-hour and weekly allowance; every $5 covers 3,000,000 input and output tokens, including provider-reported cached input.

This endpoint returns a complete JSON response. For SDK integration and streaming, use the compatible endpoints below.

01 Get your API key

Create a key in API keys. Copy it when it is created; the full secret is shown only once. Keys start with orv_.

Authorization: Bearer YOUR_API_KEY

Keep the key on your application’s server. Revoking a key blocks subsequent requests made with it.

02 Make your first request

Replace the key and model ID with values from your workspace.

Terminal · cURL
curl https://api.orvapi.com/api/chat \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"model":"YOUR_MODEL_ID","messages":[{"role":"user","content":"Hello!"}]}'

A successful response includes message, model, requestId, and usage with input, output, and total tokens. Review actual requests in Logs.

03 Models & token pricing

One catalog, one API. Use the exact model ID in your request. Configured models have an enabled provider; this is not a live health guarantee. Planned models become available after a provider is connected.

Model catalog · USD per 1 million tokens
Model IDAvailabilityInputOutput
Loading model availability…

$5 = 3 million tokens. Input and output count equally, at approximately $1.666667 per million each. These are the same combined token allowance, not 3 million input plus another 3 million output. Billing uses exact token counts; the displayed rate is rounded.

For example, 600,000 input tokens plus 2,400,000 output tokens costs $5. Your plan’s dollar price and four-hour and weekly limits remain unchanged. Planned models cannot be requested or billed yet.

Read the current catalog from GET /api/models. This public endpoint returns configured model IDs and the current token pricing, without provider details.

When multiple providers offer the same model, OrvAPI tries another matching provider if the first cannot answer. Customer usage is charged once for the successful response.

The request contract

POSThttps://api.orvapi.com/api/chat
model
Required. An enabled model ID.
messages
Required. 1–30 user/assistant messages, ending with a user message. Each message contains role and content; content is limited to 8,000 characters.
provider
Optional preferred provider ID, configured by your administrator.
Limits
64 KB request body, up to 8,192 output tokens (2,048 by default), 20 requests per minute, and 2 concurrent requests per account.
Client applications maintain their own conversation history. Chat history in the dashboard is saved to your account. Do not automatically retry timed-out requests: the provider may already have performed billable work.

SDK-compatible endpoints

Use POST /v1/messages for Anthropic Messages, POST /v1/responses for Responses, or POST /v1/chat/completions for OpenAI-style text requests. These endpoints use your OrvAPI API key and the same allowance, model routing and billing. GET /v1/models lists configured models.

Authentication: send Authorization: Bearer YOUR_API_KEY or x-api-key: YOUR_API_KEY. For the OpenAI SDK, set base_url to https://api.orvapi.com/v1. For the Anthropic SDK, set base_url to https://api.orvapi.com.

Messages and Responses preserve native tool calls, tool results, thinking blocks and streaming, with an 8 MB request limit. Image support depends on a working native or verified assisted-vision route. The Chat Completions adapter currently supports text only; use Messages or Responses for images and coding clients.

Set stream: true to receive text as the provider generates it. Failover is possible before the first text chunk; once output starts, a failed stream ends with an error rather than switching models or replaying text. Usage is finalized after the provider supplies its usage totals. Interrupted requests may retain a reservation for review.

Images & assisted vision

Attach images in dashboard chat, send Anthropic image blocks to /v1/messages, or send input_image blocks to /v1/responses. Use JPEG, PNG, WebP or GIF. A working vision route must be available.

Verified native routes receive the original image. For other models, an available verified vision model can describe the image first; your selected model then answers using that description. This is assisted vision: fine visual details and precise coordinates may be lost. Up to eight images can be analyzed in one assisted request. If no verified helper exists, images are passed to the selected native route without a claim that it supports vision.

Image descriptions remain within the request and are reused during failover. The service covers the helper model’s processing cost; the selected model’s reported usage, including the description as input, counts toward your allowance. Token-counting requests never trigger paid image analysis.

Understand the response

400
Invalid JSON, model, or message format.
401
Missing, invalid, or revoked API key.
429
Rate limit, provider quota, or available allowance reached.
503
OrvAPI is temporarily unavailable. The error includes the API base URL, never an upstream provider URL.
504
The provider did not finish within 90 seconds.

Error responses contain an error.message. Unknown provider usage may retain its reservation for review.

YOUR NEXT REQUEST

Ready when you are.

Create an API key