URL base de una API compatible con OpenAI: qué es y cómo configurar cualquier herramienta de IA
La URL base de la API de OpenAI es https://api.openai.com/v1. Aprende qué es una URL base, cómo configurar Python, Node.js, curl, Cursor, Claude Code, Codex y otras herramientas para usar una pasarela compatible con OpenAI y cómo evitar el error de omitir /v1.

URL base de una API compatible con OpenAI: qué es y cómo configurar cualquier herramienta de IA#
Si una herramienta de IA indica que admite una «API compatible con OpenAI», normalmente significa que no necesitas un SDK nuevo.
Mantienes el formato habitual de las solicitudes de OpenAI y cambias tres cosas:
- la clave de API;
- el nombre del modelo;
- la URL base de la API.
Ese último elemento —la URL base— es el origen de muchos problemas de configuración.
Según conversaciones reales con soporte, los errores más comunes son sencillos:
- falta
/v1en el endpoint; - la clave de API es de otro proveedor;
- la herramienta sigue enviando solicitudes al endpoint oficial de OpenAI;
- el nombre del modelo seleccionado no existe en la pasarela;
- los usuarios de una región con restricciones o conectividad inestable utilizan la ruta equivocada.
Esta guía explica para qué sirve la URL base y cómo configurarla en Python, Node.js, curl, Cursor, LiteLLM, FastGPT y herramientas de tipo Codex.
Respuesta rápida#
La URL base de la API de OpenAI es https://api.openai.com/v1. Es la que utilizan los SDK oficiales cuando no configuras ninguna. Una pasarela compatible con OpenAI es cualquier servidor que acepta el mismo formato de solicitud en una URL base diferente, por lo que cambiar de proveedor solo requiere modificar una línea:
| Proveedor | URL base |
|---|---|
| OpenAI (oficial) | https://api.openai.com/v1 |
| Crazyrouter (global) | https://api.crazyrouter.com/v1 |
| Crazyrouter (ruta optimizada para China) | https://cn.crazyrouter.com/v1 |
| Cualquier servidor local (Ollama, LM Studio, vLLM) | http://localhost:11434/v1 o similar |
Reglas que evitan el 90% de los fallos de configuración: conserva el sufijo /v1, utiliza la clave de API emitida por el mismo proveedor que la URL base y nunca añadas parámetros de seguimiento a un endpoint de API (los parámetros UTM corresponden a enlaces en los que hacen clic las personas, no a las URL que invoca tu SDK).

Las configuraciones específicas para Cursor, Claude Code, Codex, Cline, OpenCode, Gemini CLI, Aider y otras herramientas se recopilan en las guías de integración de Crazyrouter.
¿Qué es la URL base de una API?#
La URL base de una API es el prefijo que se utiliza antes de rutas de endpoints como:
/chat/completions
/responses
/embeddings
/images/generations
Por ejemplo, si tu URL base es:
https://crazyrouter.com/v1
una solicitud de generación de respuestas de chat se envía a:
https://crazyrouter.com/v1/chat/completions
El SDK construye esa URL completa por ti.
Por eso, la falta de /v1 puede hacer que falle una configuración que, por lo demás, es correcta.
Por qué son útiles las API compatibles con OpenAI#
Muchas herramientas y SDK se diseñaron originalmente para el formato de la API de OpenAI.
Las pasarelas compatibles con OpenAI permiten a los desarrolladores mantener esa interfaz y dirigir las solicitudes a distintas familias de modelos, como GPT, Claude, Gemini, DeepSeek, Qwen, modelos de imagen, modelos de audio y más.
La ventaja es práctica:
| Sin una pasarela compatible con OpenAI | Con una pasarela compatible con OpenAI |
|---|---|
| Distintos SDK para distintos proveedores | Un único formato de SDK conocido |
| Facturación y claves específicas de cada proveedor | Una clave de API para muchas rutas de modelos |
| Más dificultad para recurrir a modelos alternativos ante fallos | Más facilidad para cambiar de modelo y recurrir a alternativas ante fallos |
| Más trabajo de integración por herramienta | Cambiar la URL base, la clave de API y el nombre del modelo |
En el caso de Crazyrouter, puedes utilizar una única capa de API para 627+ modelos y mantener las herramientas habituales compatibles con OpenAI.
Opciones de URL base de Crazyrouter#
Utiliza esta tabla como guía de referencia para decidir.
| Caso de uso | URL base |
|---|---|
| Acceso estándar a la API compatible con OpenAI | https://crazyrouter.com/v1 |
| Ruta regional para acceso desde China o con conectividad inestable | https://cn.crazyrouter.com/v1 |
| Formato de la API Messages nativa de Anthropic | https://crazyrouter.com |
| Formato de la API nativa de Gemini | Utiliza el formato de endpoint compatible con Gemini indicado en la documentación |
La mayoría de los usuarios que configuran el SDK de OpenAI, herramientas de tipo Cursor, LiteLLM, FastGPT o clientes HTTP personalizados deberían empezar con:
https://crazyrouter.com/v1
Ejemplo con el SDK de OpenAI para Python#
Instala el SDK de OpenAI para Python:
pip install openai
Después, configura el cliente con una URL base personalizada:
from openai import OpenAI
client = OpenAI(
api_key="YOUR_CRAZYROUTER_API_KEY",
base_url="https://crazyrouter.com/v1"
)
response = client.chat.completions.create(
model="gpt-5-mini",
messages=[
{"role": "user", "content": "Explain API Base URL in one sentence."}
]
)
print(response.choices[0].message.content)
Si necesitas el endpoint regional, cambia únicamente base_url:
client = OpenAI(
api_key="YOUR_CRAZYROUTER_API_KEY",
base_url="https://cn.crazyrouter.com/v1"
)
No es necesario cambiar la clave de API ni el nombre del modelo solo por haber cambiado la ruta del endpoint.
Ejemplo con el SDK de OpenAI para Node.js#
Instala el SDK:
npm install openai
Utiliza baseURL en el cliente:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.CRAZYROUTER_API_KEY,
baseURL: "https://crazyrouter.com/v1",
});
const response = await client.chat.completions.create({
model: "gpt-5-mini",
messages: [
{ role: "user", content: "Give me a one-line API setup checklist." },
],
});
console.log(response.choices[0].message.content);
Para el endpoint regional:
const client = new OpenAI({
apiKey: process.env.CRAZYROUTER_API_KEY,
baseURL: "https://cn.crazyrouter.com/v1",
});
Ejemplo con curl#
Para realizar una prueba HTTP directa, utiliza curl:
curl https://crazyrouter.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_CRAZYROUTER_API_KEY" \
-d '{
"model": "gpt-5-mini",
"messages": [
{"role": "user", "content": "Say hello from an OpenAI-compatible API."}
]
}'
Para el endpoint regional:
curl https://cn.crazyrouter.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_CRAZYROUTER_API_KEY" \
-d '{
"model": "gpt-5-mini",
"messages": [
{"role": "user", "content": "Test the region endpoint."}
]
}'
Variables de entorno#
Algunas herramientas leen la configuración del endpoint desde variables de entorno.
Una configuración habitual es:
export OPENAI_API_KEY="YOUR_CRAZYROUTER_API_KEY"
export OPENAI_BASE_URL="https://crazyrouter.com/v1"
Para el endpoint regional:
export OPENAI_API_KEY="YOUR_CRAZYROUTER_API_KEY"
export OPENAI_BASE_URL="https://cn.crazyrouter.com/v1"
Si una herramienta utiliza OPENAI_API_BASE, OPENAI_BASE_URL, BASE_URL o un campo de la interfaz llamado «Endpoint de API», consulta su documentación. El concepto es el mismo, pero el nombre de la variable puede variar.
Herramientas de tipo Cursor#
Muchas herramientas de programación con IA admiten claves de API o modelos personalizados.
La interfaz concreta cambia con el tiempo, pero la configuración suele seguir este patrón:
- Abre la configuración de modelos/proveedores.
- Elige un proveedor compatible con OpenAI o uno personalizado.
- Pega tu clave de API de Crazyrouter.
- Establece la URL base en
https://crazyrouter.com/v1. - Añade o selecciona el nombre del modelo que quieras utilizar.
- Envía un prompt breve de prueba.
Si la herramienta se utiliza desde una región donde el endpoint global es inestable, utiliza:
https://cn.crazyrouter.com/v1
Este patrón también se aplica a muchos flujos de trabajo con herramientas de tipo Codex, adaptadores de Claude Code, herramientas de tipo Cline y agentes en segundo plano que admiten endpoints compatibles con OpenAI.
Notas de configuración de LiteLLM#
LiteLLM suele utilizarse como SDK local o como capa de proxy para varios proveedores.
Para una ruta compatible con OpenAI, normalmente se configura lo siguiente:
model_list:
- model_name: crazyrouter-gpt-5-mini
litellm_params:
model: openai/gpt-5-mini
api_key: os.environ/CRAZYROUTER_API_KEY
api_base: https://crazyrouter.com/v1
Si utilizas el endpoint regional:
api_base: https://cn.crazyrouter.com/v1
Lo principal es mantener la coherencia entre el endpoint, la clave y el nombre del modelo.
FastGPT, Hermes y otras herramientas con interfaz de usuario#
Herramientas como FastGPT, clientes de tipo Hermes y paneles internos de administración suelen mostrar campos como:
- Clave de API;
- URL base de la API;
- Nombre del modelo;
- Tipo de proveedor;
- Modo compatible con OpenAI.
Utiliza:
API Base URL: https://crazyrouter.com/v1
API Key: your Crazyrouter key
Model: a Crazyrouter-supported model name
Provider type: OpenAI-compatible, if required
Para el enrutamiento regional:
API Base URL: https://cn.crazyrouter.com/v1
Errores comunes con la URL base#
Error 1: falta /v1#
Incorrecto:
https://crazyrouter.com
Correcto para clientes compatibles con OpenAI:
https://crazyrouter.com/v1
Algunas API nativas tienen formatos de endpoint diferentes, pero los SDK compatibles con OpenAI generalmente necesitan /v1.
Error 2: utilizar la clave del proveedor oficial#
Si configuras Crazyrouter como URL base, utiliza una clave de API de Crazyrouter.
Una clave nativa de OpenAI, Anthropic o Google no funcionará automáticamente con el endpoint de una pasarela.
Error 3: utilizar un nombre de modelo que la pasarela no admite#
Si la solicitud llega al servidor, pero falla con un error de modelo, consulta la lista de modelos:
https://crazyrouter.com/models?utm_source=blog&utm_medium=article&utm_campaign=base_url_guide
Utiliza el nombre exacto del modelo que aparece allí.
Error 4: mezclar endpoints globales y regionales durante la depuración#
Si haces pruebas con ambos endpoints, registra cuál produjo el error.
Cuando solicites ayuda a soporte, incluye:
- URL base utilizada;
- nombre del modelo;
- hora de la solicitud;
- código de error;
- cuerpo de la solicitud simplificado;
- si estaba habilitado el streaming.
No compartas tu clave de API completa en un chat público.
Lista de comprobación para resolver problemas#
Antes de contactar con soporte, revisa esta lista.
| Comprobación | Qué verificar |
|---|---|
| URL base | https://crazyrouter.com/v1 o https://cn.crazyrouter.com/v1 |
| Clave de API | La clave procede de tu panel de Crazyrouter |
| Autorización | La cabecera es Authorization: Bearer YOUR_KEY |
| Nombre del modelo | El modelo exacto existe en la lista de modelos |
| Saldo | La cuenta tiene saldo suficiente |
| Ruta de la solicitud | Las solicitudes de chat se envían a /chat/completions a través del SDK |
| Región | Utiliza el endpoint cn si el acceso global es inestable |
| Tamaño del prompt | Reduce el contexto largo durante la depuración |
Próximos pasos#
Una vez que tu URL base funcione, los siguientes pasos útiles son:
- comparar las opciones de modelos en la página de modelos;
- estimar el coste mensual de los tokens;
- probar modelos alternativos para casos de fallo en producción;
- documentar la configuración exacta que utiliza tu equipo.
Enlaces útiles:
- Lista de modelos: https://crazyrouter.com/models?utm_source=blog&utm_medium=article&utm_campaign=base_url_guide
- Calculadora de precios: https://crazyrouter.com/tools/pricing-calculator/?utm_source=blog&utm_medium=article&utm_campaign=base_url_guide
- Comparación de modelos: https://crazyrouter.com/tools/model-comparison/?utm_source=blog&utm_medium=article&utm_campaign=base_url_guide
- Herramienta para flujos de trabajo con agentes en segundo plano: https://crazyrouter.com/tools/background-agent-worktree-launcher/?utm_source=blog&utm_medium=article&utm_campaign=base_url_guide
- Documentación de la API: https://docs.crazyrouter.com
Preguntas frecuentes#
¿Qué es la URL base de una API compatible con OpenAI?#
La URL base de una API compatible con OpenAI es el prefijo de endpoint que utilizan los SDK de tipo OpenAI para enviar solicitudes a un proveedor o una pasarela que implementa el formato de la API de OpenAI.
¿Qué URL base debo utilizar con Crazyrouter?#
Para clientes compatibles con OpenAI, utiliza https://crazyrouter.com/v1. Si necesitas el endpoint regional, utiliza https://cn.crazyrouter.com/v1.
¿Tengo que cambiar mi código al cambiar de modelo?#
Normalmente no. En una configuración compatible con OpenAI, a menudo solo cambias el valor de model y mantienes el mismo SDK, la misma clave de API y la misma URL base.
¿Por qué falla mi URL base personalizada?#
Entre las causas comunes están la falta de /v1, una clave de API incorrecta, un nombre de modelo incorrecto, saldo insuficiente, un modo de proveedor incorrecto o una incompatibilidad entre la región y la red.
¿Puedo utilizar la misma URL base en Cursor, LiteLLM, FastGPT y herramientas de tipo Codex?#
Sí, si la herramienta admite endpoints personalizados compatibles con OpenAI. Utiliza la clave de API de Crazyrouter, establece la URL base y elige el nombre de un modelo admitido.
Implementation Guides
Available in other languages:





