Guia de integração · piloto

Do portal ao
primeiro pedido.

Ative seu acesso, configure o ambiente e envie uma requisição pequena. Um caminho por vez, com exemplos que você controla.

Copiar não executa. A página não consulta a API nem solicita sua chave.

01 / Antes do terminal

Uma conta, uma chave sua.

O piloto tem ativação manual. Criar uma conta não libera o uso da API automaticamente.

  1. Crie a conta no portal

    Acesse portal.gatewaycli.tech e faça o cadastro. A conta fica pendente.

  2. Aguarde o administrador

    O administrador precisa ativar sua conta. Se ela continuar pendente, solicite orientação à administração do piloto antes de tentar a API.

  3. Gere a chave no portal

    Após a ativação, entre no portal, acesse a área de chaves de API e gere uma chave do cliente. Guarde-a em local seguro; não envie a chave em capturas de tela ou mensagens de suporte.

  4. Configure a base OpenAI

    Use https://api.gatewaycli.tech/v1. Nos exemplos, substitua SUA_CHAVE_GATEWAYCLI pela sua chave apenas no seu ambiente local.

A credencial certa: use sempre a chave de API do cliente, gerada no portal. Nunca use uma chave upstream ou master. Não coloque credenciais em páginas públicas, repositórios ou código executado no navegador.
02 / Seu ambiente

Escolha o terminal, não adivinhe a sintaxe.

As variáveis abaixo valem para a sessão atual. Defina-as e, só quando quiser testar, execute o exemplo cURL correspondente. A requisição usa max_tokens: 16 para limitar a saída.

O teste consome sua franquia. O botão Copiar apenas copia texto; nada é executado ou enviado por esta página.

Windows · PowerShell

Use curl.exe para chamar o cURL, não o alias do PowerShell. O corpo JSON é enviado pela entrada padrão para evitar diferenças de aspas no Windows.

1. Definir variáveis · PowerShell
$env:OPENAI_BASE_URL = "https://api.gatewaycli.tech/v1"
$env:OPENAI_API_KEY = "SUA_CHAVE_GATEWAYCLI"
2. Testar com cURL · PowerShell
$body = '{"model":"claude-fable-5-1","messages":[{"role":"user","content":"Responda apenas OK."}],"max_tokens":16}'
$body | curl.exe "$($env:OPENAI_BASE_URL)/chat/completions" `
  -H "Authorization: Bearer $env:OPENAI_API_KEY" `
  -H "Content-Type: application/json" `
  --data-binary '@-'

macOS / Linux · bash

Use um terminal bash. A barra invertida continua o comando na próxima linha.

1. Definir variáveis · bash
export OPENAI_BASE_URL="https://api.gatewaycli.tech/v1"
export OPENAI_API_KEY="SUA_CHAVE_GATEWAYCLI"
2. Testar com cURL · bash
curl "$OPENAI_BASE_URL/chat/completions" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-fable-5-1",
    "messages": [{"role": "user", "content": "Responda apenas OK."}],
    "max_tokens": 16
  }'

Windows · Prompt de Comando (cmd)

O acento circunflexo continua o comando. Não acrescente espaços depois dele. Este exemplo é para o cmd, não para o PowerShell.

1. Definir variáveis · cmd
set "OPENAI_BASE_URL=https://api.gatewaycli.tech/v1"
set "OPENAI_API_KEY=SUA_CHAVE_GATEWAYCLI"
2. Testar com cURL · cmd
curl.exe "%OPENAI_BASE_URL%/chat/completions" ^
  -H "Authorization: Bearer %OPENAI_API_KEY%" ^
  -H "Content-Type: application/json" ^
  -d "{\"model\":\"claude-fable-5-1\",\"messages\":[{\"role\":\"user\",\"content\":\"Responda apenas OK.\"}],\"max_tokens\":16}"

Variáveis de ambiente não são um cofre: processos locais podem acessá-las e comandos digitados podem ficar no histórico do terminal. Não compartilhe sua sessão ou arquivos com a chave preenchida.

03 / No seu projeto

A mesma base, no SDK OpenAI.

Estes exemplos pressupõem Python ou Node.js e o respectivo SDK oficial openai já disponíveis no seu projeto. Configure as duas variáveis de ambiente antes e execute no mesmo ambiente. Não use estes trechos no navegador.

Python

A base é informada explicitamente ao cliente.

SDK OpenAI · Python
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["OPENAI_API_KEY"],
    base_url=os.environ["OPENAI_BASE_URL"],
)

response = client.chat.completions.create(
    model="claude-fable-5-1",
    messages=[{"role": "user", "content": "Responda apenas OK."}],
    max_tokens=16,
)
print(response.choices[0].message.content)

Node.js

Use módulos ES, por exemplo um arquivo .mjs.

SDK OpenAI · Node.js
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.OPENAI_API_KEY,
  baseURL: process.env.OPENAI_BASE_URL,
});

const response = await client.chat.completions.create({
  model: "claude-fable-5-1",
  messages: [{ role: "user", content: "Responda apenas OK." }],
  max_tokens: 16,
});
console.log(response.choices[0].message.content);

Os SDKs são pontos de partida para a API no formato OpenAI, não uma garantia de compatibilidade de todos os seus recursos. Rodar qualquer exemplo de requisição consome franquia.

04 / Valide antes de ampliar

O que sabemos. O que falta validar.

Um modelo com resposta confirmada

Dos cinco modelos do catálogo, apenas claude-fable-5-1 teve um teste de resposta bem-sucedido confirmado. Os outros quatro ainda não foram testados com sucesso. Aparecer na lista não comprova funcionamento, acesso na sua conta ou disponibilidade futura.

Posso conectar Claude Code ou Codex diretamente?

Não há integração nativa validada com Claude Code ou Codex nem certificação de compatibilidade com essas CLIs. A API no formato OpenAI é um ponto de partida para integrar aplicações; não comprova que uma CLI inteira funcione. Valide os requisitos da sua ferramenta antes de usá-la.

E a API no formato Anthropic?

A rota direta /v1/messages existe, mas ainda não foi validada neste guia. Se uma ferramenta pedir a base Anthropic, a raiz é https://api.gatewaycli.tech, sem /v1; isso não garante integração com Claude Code nem certificação de qualquer CLI. Os exemplos acima usam apenas a base OpenAI, com /v1.

Streaming, ferramentas e cache estão garantidos?

Não. Não há garantia de streaming, tool calling ou cache. Uma resposta simples de Chat Completions não valida esses recursos. Confirme o suporte necessário antes de ampliar sua integração.

O primeiro teste falhou. Por onde começar?

Confirme a ativação da conta no portal, a chave do cliente e a base terminada em /v1. Verifique se usou a sintaxe do seu terminal e o modelo claude-fable-5-1. Confira também os limites da sua conta. Para pedir ajuda, anote o código HTTP e uma mensagem de erro sem dados sensíveis; nunca compartilhe o cabeçalho Authorization ou a chave. Evite repetir pedidos em sequência: novas tentativas podem consumir franquia.

Pronto para preparar o acesso?

Comece no portal. Execute o primeiro pedido só quando decidir testar.

Ir para o portal