Documentación de API
API compatible con OpenAI. Reemplazo directo: solo cambia tu URL base.
Respuesta corta
APIVAI es una pasarela de API de pago por uso para Claude y GPT. Una clave de API funciona en dos formatos: Anthropic Messages en https://api.apivai.com (Claude Code, SDK de Anthropic; endpoint /v1/messages) y OpenAI en https://api.apivai.com/v1 (endpoints /v1/chat/completions, /v1/responses y /v1/models). Envía la clave como Authorization: Bearer o x-api-key, elige un ID de modelo de GET /v1/models y usa streaming para tareas largas.
https://api.apivai.com/v1— endpoint de API compatible con OpenAI (Claude + GPT)https://api.apivai.com— formato Anthropic Messages (Claude Code, SDK de Anthropic), sin /v1Comienza en 2 minutos
APIVAI proporciona un proxy de API compatible con los formatos de Anthropic y OpenAI. Solo configura dos variables de entorno y estarás listo.
1. Obtén tu clave API
Regístrate en apivai.com y recarga saldo; después crea una clave API en la página del Panel.
2. Configura tu URL base
3. Empieza a usar
Si ANTHROPIC_API_KEY ya está definida en tu terminal, elimínala primero o se usará en lugar de tu clave de APIVAI: unset ANTHROPIC_API_KEY (PowerShell: Remove-Item Env:ANTHROPIC_API_KEY).
Claude Messages API (formato nativo de Anthropic)
Usa la API estándar de Anthropic Messages. Solo cambia base_url y api_key.
https://api.apivai.comPython (Anthropic SDK)
cURL (Messages API)
cURL (streaming)
Listar modelos
claude-fable-5-1La más potenteclaude-opus-5-5Potenteclaude-sonnet-5-5Mejor relación calidad-precioclaude-sonnet-4-6Popularclaude-haiku-4-5La más rápidaAutenticación
Todas las solicitudes de API requieren una clave API enviada como token Bearer en el encabezado Authorization (Authorization: Bearer YOUR_API_KEY). El encabezado x-api-key, que envían el SDK de Anthropic y Claude Code, también funciona. Obtén tu clave API desde el Panel después de iniciar sesión.
Usando OpenAI SDK
POST /v1/chat/completions
Crea una completion de chat. Compatible con el formato de chat completions de OpenAI.
Cuerpo de la solicitud
Modelos disponibles
Todos los modelos (Claude + GPT) se pueden usar a través del mismo endpoint, /v1/chat/completions. Los modelos Claude también funcionan con /v1/messages (formato Anthropic) y los GPT con /v1/responses (lo usa Codex CLI). Indica el ID del modelo en tus solicitudes.
Streaming (SSE)
Define stream: true para recibir los tokens en tiempo real mediante Server-Sent Events.
Usa streaming para tareas largas (mucho razonamiento, respuestas grandes): una solicitud sin streaming que tarda más de 100 segundos en responder se corta por el camino; con streaming la conexión se mantiene abierta aunque el modelo piense mucho.
Editores y agentes
Estas herramientas aceptan una base URL y una clave compatibles con OpenAI. Elige el modelo de GET /v1/models y empieza con una tarea pequeña: las herramientas de agentes envían muchos tokens.
Codex CLI
Codex usa la API Responses (/v1/responses), que APIVAI ofrece, así que las llamadas a herramientas y el streaming funcionan como se espera.
Cline
| Campo | Valor |
|---|---|
| API Provider | OpenAI Compatible |
| Base URL | https://api.apivai.com/v1 |
| API Key | Tu clave API de APIVAI |
| Model | Un ID de GET /v1/models |
Aider
Para ediciones rutinarias suele bastar un modelo más barato; cambia a uno más potente solo para cambios difíciles.
Continue.dev
Edita ~/.continue/config.yaml (Windows: %USERPROFILE%\.continue\config.yaml; el antiguo formato config.json está obsoleto) y añade una entrada de modelo. Con provider: openai, apiBase termina en /v1 y la misma entrada sirve para IDs de modelos Claude y GPT. Guía completa: configuración de Continue.
Antes de empezar
- La base URL contiene /v1 exactamente una vez.
- El modelo elegido aparece en la lista actual de modelos.
- El proceso de la herramienta puede leer la clave (entorno o ajustes).
- Las claves no aparecen en archivos del proyecto, configuraciones compartidas ni capturas de pantalla.
Más detalles: API compatible con OpenAI · Proxy de la API de Claude
Preguntas frecuentes
¿Dónde obtengo una clave API?
¿Cómo elijo un modelo?
¿Qué base URL debo usar?
¿Puedo usar Cursor u otros agentes de editor?
¿Puedo llamar a la API directamente desde código del navegador?
¿Qué hago si mi clave queda expuesta?
¿Por qué hay más tokens de salida que texto recibido?
¿Por qué los ejemplos usan una clave de marcador?
Solución de problemas
Revisa en este orden: configuración, descubrimiento de modelos y luego una solicitud de chat mínima. Mantén la solicitud pequeña hasta que el endpoint, la clave y el modelo funcionen.
1. Comprueba la lista de modelos
Si falla, corrige la autenticación o la base URL antes de probar cualquier otra cosa.
2. Envía una solicitud de chat mínima
Códigos de estado
| Estado | Causa común | Qué revisar |
|---|---|---|
| 401 | Clave ausente o no válida | La clave está definida y se envía como Authorization: Bearer <key>. |
| 402 insufficient_quota | La clave no tiene presupuesto | Añade presupuesto a la clave en el Panel o recarga tu saldo. |
| 403 | La cuenta propietaria de la clave está desactivada | Contacta con soporte (support@apivai.com). |
| 404 | Base URL o ruta incorrecta | /v1 aparece exactamente una vez; la ruta es /messages, /chat/completions, /responses o /models. |
| 408 | Tiempo de espera agotado (red o cliente) | Reintenta desde la misma terminal y luego prueba otra red. |
| 429 | Límite de tasa o de saldo alcanzado | Reduce la concurrencia, reintenta con backoff y revisa tu saldo. |
| 503 / 529 overloaded_error | El modelo está sobrecargado temporalmente | Reintenta tras unos segundos, con backoff entre intentos. |
| 524 | Una solicitud sin streaming tardó más de unos 100 segundos | Usa "stream": true para respuestas largas (max_tokens alto, razonamiento largo). El streaming no se corta; reintentar una solicitud sin streaming se cobra de nuevo. |
| 5xx | Error del servidor | Reintenta tras una breve espera y anota la hora para soporte. |
Todos los códigos de error con sus causas y soluciones: códigos de error de la API de Claude.
¿Por qué recibo 404 Not Found?
La dirección final es incorrecta; normalmente falta /v1, sobra o está repetido. Las solicitudes deben llegar a https://api.apivai.com/v1/messages, /v1/chat/completions, /v1/responses o /v1/models; Claude Code y el SDK de Anthropic usan https://api.apivai.com, las herramientas al estilo de OpenAI https://api.apivai.com/v1.
¿Por qué mi clave devuelve 401?
La clave falta, está mal escrita, se eliminó o el proceso que envía la solicitud no la ve. Con Claude Code, una ANTHROPIC_API_KEY que quede en tu terminal tiene prioridad sobre tu clave de APIVAI; elimínala.
¿Por qué recibo 402 o 429?
402 insufficient_quota significa que el presupuesto de la clave se agotó: añade presupuesto a la clave o recarga tu saldo. 429 significa demasiadas solicitudes a la vez (60 por minuto por clave por defecto) o sin presupuesto: reduce el ritmo y reintenta con backoff.
¿Por qué una solicitud larga falla con 524?
Una solicitud sin streaming que tarda más de unos 100 segundos se corta por el camino. Envía las solicitudes largas con "stream": true; las respuestas en streaming no se cortan.
¿Por qué el streaming no muestra nada?
Normalmente el cliente no lee la respuesta como stream o se salta los fragmentos sin texto. Comprueba:
- El cuerpo de la solicitud incluye "stream": true.
- Tu cliente HTTP lee el cuerpo de forma incremental.
- La solicitud sin streaming funciona: así separas los problemas de parseo de los de autenticación o de modelo.
- Algunos fragmentos solo llevan metadatos o un motivo de finalización, no texto.
¿Por qué la respuesta está vacía o cortada?
El razonamiento está activado por defecto y sus tokens cuentan para el límite de salida. Con un max_tokens pequeño, el modelo puede gastar todo el límite en razonar y no devolver texto, y la solicitud se cobra igualmente.
- El motivo de finalización es "length" (o stop_reason es "max_tokens"): se alcanzó el límite.
- Define max_tokens en 4096 o más; para respuestas largas o código, 8192 o más.
- Solo pagas los tokens realmente usados, así que un límite más alto no cuesta más por sí mismo.
¿Por qué curl devuelve un error al parsear JSON?
Las comillas de la terminal son una causa frecuente de errores al parsear JSON. Guarda el cuerpo en un archivo y envíalo con --data @body.json.
Antes de contactar con soporte
- Código de estado HTTP y ruta del endpoint (nunca la clave).
- Hora aproximada y zona horaria.
- Cuerpos de solicitud y respuesta sin secretos ni contenido privado.
- Entorno de ejecución y versión, como Python o Node.js.
Integración de herramientas
APIVAI funciona como reemplazo directo de las API oficiales. Solo cambia la URL base en tu herramienta favorita.
Claude Code
Define dos variables de entorno antes de ejecutar Claude Code.
Cursor
Ve a Cursor Settings → Models → Override OpenAI Base URL:
OpenAI Python SDK
Usa el SDK de OpenAI con nuestra base URL para todos los modelos, incluido Claude.
Anthropic Python SDK
Usa el SDK oficial de Anthropic: solo cambia la base URL.
cURL
Llamada directa a la API con curl.