API unificada
Mantenha seu código do SDK da OpenAI. Troque a URL base e pronto, está no ar.
Pare de fazer malabarismo com chaves de API e consoles de provedores. Roteie suas requisições para OpenAI, Anthropic, Google Gemini, Mistral e DeepSeek, acompanhe seus custos em tempo real e troque de modelo sem mexer no seu código.
Integração
Já usa um SDK da OpenAI? Aponte-o para api.openvertexrouter.com e pronto. Funciona com qualquer linguagem ou framework.
curl https://api.openvertexrouter.com/v1/chat/completions \
-H "Authorization: Bearer $OVR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-5",
"messages": [{ "role": "user", "content": "Hello" }]
}'import OpenAI from "openai";
const client = new OpenAI({
// the only change
baseURL: "https://api.openvertexrouter.com/v1",
apiKey: process.env.OVR_API_KEY,
});
const completion = await client.chat.completions.create({
model: "anthropic/claude-sonnet-5",
messages: [{ role: "user", content: "Hello" }],
});// app/api/chat/route.ts
import OpenAI from "openai";
const client = new OpenAI({
// the only change
baseURL: "https://api.openvertexrouter.com/v1",
apiKey: process.env.OVR_API_KEY,
});
export async function POST(req: Request) {
const { messages } = await req.json();
const completion = await client.chat.completions.create({
model: "anthropic/claude-sonnet-5",
messages,
});
return Response.json(completion.choices[0].message);
}import os
from openai import OpenAI
client = OpenAI(
# the only change
base_url="https://api.openvertexrouter.com/v1",
api_key=os.environ["OVR_API_KEY"],
)
completion = client.chat.completions.create(
model="anthropic/claude-sonnet-5",
messages=[{"role": "user", "content": "Hello"}],
)OpenAIClient client = OpenAIOkHttpClient.builder()
// the only change
.baseUrl("https://api.openvertexrouter.com/v1")
.apiKey(System.getenv("OVR_API_KEY"))
.build();
ChatCompletion completion = client.chat().completions().create(
ChatCompletionCreateParams.builder()
.model("anthropic/claude-sonnet-5")
.addUserMessage("Hello")
.build());client := openai.NewClient(
// the only change
option.WithBaseURL("https://api.openvertexrouter.com/v1"),
option.WithAPIKey(os.Getenv("OVR_API_KEY")),
)
completion, err := client.Chat.Completions.New(ctx,
openai.ChatCompletionNewParams{
Model: "anthropic/claude-sonnet-5",
Messages: []openai.ChatCompletionMessageParamUnion{
openai.UserMessage("Hello"),
},
})$client = OpenAI::factory()
// the only change
->withBaseUri('https://api.openvertexrouter.com/v1')
->withApiKey(getenv('OVR_API_KEY'))
->make();
$completion = $client->chat()->create([
'model' => 'anthropic/claude-sonnet-5',
'messages' => [['role' => 'user', 'content' => 'Hello']],
]);client = OpenAI::Client.new(
# the only change
uri_base: "https://api.openvertexrouter.com/v1",
access_token: ENV["OVR_API_KEY"]
)
completion = client.chat(parameters: {
model: "anthropic/claude-sonnet-5",
messages: [{ role: "user", content: "Hello" }]
})Como funciona
Cada chamada roda em infraestrutura alocada só para a sua conta, com chaves de provedor isoladas. Sem gateway compartilhado, sem vizinhos barulhentos. Escolha entre uma instância única dimensionada para sua carga (Business) e várias instâncias em paralelo atrás de um load balancer (Enterprise).
Por que os times migram
provedores, um endpoint
OpenAI, Anthropic, Google, Mistral, DeepSeek e mais — atrás de uma única chave.
modelos
De dez provedores. Troque de modelo mudando uma string.
de eficiência em custos
Cache inteligente, estratégias de roteamento.
de disponibilidade
Infraestrutura testada em batalha, confiável mesmo em grande escala.
Capacidades da plataforma
Oito capacidades que transformam uma pilha de contas de provedores em um único gateway que você realmente governa.
Mantenha seu código do SDK da OpenAI. Troque a URL base e pronto, está no ar.
OpenAI, Anthropic, Google, Mistral e DeepSeek em uma única integração. Troque de modelo mudando uma string.
Sua própria instância de gateway, dimensionada para sua carga, com chaves de provedor isoladas.
Saldos pré-pagos com tetos rígidos. Cada requisição é pré-autorizada antes de sair.
Limites de gasto por chave, com alertas em 80, 90 e 100 % do orçamento.
Roteamento por provedor e por modelo com failover de chaves embutido, seguindo as suas regras.
Gastos e métricas de tokens em tempo real para cada requisição do seu time.
Detalhe uso e gastos por provedor e por modelo para achar rápido os estouros de custo.
Preços
A mesma estrutura nos dois: uma assinatura mensal mais o consumo de provedores. Só os números mudam com o seu volume.