Documentação
Conecte suas ferramentas em poucos minutos
Use o host da API abaixo no lugar do endereço de cada fornecedor. O site fica em outro host; os clientes devem se conectar sempre ao host da API.
Endereço que seu cliente chamahttps://api.relayvano.com/v1
Chame a API na sua linguagem
Instale o SDK oficial e informe o host da nossa API como URL base.
pip install openaiimport openai as gateway
voyage = gateway.OpenAI(api_key="rlv_your_key", base_url="https://api.relayvano.com/v1")
leg = voyage.chat.completions.create(model="gpt-6.1-sol", messages=[
{"role": "user", "content": "Plan a three-stop refactor for my parser"},
])
print(leg.choices[0].message.content.strip())A mesma família de SDK para JavaScript e TypeScript; guarde a chave em uma variável de ambiente.
npm install openaiimport { OpenAI } from "openai";
const relay = new OpenAI({ apiKey: process.env.RELAYVANO_KEY, baseURL: "https://api.relayvano.com/v1" });
const reply = await relay.chat.completions.create({
model: "gpt-6.1-sol",
messages: [{ role: "user", content: "Suggest a name for a packing-list app" }],
});
console.log(reply.choices[0].message.content);Sem necessidade de SDK: basta uma requisição HTTP com um cabeçalho Bearer.
package main
import (
"bytes"
"fmt"
"io"
"net/http"
"os"
)
func main() {
payload := []byte(`{"model":"gpt-6.1-sol","messages":[{"role":"user","content":"Name a city on the Danube"}]}`)
req, _ := http.NewRequest("POST", "https://api.relayvano.com/v1/chat/completions", bytes.NewReader(payload))
req.Header.Set("Authorization", "Bearer "+os.Getenv("RELAYVANO_KEY"))
req.Header.Set("Content-Type", "application/json")
res, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer res.Body.Close()
answer, _ := io.ReadAll(res.Body)
fmt.Println(string(answer))
}Envie a chave como um token Bearer. O exemplo pede ao GPT-6.1 Sol uma saudação em três idiomas.
curl https://api.relayvano.com/v1/chat/completions \
--oauth2-bearer rlv_your_key \
--json '{"model": "gpt-6.1-sol", "messages": [{"role": "user", "content": "Say hello in Hindi, Spanish and French"}]}'Os modelos Gemini usam sua rota nativa e o cabeçalho x-goog-api-key:
curl "https://api.relayvano.com/v1beta/models/gemini-3.8-flash:generateContent" \
--header "x-goog-api-key: rlv_your_key" \
--json '{"contents": [{"role": "user", "parts": [{"text": "Name three night trains in Europe"}]}]}'Bons IDs GPT para a primeira viagem:
gpt-5.6-solgpt-6-astragpt-6.1-sol
Configure seus clientes de programação
Claude Code · Claude Desktop
Defina o endereço base da Anthropic como o host da API (sem /v1) e use sua chave API como token de autenticação; depois, inicie claude.
export ANTHROPIC_BASE_URL=https://api.relayvano.com
export ANTHROPIC_AUTH_TOKEN=rlv_your_key
claudesetx ANTHROPIC_BASE_URL "https://api.relayvano.com"
setx ANTHROPIC_AUTH_TOKEN "rlv_your_key"Os modelos Claude atendem apenas aos clientes oficiais Claude Code e Claude Desktop, e o provedor de origem exige Claude Code 2.1.285 ou mais recente. GPT, Gemini e as demais famílias funcionam com qualquer cliente ou SDK compatível com OpenAI.
Codex
Use https://api.relayvano.com/v1 como URL base e sua chave API como a chave da API. As solicitações de chat vão para /v1/chat/completions; a Responses API está em /v1/responses.
export OPENAI_BASE_URL=https://api.relayvano.com/v1
export OPENAI_API_KEY=rlv_your_key
codexGemini CLI
Defina a URL base do Gemini como o host da API sem complementos e use sua chave API como chave do Gemini; depois, execute gemini.
export GOOGLE_GEMINI_BASE_URL=https://api.relayvano.com
export GEMINI_API_KEY=rlv_your_key
gemini- Informe apenas o host; não acrescente /v1beta por conta própria.
- O Gemini usa apenas seu protocolo nativo; para streaming, chame :streamGenerateContent?alt=sse.
- Os modelos Gemini não podem ser chamados por /v1/chat/completions.
IDs de Gemini no painel:
gemini-3.1-progemini-3.8-flashgemini-4-argon
Como as requisições são cobradas
Cada solicitação é medida com base nos tokens que o modelo realmente processou, e o armazenamento e os acertos de cache têm preços separados. Você pode acompanhar cada cobrança no painel.
Uma resposta HTTP 402 indica que seu saldo acabou. Recarregue na sala de embarque e envie a requisição novamente.