Route requests to
o3 (2025-04-16)
with Merge Gateway

Apply your own routing policies, reduce token costs automatically, and see every routing decision in real time with Merge Gateway.

What o3 (2025-04-16) costs to run

| Vendor | Input / 1M tokens | Output / 1M tokens | Zero data retention | | --- | ---: | ---: | --- | | OpenAI | $2.00 | $8.00 | Yes |

Test o3 (2025-04-16)
with Gateway’s Simulator

See a prompt's output, token spend, latency, and more with o3 (2025-04-16).

Route requests to o3 (2025-04-16) in minutes

To get started in seconds, add our Gateway Implementation skill to your project, or pick your preferred SDK below. Check out our other quick start skills here.
Install the Merge Gateway SDK
Python
Copied!
1$ pip install merge-gateway-sdk
Send a request
Python
Copied!
1from merge_gateway import MergeGateway
2
3client = MergeGateway(api_key="YOUR_API_KEY")
4
5response = client.responses.create(
6    model="openai/gpt-5.2",
7    input=[
8        {"type": "message", "role": "system", "content": "You are a helpful programming tutor. Explain the concepts clearly with practical examples."},
9        {"type": "message", "role": "user", "content": "Explain the concept of recursion in programming with a simple set of examples."},
10    ],
11)
12
13print(response.output[0].content[0].text)
Try a diffrent model
Swap the model string to route to a different provider. No other code changes needed.
Anthropic
Copied!
1response = client.responses.create(
2    model="anthropic/claude-sonnet-4-20250514",
3    input=[
4        {"type": "message", "role": "system", "content": "You are a helpful programming tutor. Explain the concepts clearly with practical examples."},
5        {"type": "message", "role": "user", "content": "Explain the concept of recursion in programming with a simple set of examples."},
6    ],
7)
Point to Gateway
Python
Copied!
1from openai import OpenAI
2
3client = OpenAI(
4    api_key="YOUR_API_KEY",
5    base_url="https://api-gateway.merge.dev/v1/openai",
6)
Send a request
Use the standard chat.completions.create method. No provider prefix needed on the model name.
Python
Copied!
1response = client.chat.completions.create(
2    model="gpt-5.2",
3    messages=[
4        {"role": "system", "content": "You are a helpful programming tutor. Explain the concepts clearly with practical examples."},
5        {"role": "user", "content": "Explain the concept of recursion in programming with a simple set of examples."},
6    ],
7)
8
9print(response.choices[0].message.content)
Install packages
Copied!
1npm install merge-gateway-ai-sdk-provider ai
Create the provider
TypeScript
Copied!
1import { createMergeGateway } from "merge-gateway-ai-sdk-provider";
2
3const gateway = createMergeGateway({
4  apiKey: "YOUR_API_KEY",
5});
Send a request
Use generateText to send a request. Model names use the provider/model format.
TypeScript
Copied!
1import { generateText } from "ai";
2
3const { text } = await generateText({
4  model: gateway("openai/gpt-4o"),
5  prompt: "Explain the concept of recursion in programming with a simple set of examples.",
6});
7
8console.log(text);
If you already have @ai-sdk/openai installed, point it at Gateway with a base URL change:
TypeScript
Copied!
1import { createOpenAI } from "@ai-sdk/openai";
2
3const gateway = createOpenAI({
4  apiKey: "YOUR_API_KEY",
5  baseURL: "https://api-gateway.merge.dev/v1/ai-sdk",
6});
7
8// All generateText/streamText calls work unchanged
Install the Merge Gateway SDK
Anthropic SDK
Copied!
1from anthropic import Anthropic
2
3client = Anthropic(
4    api_key="YOUR_API_KEY",
5    base_url="https://api-gateway.merge.dev/v1/anthropic",
6)
7
8message = client.messages.create(
9    model="claude-sonnet-4-20250514",
10    max_tokens=1024,
11    messages=[
12        {"role": "user", "content": "Explain the concept of recursion in programming with a simple set of examples."},
13    ],
14)
15
16print(message.content[0].text)

Explore other models available in Merge Gateway

model logo
Grok Build 0.1
model logo
Grok Code Fast 1
model logo
Jamba 1.5 Large
model logo
Jamba 1.5 Mini
model logo
Kimi K2.5
model logo
Kimi K2.6
model logo
Kimi K2.7 Code
model logo
Kimi K2.7 Code Highspeed
model logo
Kimi K2 Thinking
model logo
Kimi K2 Thinking Turbo
model logo
Llama 3.1 70B
model logo
Llama 3.1 8B
model logo
Llama 3.2 11B
model logo
Llama 3.2 1B
model logo
Llama 3.2 90B
model logo
Llama 3.3 70B FP8
model logo
Llama 3.3 70B Instruct Turbo
model logo
Llama 3 8B
model logo
Llama 4 Maverick 17B
model logo
Llama 4 Maverick 17B 128E Instruct
model logo
Llama 4 Maverick 17B 128E Instruct FP8
model logo
Llama 4 Scout 17B
model logo
Magistral Medium 1.2
model logo
Magistral Small 1.2

o3 (2025-04-16) FAQ

Heading

What provider owns o3 (2025-04-16)?

o3 (2025-04-16) is a OpenAI model.

Which vendors can run o3 (2025-04-16)?

OpenAI is the default listed vendor, and other active vendors may also be available.

What context window does o3 (2025-04-16) support?

o3 (2025-04-16) supports 200,000 tokens on the primary listed vendor route.

What capabilities does o3 (2025-04-16) support?

Gateway currently lists streaming, structured outputs, tool calling, vision support for o3 (2025-04-16) across its available vendor routes.

Try o3 (2025-04-16) through Merge Gateway

Route, observe, and control AI requests across providers from one API.