Elige la forma del cliente
Los clientes JavaScript y Python de estilo OpenAI y las llamadas curl directas reciben https://cicora.ai/api/v1 y añaden las rutas sin un segundo /v1.
Los SDK de Messages y Claude Code reciben la raíz de la pasarela https://cicora.ai/api porque añaden /v1/messages por sí mismos. Los ejemplos siguientes muestran ambas formas.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://cicora.ai/api/v1",
apiKey: process.env.CICORA_API_KEY,
});
const completion = await client.chat.completions.create({
model: "openai/gpt-5.6-sol",
messages: [{ role: "user", content: "Hello" }],
});from openai import OpenAI
import os
client = OpenAI(
base_url="https://cicora.ai/api/v1",
api_key=os.environ["CICORA_API_KEY"],
)
completion = client.chat.completions.create(
model="openai/gpt-5.6-sol",
messages=[{"role": "user", "content": "Hello"}],
)from anthropic import Anthropic
import os
client = Anthropic(
base_url="https://cicora.ai/api",
auth_token=os.environ["CICORA_API_KEY"],
)
message = client.messages.create(
model="anthropic/claude-sonnet-5",
max_tokens=500,
messages=[{"role": "user", "content": "Hello"}],
)import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
baseURL: "https://cicora.ai/api",
authToken: process.env.CICORA_API_KEY,
});
const message = await client.messages.create({
model: "anthropic/claude-sonnet-5",
max_tokens: 500,
messages: [{ role: "user", content: "Hello" }],
});export ANTHROPIC_BASE_URL=https://cicora.ai/api
export ANTHROPIC_AUTH_TOKEN="$CICORA_API_KEY"
export ANTHROPIC_API_KEY=""
# The Messages client appends /v1/messages to the gateway root.
# Clear a preexisting API key so it cannot conflict with the Bearer token.Límite de integración
- Crea un cliente por proceso o límite seguro de aplicación.
- Pasa timeout y AbortSignal desde el flujo que realiza la llamada.
- Devuelve el estado HTTP y un cuerpo de error estructurado al código que realiza la llamada.
Versiones y actualizaciones
No apliques la URL base de estilo OpenAI a un SDK de Messages ni añadas /v1 manualmente a la raíz de su pasarela.
Tras un cambio de referencia, actualiza el cliente y verifica la ruta principal mediante models antes de publicar.