Proxy da API do Claude

Use os modelos Claude com o Claude Code, o SDK da Anthropic ou qualquer ferramenta compatível com OpenAI.

BASE URLhttps://api.apivai.com

O APIVAI oferece os modelos Claude em dois formatos. Escolha o que sua ferramenta espera — confundi-los é a causa mais comum de erros 404.

FormatoBase URLEndpointCabeçalho de autenticaçãoUsado por
Nativo da Anthropichttps://api.apivai.com/v1/messagesx-api-keyClaude Code, Anthropic SDK
Compatível com OpenAIhttps://api.apivai.com/v1/chat/completionsAuthorization: BearerCursor, Cline, Aider, OpenAI SDK

O SDK da Anthropic e o Claude Code acrescentam /v1/messages por conta própria, então a base URL deles não deve terminar com /v1. Ferramentas no estilo OpenAI precisam de /v1 exatamente uma vez.

Claude Code

macOS / Linux

export ANTHROPIC_BASE_URL="https://api.apivai.com" export ANTHROPIC_AUTH_TOKEN="YOUR_APIVAI_API_KEY" claude

Windows PowerShell

$env:ANTHROPIC_BASE_URL="https://api.apivai.com" $env:ANTHROPIC_AUTH_TOKEN="YOUR_APIVAI_API_KEY" claude

Comece com um prompt curto para confirmar a conexão antes de iniciar uma sessão longa de agente.

Anthropic SDK

Python

import anthropic client = anthropic.Anthropic( api_key="YOUR_APIVAI_API_KEY", base_url="https://api.apivai.com", ) message = client.messages.create( model="YOUR_MODEL_NAME", max_tokens=1024, messages=[{"role": "user", "content": "Hello!"}], ) print(message.content[0].text)

Node.js

import Anthropic from "@anthropic-ai/sdk"; const client = new Anthropic({ apiKey: process.env.APIVAI_API_KEY, baseURL: "https://api.apivai.com", }); const message = await client.messages.create({ model: "YOUR_MODEL_NAME", max_tokens: 1024, messages: [{ role: "user", content: "Hello!" }], }); // message.content is an array of content blocks console.log(message.content.map((b) => (b.type === "text" ? b.text : "")).join(""));

cURL (Messages API)

curl https://api.apivai.com/v1/messages \ -H "x-api-key: YOUR_APIVAI_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "Content-Type: application/json" \ -d '{ "model": "YOUR_MODEL_NAME", "max_tokens": 1024, "messages": [{"role": "user", "content": "Hello!"}] }'

Adicione "stream": true ao corpo para receber a resposta como server-sent events.

Claude pelo formato OpenAI

Ferramentas que só aceitam um provedor no estilo OpenAI também podem usar os modelos Claude — aponte-as para a base URL com /v1 e informe um ID de modelo Claude.

curl https://api.apivai.com/v1/chat/completions \ -H "Authorization: Bearer YOUR_APIVAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "YOUR_MODEL_NAME", "messages": [{"role": "user", "content": "Hello!"}] }'

Erros comuns

ErroCausa comum
401A chave está ausente, mal formatada ou não está visível para o processo que iniciou a ferramenta.
404A base URL tem /v1 onde não deveria, não tem ou tem duas vezes.
model_not_foundO modelo configurado não está na resposta atual de GET /v1/models.