ES ▾
Obtener clave de API

Inicio rápido para pipelines de Sora 2

Genera texto sin censura para tus pipelines de video de Sora 2 usando nuestra API compatible con OpenAI. Este inicio rápido cubre la autenticación, peticiones básicas, streaming y llamadas a funciones para poner en marcha tu motor de texto de inmediato.

Autenticación y Base URL

Nuestra API utiliza autenticación estándar compatible con OpenAI. Necesitarás una clave de API desde tu panel y la Base URL https://api.sora2apis.com/v1. Pasa tu clave en el encabezado Authorization como un token Bearer. Esta configuración funciona con cualquier SDK que soporte compatibilidad con OpenAI.

Regístrate para obtener una cuenta y conseguir tu clave. Las nuevas cuentas reciben $0,50 en crédito de prueba gratis durante 7 días, sin necesidad de tarjeta de crédito. Para uso pago, las recargas comienzan en $10. La clave se genera inmediatamente después del registro y puede regenerarse en cualquier momento.

curl https://api.sora2apis.com/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."}]
  }'

Endpoint de Chat Completions

El endpoint principal es POST /v1/chat/completions. Acepta un campo model configurado a uncensored, que es un modelo de pesos abiertos ajustado para responder sin rechazos de contenido para uso adulto lícito. No es GPT, Claude ni ningún otro modelo de proveedor. El modelo tiene una ventana de contexto de 100.000 tokens para tanto el prompt como la respuesta.

Envía tu entrada de texto a través del array messages. La API devuelve texto listo para tu pipeline de generación de video. No hay capacidades de embeddings, audio o generación de video en este endpoint. Es estrictamente entrada de texto, salida de texto.

from openai import OpenAI

client = OpenAI(base_url="https://api.sora2apis.com/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)

Respuestas en streaming (SSE)

Para generación de texto en tiempo real, establece stream: true en tu petición. La API devuelve Server-Sent Events (SSE) que te permiten procesar tokens a medida que se generan. Esto es útil para guiones largos o descripciones donde quieras mostrar el progreso o alimentar datos de forma incremental.

Cada evento SSE contiene un delta parcial de la respuesta. Agrega estos deltas para reconstruir el texto completo. La respuesta en streaming sigue el formato estándar SSE de OpenAI, asegurando compatibilidad con la mayoría de los SDKs modernos. Esto es ideal para la generación de contenido dinámico en tu flujo de trabajo de Sora 2.

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)

Llamadas a funciones y herramientas

La API admite llamadas a funciones y herramientas, permitiéndote definir funciones personalizadas para que las use el modelo. Esto es valioso para la extracción de datos estructurados o la toma de decisiones automatizada dentro de tu pipeline de texto. Define tus herramientas en el array tools y especifica cómo debe responder el modelo.

El modelo devolverá llamadas a herramientas cuando sea apropiado, las cuales puedes ejecutar y retroalimentar en la conversación. Esto permite flujos de trabajo complejos donde el motor de texto puede interactuar con sistemas externos o formatear datos con precisión para tus necesidades de generación de video. Es una característica potente para pipelines avanzados de Sora 2.

Límites de peticiones y uso

Estás limitado a 300 peticiones por minuto por clave. El tamaño máximo del cuerpo de la petición es de 8 MB. Si excedes el límite de peticiones, recibirás un error 429. Asegúrate de que tu aplicación gestione los reintentos de forma adecuada. Cada cuenta tiene una clave de API, que puede regenerarse en cualquier momento, revocando la clave anterior.

La tarifa es $0.25 por cada 1M de tokens de entrada y $1.00 por cada 1M de tokens de salida. Los créditos son prepago y no caducan. Si te quedas sin crédito, recibirás un error 402. Las claves inválidas generan un error 401. Las recargas comienzan en $10, con bonificaciones para montos mayores.

Configuración del modelo

El ID del modelo es siempre uncensored. Es un modelo de pesos abiertos que se ejecuta en nuestros propios servidores GPU, ajustado para contenido adulto lícito sin rechazos. No es GPT, Claude, Gemini, Grok ni DeepSeek. El modelo no genera audio, imágenes ni video. Es estrictamente para generación de texto.

Puedes ajustar parámetros estándar como temperature y max_tokens para controlar la salida. La ventana de contexto es de 100.000 tokens. Esta flexibilidad te permite ajustar finamente la salida de texto para tus necesidades específicas de generación de video de Sora 2. El modelo está diseñado para ser un motor de texto fiable para tu pipeline.

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.sora2apis.com/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);

Funciones y límites

Todos los límites y funciones reales de la API en un solo lugar: revísalos antes de recargar.

ElementoValor
Formatocompatible con OpenAI: cualquier SDK de OpenAI funciona cambiando la base URL y la clave
ID del modelouncensored
EndpointsPOST /v1/chat/completions · GET /v1/models
AutenticaciónAuthorization: Bearer YOUR_KEY
Base URLhttps://api.sora2apis.com/v1
Streamingsí: server-sent events; el último fragmento incluye el uso de tokens
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)
Parámetrostemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Modo JSONresponse_format: {"type": "json_object"}
Llamadas a funcionessí: tools, tool_choice; la respuesta trae tool_calls, también en streaming; resultados como role: tool
Tamaño de peticiónhasta 8 MB
CabecerasX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Concurrencia8 peticiones a la vez por clave
Límite de peticiones300 por minuto por clave
Facturacióncrédito prepago por uso real; errores y rechazos no se cobran
Bono+5 % desde $50, +10 % desde $100
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
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
Clavesuna clave activa por cuenta; una nueva reemplaza a la anterior
Contenidocontenido adulto permitido; se rechaza el contenido sexual con menores
AccesoGoogle o correo y contraseña

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

¿Cuál es el tamaño de la ventana de contexto?

La ventana de contexto es de 100,000 tokens, lo que incluye tanto el prompt como la completion. Esto permite la generación de contenido extenso, adecuado para guiones y descripciones detalladas.

¿Cómo manejo los límites de peticiones?

Estás limitado a 300 peticiones por minuto por clave. Si superas este límite, recibirás un error 429. Implementa un backoff exponencial en tu aplicación para gestionar los reintentos de forma adecuada.

¿El contenido es realmente sin censura?

El modelo no rechaza temas adultos lícitos, ficticios, de investigación de seguridad o controversiales. Sin embargo, el contenido sexual que involucre a menores siempre está bloqueado. Está diseñado para la libertad creativa dentro de los límites legales.

Tu clave está a un formulario de distancia

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

Obtener clave de API