Primera petición en cinco minutos
Actualiza tu URL base y clave de API para enrutar las peticiones a nuestro endpoint sin censura. La interfaz compatible con OpenAI significa que tu código de cliente existente funciona sin cambios de lógica.
URL base y autenticación
Reemplaza tu URL base estándar de OpenAI por https://api.mistralapi.cc/v1. Debes incluir tu clave de API en el encabezado Authorization como token Bearer. Este es el único cambio de configuración necesario para cambiar tu cliente a nuestro servicio sin censura. Puedes generar una clave a través de la página Obtener clave de API usando Google o correo electrónico. Mantén tu clave segura; proporciona acceso a tu crédito prepago.
Enviar una chat completion
Realiza una petición estándar POST /v1/chat/completions. Establece el modelo en uncensored. La API acepta entrada de texto y devuelve salida de texto. No admite imágenes, audio ni embeddings. Puedes controlar el comportamiento usando parámetros como temperature, top_p, stop, seed y penalizaciones. Las peticiones que superen los límites o fallen la autenticación no consumen crédito.
curl https://api.mistralapi.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."}]
}'
Integración con SDK de Python
Usa el paquete oficial de Python openai. Inicializa el cliente con la nueva URL base y tu clave. Llama a chat.completions.create() con el ID del modelo uncensored. Este enfoque funciona para cualquier biblioteca de cliente compatible con OpenAI. El servicio está diseñado para desarrolladores que prefieren una facturación simple de tokens prepago frente a suscripciones complejas.
from openai import OpenAI
client = OpenAI(base_url="https://api.mistralapi.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)
Integración con SDK de Node.js
Inicializa el SDK de OpenAI para Node.js con la URL base personalizada. Pasa tu clave de API en las opciones. Usa el método chat.completions.create() con el modelo uncensored. Esto te permite mantener tu lógica existente de TypeScript o JavaScript intacta mientras accedes a un modelo sin censura que no rechaza temas adultos legales o controvertidos.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.mistralapi.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);
Respuestas en streaming
Habilita el streaming estableciendo stream: true. La API devuelve fragmentos mediante Server-Sent Events (SSE). Las estadísticas de uso de tokens se incluyen en el último fragmento del stream. Esto te permite mostrar la salida en tiempo real sin esperar a la respuesta completa. Puedes analizar el stream para actualizar tu interfaz de usuario de forma progresiva.
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)
Límites de peticiones y ventana de contexto
Cada clave de API tiene un límite de 300 peticiones por minuto y 8 peticiones simultáneas. El cuerpo de la petición no debe superar los 8 MB. La ventana de contexto es de 100,000 tokens en total, incluyendo el prompt y la respuesta. La salida máxima por petición es de 32,000 tokens (2,048 si max_tokens no está configurado). Si tu clave no tiene suficiente crédito, la petición fallará. Se producen errores de autenticación si la clave no es válida o ha sido eliminada. Los límites de peticiones devuelven errores HTTP 429 estándar cuando se exceden.
Preguntas y respuestas
¿La API admite llamadas a funciones?
Sí, puedes usar los parámetros <code>tools</code> y <code>tool_choice</code> en tus peticiones de chat completion. El modelo admite salidas estructuradas mediante <code>response_format: json_object</code> para una generación fiable de JSON.
¿Qué ocurre si supero el límite de peticiones?
Las peticiones que superen el límite de 300 por minuto u 8 concurrentes por clave fallarán. Estos errores no consumen tu crédito prepago. Puedes generar una nueva clave para reemplazar la antigua, lo que restablece tus límites.
¿El modelo sin censura es igual que Grok o Llama?
No. Es un modelo de pesos abiertos ejecutado en nuestros propios servidores, ajustado para responder sin rechazos de contenido. No es GPT, Claude, Gemini, Grok, DeepSeek, Qwen ni Llama. Es un modelo distinto servido a través de una interfaz compatible con OpenAI.
Tu clave está a un formulario de distancia
Crea una cuenta, copia la clave, cambia la URL base. Eso es toda la configuración.
Ficha técnica de la API
Todos los límites y funciones reales de la API en un solo lugar: revísalos antes de recargar.
| Elemento | Valor |
|---|---|
| Formato | compatible con OpenAI: cualquier SDK de OpenAI funciona cambiando la base URL y la clave |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| ID del modelo | uncensored |
| Base URL | https://api.mistralapi.cc/v1 |
| Autenticación | Authorization: Bearer YOUR_KEY |
| Ventana de contexto | 100.000 tokens (entrada + salida) |
| Streaming | sí: server-sent events; el último fragmento incluye el uso de tokens |
| Llamadas a funciones | sí: tools, tool_choice; la respuesta trae tool_calls, también en streaming; resultados como role: tool |
| Salida máxima | hasta el resto de la ventana de 100.000 tokens; max_tokens opcional (sin límite aparte) |
| Parámetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Modo JSON | response_format: {"type": "json_object"} |
| Concurrencia | 8 peticiones a la vez por clave |
| Límite de peticiones | 300 por minuto por clave |
| Tamaño de petición | hasta 8 MB |
| Cabeceras | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Facturación | crédito prepago por uso real; errores y rechazos no se cobran |
| Bono | +5 % desde $50, +10 % desde $100 |
| Precio | $0,25 por 1M tokens de entrada · $1,00 por 1M de salida |
| 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 |
| Recarga | USDT (TRC20) o USDC (Base), cualquier importe entero de $10 a $500 |
| Caducidad | el crédito pagado no caduca, sin suscripción |
| Claves | una clave activa por cuenta; una nueva reemplaza a la anterior |
| Contenido | contenido adulto permitido; se rechaza el contenido sexual con menores |
| Acceso | Google o correo y contraseña |
Códigos de error
Los errores llegan como JSON con un type fijo; las peticiones fallidas o rechazadas no se cobran.
| Código | Tipo | Significado |
|---|---|---|
400 | bad_request | JSON inválido, mensajes vacíos, parámetro incorrecto o contexto demasiado largo |
401 | missing_key · invalid_key · key_revoked | falta la clave, es incorrecta o fue reemplazada |
402 | no_credit | sin crédito: recarga y sigue al instante |
403 | content_blocked | contenido sexual con menores: rechazado, no se cobra |
404 | not_found | endpoint desconocido |
413 | request_too_large | cuerpo mayor de 8 MB |
429 | rate_limited · concurrency | más de 300/min o 8 en paralelo: espera y reintenta |
503 | upstream_busy | modelo ocupado: reintenta en unos segundos |