Skip to main content
Every OpenAI model — GPT-3.5, GPT-4, GPT-4o, GPT-5, and the o-series reasoning models — is routable through Verlon with your existing OpenAI SDK unchanged. Just point baseURL at Verlon and swap the API key.

Chat models

This table is auto-generated from the Verlon model registry on every sync — see the live registry for pricing, benchmarks, and deprecation dates. Any model listed here is available today.

Other modalities

  • audio — 9 models
  • embeddings — 3 models
  • image generation — 6 models
  • moderation — 2 models
  • speech-to-text — 6 models
  • text-to-speech — 7 models
  • video generation — 2 models
Non-chat OpenAI models are called through the Verlon SDK using the same model IDs — see the SDK reference for modality-specific endpoints.

Quickstart

First time? Create a gate and grab an API key — the examples below need a GATE_ID and VERLON_API_KEY.
The fastest path — Verlon SDK, one call:
Any chat model from the table above works — swap gpt-4o for gpt-5.4, o4-mini, o1-preview, or any other ID.

SDK compatibility

Verlon exposes an OpenAI-compatible endpoint. The official OpenAI SDK works unchanged — you swap two lines and every model in the table above becomes callable via the SDK you already know.

Configuration — just two lines

Specifying your gate

Verlon supports three ways to point a request at a gate:

Streaming

Identical behavior to the OpenAI SDK — stream: true returns an async iterable.

Language coverage

What’s supported

Full support for stream: true, identical semantics to OpenAI.
Fully supported. Verlon translates across providers if your gate routes to Claude, Gemini, etc.
Image inputs (type: 'image_url') work with any vision-capable model.
temperature, max_tokens, top_p, frequency_penalty, presence_penalty, logprobs, and the rest — all passed through.
Standard response.usage with token counts, plus Verlon’s cost field with per-call dollar amount.

Responses API

Verlon is also a drop-in for OpenAI’s Responses API (client.responses.create) — the surface the OpenAI Agents SDK and multi-turn tool loops with encrypted reasoning replay are built on. Point baseURL at Verlon and pass your gate id as model, exactly like chat completions.
Multi-turn tool loops with reasoning replay work. On each turn, echo the prior reasoning and function_call items back in input — Verlon requests include: ['reasoning.encrypted_content'] for reasoning models and passes the encrypted reasoning through untouched, so the model keeps its chain of thought across tool calls.
store: true and previous_response_id are not supported — Verlon holds no server-side conversation state (matching our zero-data-retention default). Send the full input each turn, echoing prior reasoning / function_call items back. Requests using store: true or previous_response_id return 400.
The Responses API is OpenAI-specific. A gate that resolves to Anthropic, Google, or Mistral returns 400 — use /v1/chat/completions for those, which normalizes tool calls across providers.
stream: true returns the named-event SSE stream (event: response.created, response.output_text.delta, response.completed, …) verbatim.

Migrating an existing OpenAI app

1

Update client initialization

Swap baseURL + apiKey. Two lines.
2

Add a gate reference

Pass gateId (or set the default header). The model field, messages, and everything else stay the same.
3

Test in development

Verify requests appear in the Verlon dashboard and cost tracking works.
4

Deploy

Ship. If anything breaks, revert the two-line diff — takes 30 seconds.

How it works

  1. You send an OpenAI-format request to https://api.verlon.ai/v1/chat/completions
  2. Verlon receives — validates the gate, applies routing rules
  3. Verlon routes to whichever model your gate points at (GPT, Claude, Gemini, Mistral, or anything else in the registry)
  4. The provider responds in its native format
  5. Verlon normalizes back to OpenAI format
  6. You receive a standard OpenAI response with an added cost field
Your code doesn’t know the difference.

Errors

Errors come back OpenAI-shaped — { "error": { "message", "type", "code", "param" } } — so the OpenAI SDK’s error classes work unchanged.

FAQ

No. Change baseURL + apiKey in the client. The completion calls stay identical.
Yes. Revert baseURL + apiKey to OpenAI values and you’re back on their API.
Yes — that’s the point. Configure your gate to route to any model in the registry and your OpenAI SDK code stays the same.
Yes. Its OpenAI adapter works against Verlon’s endpoint unchanged.
No. This whole guide uses only the OpenAI SDK.

Full non-chat model list

Every non-chat OpenAI model Verlon routes to, grouped by modality. Chat models are in the table near the top of this page.

Audio

Embeddings

Image generation

Moderation

Speech-to-text

Text-to-speech

Video generation