ES ▾
Obtener clave de API

Inicio rápido para usuarios de OpenRouter

Migra tus llamadas a la API de OpenRouter a nuestro endpoint sin censura en minutos cambiando la URL base y la clave de API. Esta guía cubre las integraciones esenciales para generación de texto, streaming y salidas estructuradas.

Empieza con crédito de prueba

Correo y contraseña; la clave aparece al instante en pantalla.

Obtener clave de API

Instalación y configuración

Nuestra API es totalmente compatible con los SDK estándar de OpenAI. Para cambiar de OpenRouter, solo necesitas actualizar dos valores de configuración: el base_url y el api_key. Apunta tu cliente a https://api.openrouterapi.cc/v1 y usa la clave generada en nuestro panel. No se requieren cabeceras personalizadas ni lógica de enrutamiento compleja. El ID del modelo a solicitar es uncensored.

Asegúrate de que la versión de tu SDK soporte el parámetro base_url. Si usas un cliente HTTP en bruto, simplemente actualiza la URL de destino. Esta configuración asegura que tu código de cliente existente funcione sin modificaciones, siempre que solo envíes solicitudes de completado de texto.

Autenticación

La autenticación se maneja mediante la cabecera estándar Authorization. Pasa tu clave de API como un token Bearer. Si la clave no es válida o ha expirado, la API devuelve un error 401. A diferencia de algunos proveedores, no cobramos por las solicitudes fallidas; los errores y rechazos son gratuitos, por lo que puedes probar la autenticación sin consumir crédito.

Cada cuenta admite una clave activa a la vez. Generar una nueva clave invalida inmediatamente la anterior. Mantén tu clave segura y rotarla si sospechas exposición. La clave se muestra inmediatamente después del registro, así que cópiala antes de salir de la página.

Completado básico de chat

La funcionalidad principal es el endpoint POST /v1/chat/completions. Envía tu prompt como una lista de mensajes y recibe una respuesta de texto. El modelo está ajustado para responder sin rechazos de contenido para uso adulto lícito, lo que lo hace adecuado para temas creativos, controvertidos o de investigación de seguridad.

Establece el campo model en uncensored. Puedes controlar el comportamiento usando parámetros como temperature, top_p y stop. La API admite modo JSON a través de response_format y llamadas a funciones a través de tools. Todas las peticiones se procesan de forma asíncrona y recibes la finalización completa una vez que el modelo termina.

Respuestas en streaming

Habilita el streaming estableciendo stream: true en tu petición. La API devuelve Server-Sent Events (SSE) con respuestas parciales. Recibes fragmentos de texto a medida que se generan, lo que permite su visualización en tiempo real en tu aplicación.

La información de uso de tokens se proporciona en el último fragmento del stream. Esto te permite rastrear los costos con precisión sin analizar cada token individual. El streaming es ideal para interfaces de chat donde importa la latencia. Asegúrate de que tu cliente maneje SSE correctamente y cierre la conexión cuando termine el stream.

Llamadas a funciones

La API admite llamadas a funciones a través del parámetro tools. Define tus funciones en la matriz tools y establece tool_choice en auto o en un nombre de función específico. El modelo devolverá argumentos JSON estructurados si se activa una función.

Esta función es útil para integrar el LLM con APIs o bases de datos externas. Asegúrate de que las definiciones de tus funciones sean precisas, ya que el modelo depende de ellas para generar argumentos válidos. La API no ejecuta las funciones; debes manejar la lógica de ejecución en el código de tu aplicación.

Modo JSON

Para salidas estructuradas, usa response_format: {"type": "json_object"}. Esto obliga al modelo a devolver JSON válido, lo cual es esencial para analizar datos en aplicaciones posteriores. El modo JSON suele ser más fiable que las llamadas a funciones para tareas simples de extracción de datos.

Asegúrate de que tus prompts instruyan claramente al modelo para que devuelva JSON. Pueden producirse respuestas JSON inválidas si el prompt es ambiguo. El modo JSON es compatible en los modos estándar y de streaming. Úsalo cuando necesites salidas predecibles y legibles por máquina.

Límites, errores y contexto

La ventana de contexto es de 100.000 tokens para prompt y finalización combinados. La salida máxima es de 32.000 tokens por petición (2.048 si no se establece max_tokens). Los límites de peticiones son de 300 peticiones por minuto y 8 peticiones simultáneas por clave. Los cuerpos de las peticiones están limitados a 8 MB.

Los errores devuelven códigos HTTP estándar: 401 para claves inválidas, 402 para crédito insuficiente y 429 por límites de peticiones. El crédito es prepago, por lo que un error 402 significa que necesitas recargar. Los errores y las denegaciones son gratuitos, así que puedes reintentar sin coste. El filtro estricto de contenido bloquea el contenido sexual que involucra a menores.

cURL

curl https://api.openrouterapi.cc/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.openrouterapi.cc/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.openrouterapi.cc/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

Streaming

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Ficha técnica de la API

Una tabla con cada límite, función y precio.

ElementoValor
Formatocompatible con OpenAI: cualquier SDK de OpenAI funciona cambiando la base URL y la clave
ID del modelouncensored
AutenticaciónAuthorization: Bearer YOUR_KEY
EndpointsPOST /v1/chat/completions · GET /v1/models
Base URLhttps://api.openrouterapi.cc/v1
Streamingsí: server-sent events; el último fragmento incluye el uso de tokens
Llamadas a funcionessí: tools, tool_choice; la respuesta trae tool_calls, también en streaming; resultados como role: tool
Parámetrostemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Ventana de contexto100.000 tokens (entrada + salida)
Salida máximahasta el resto de la ventana de 100.000 tokens; max_tokens opcional (sin límite aparte)
Modo JSONresponse_format: {"type": "json_object"}
Límite de peticiones300 por minuto por clave
Concurrencia8 peticiones a la vez por clave
CabecerasX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Tamaño de peticiónhasta 8 MB
Facturacióncrédito prepago por uso real; errores y rechazos no se cobran
Bono+5 % desde $50, +10 % desde $100
Prueba gratis$0,50 durante 7 días, sin tarjeta · Clave de prueba: 2 solicitudes paralelas, 60 por minuto; límites completos (8 y 300) tras la primera recarga
Caducidadel crédito pagado no caduca, sin suscripción
RecargaUSDT (TRC20) o USDC (Base), cualquier importe entero de $10 a $500
Precio$0,25 por 1M tokens de entrada · $1,00 por 1M de salida
Clavesuna clave activa por cuenta; una nueva reemplaza a la anterior
AccesoGoogle o correo y contraseña
Contenidocontenido adulto permitido; se rechaza el contenido sexual con menores

Errores y qué hacer

Los errores llegan como JSON con un type fijo; las peticiones fallidas o rechazadas no se cobran.

CódigoTipoSignificado
400bad_requestJSON inválido, mensajes vacíos, parámetro incorrecto o contexto demasiado largo
401missing_key · invalid_key · key_revokedfalta la clave, es incorrecta o fue reemplazada
402no_creditsin crédito: recarga y sigue al instante
403content_blockedcontenido sexual con menores: rechazado, no se cobra
404not_foundendpoint desconocido
413request_too_largecuerpo mayor de 8 MB
429rate_limited · concurrencymás de 300/min o 8 en paralelo: espera y reintenta
503upstream_busymodelo ocupado: reintenta en unos segundos

Preguntas y respuestas

¿Es esta la API oficial de OpenRouter?

No, este es un servicio independiente. Ofrecemos un único modelo sin censura compatible con la estructura de URL base de OpenRouter. No servimos los modelos agregados ni la lógica de enrutamiento de OpenRouter.

¿Cómo pago por la API?

Aceptamos pagos solo con criptomonedas: USDT (TRC20) o USDC (Base). Puedes recargar cualquier cantidad entera desde $10 hasta $500. No aceptamos tarjetas de crédito ni PayPal.

¿Se usan los prompts para el entrenamiento?

No, tus prompts no se usan para entrenamiento. Solo requerimos una dirección de correo electrónico para tu cuenta y no almacenamos ni usamos tus datos para mejorar el modelo.

Tu clave está a un formulario de distancia

Crea una cuenta, copia la clave, cambia la URL base. Esa es toda la configuración.

Obtener clave de API