Una API para todos los modelos de vídeo con IA
Si conoces OpenRouter para modelos de lenguaje, Revana es la misma idea para la generación de vídeo e imagen: una clave de API, un formato de solicitud y un saldo prepago para Seedance, Veo, Kling, Wan, Nano Banana Pro, GPT Image 2 y el resto del catálogo, con respaldo automático cuando falla una ruta de origen.
El problema de llamar a cada modelo directamente
Cada creador de modelos tiene su propia API, con su propia cuenta, claves, formato de solicitud, flujo de estados de los trabajos y facturación. Integrar tres de ellas significa tres integraciones que mantener, tres saldos que recargar y tres conjuntos de códigos de error que gestionar. Algunos modelos los ofrecen varias plataformas a precios distintos, con límites diferentes y una capacidad que va y viene.
El coste aparece cuando quieres probar un modelo nuevo, algo que en 2026 ocurre cada pocos meses. Cada modelo nuevo supone otra integración antes de que puedas siquiera ver si encaja con tu producto.
Cómo funciona Revana
- Una clave. Regístrate y crea una clave de API en el panel. Funciona con todos los modelos del catálogo.
- Una solicitud. Envía
POST /v1/generationscon un id demodely un objetoinput. Los nombres de los campos son los mismos para todos los modelos:prompt,image_url,end_image_url,image_urls,resolution,duration,aspect_ratioyaudio. - Un precio antes de que se ejecute nada. El precio del trabajo sale del catálogo y se retiene de tu saldo prepago. Un campo o valor que el modelo no admite se rechaza con un
422antes de cobrar nada. También puedes establecermax_cost_usdcomo tope. - Enrutamiento. El enrutador envía el trabajo a la ruta más barata para ese modelo. Si la ruta falla o agota el tiempo, el trabajo pasa a la siguiente.
- Un solo formato de resultado. Consulta
GET /v1/generations/{id}. Cuando el estado essucceeded, los archivos están enoutput.urlsy el cargo encost_usd. Si el trabajo falla, se libera la retención.
Los trabajos son asíncronos: las imágenes suelen tardar segundos, y el vídeo, de menos de un minuto a varios minutos. La documentación tiene la referencia completa de campos y los códigos de error.
La misma solicitud en tres modelos
Como el formato de solicitud es común, comparar modelos es un bucle. Este script envía un prompt a Seedance 2.0, Veo 3.1 Fast y Wan 3.0, y luego muestra cada resultado y su coste. Cada modelo conserva sus propias opciones, así que elige valores que acepten los tres; aquí son 720p, 8 segundos y 16:9.
import os
import time
import requests
API = "https://api.revana.si/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['REVANA_API_KEY']}"}
PROMPT = (
"A paper boat sails down a rain-soaked street gutter at dusk, "
"neon signs reflected in the water. Rain, distant traffic."
)
MODELS = ["seedance-2.0", "veo-3.1-fast", "wan-3.0"]
# Submit the same job to every model; each call returns 202 with an id.
jobs = {}
for model in MODELS:
resp = requests.post(f"{API}/generations", headers=HEADERS, json={
"model": model,
"input": {
"prompt": PROMPT,
"resolution": "720p",
"duration": 8,
"aspect_ratio": "16:9",
"audio": True,
},
"max_cost_usd": 1.5,
})
resp.raise_for_status()
jobs[model] = resp.json()["id"]
# Poll each job until it finishes.
for model, job_id in jobs.items():
while True:
job = requests.get(f"{API}/generations/{job_id}", headers=HEADERS).json()
if job["status"] in ("succeeded", "failed"):
break
time.sleep(5)
if job["status"] == "succeeded":
print(model, job["output"]["urls"][0], job["cost_usd"])
else:
print(model, "failed:", job["error"])Con los precios del catálogo de octubre de 2026, los tres trabajos cuestan:
| Modelo | Solicitud | Precio |
|---|---|---|
| Seedance 2.0 | 720p, 8 s, sonido incluido en la tarifa | $1.20 |
| Veo 3.1 Fast | 720p, 8 s, con sonido (con precio aparte) | $0.80 |
| Wan 3.0 | 720p, 8 s, sonido incluido en la tarifa | $0.72 |
El max_cost_usd de 1.5 cubre los tres. Un trabajo que costaría más que su tope no se ejecuta.
Respaldo entre rutas
Una ruta es una fuente de capacidad de origen para un modelo. Muchos modelos de Revana tienen más de una, y el enrutador las usa en orden:
- Primero la más barata. Cada trabajo va a la ruta de menor coste que acepta sus opciones.
- La siguiente si falla. Si esa ruta falla o agota el tiempo, el trabajo pasa automáticamente a la siguiente ruta. El campo
attemptsindica cuántas se probaron. - Mismo modelo, mismo precio. Todas las rutas sirven el modelo que pediste, al precio listado. El enrutador nunca lo cambia por otro modelo.
- Un solo cargo. Solo se cobra la ruta que tiene éxito. Si todas las rutas fallan, el trabajo termina como
failedy no cuesta nada.
| Modelo | Tipo | Rutas |
|---|---|---|
| Seedance 2.5 | video | cinco rutas |
| Seedance 2.0 | video | tres rutas |
| Kling 3.0 | video | dos rutas |
| Veo 3.1 Fast | video | dos rutas |
| Veo 3.1 | video | dos rutas |
| Wan 3.0 | video | tres rutas |
| Nano Banana Pro | image | una ruta |
| GPT Image 2 | image | dos rutas |
Un modelo con una sola ruta no puede recurrir a otra. El respaldo aumenta la probabilidad de que un trabajo se complete, pero no es una garantía de disponibilidad: gestiona los trabajos failed en tu código, por ejemplo reintentando más tarde o cambiando tú mismo a otro modelo.
Precios y créditos
Revana funciona con pago por uso. No hay suscripción, ni puestos, ni mínimo mensual: compras crédito prepago en paquetes de $10, $50, $100, $500, $1,000 o $5,000 y lo gastas en cualquier modelo a su precio listado.
- La mayoría de los modelos de vídeo tienen precio por segundo de salida, según la resolución y, en algunos modelos, según si el sonido está activado.
- Los modelos de imagen tienen precio por imagen, según el tamaño.
- El precio se retiene al enviar, se cobra cuando el trabajo termina con éxito y se libera cuando falla.
La página de precios lista los precios de cada modelo. Nuestras guías muestran lo que cuestan los trabajos habituales con Seedance 2.0, Veo 3.1 y Kling 3.0.
Lee el catálogo desde código
El catálogo completo es un archivo JSON público en https://revana.si/data/models.json. Los campos principales de cada modelo:
| Campo | Qué contiene |
|---|---|
id | la cadena que se envía como model |
name, maker | el nombre visible y la empresa que hace el modelo |
kind | video or image |
tasks | lo que acepta el modelo, como text_to_video o image_to_video |
options | resoluciones, relaciones de aspecto, duraciones, sonido y el límite de imágenes de entrada |
price | la unidad (por segundo, por imagen o por trabajo) y el precio de cada opción |
routes | cuántas rutas sirven el modelo |
Por ejemplo, para listar todos los modelos que pueden crear un vídeo a partir de texto:
# Every model that can make a video from a text prompt
curl -s https://revana.si/data/models.json \
| jq -r '.models[] | select(any(.tasks[]; . == "text_to_video")) | .id'Úsalo para crear un selector de modelos, comprobar las opciones antes de enviar o estimar el precio de un trabajo en tu propia interfaz. Los mismos datos alimentan la página de modelos.
Qué debes saber antes de cambiarte
- Las opciones difieren según el modelo. Los nombres de los campos son comunes, pero cada modelo acepta sus propios valores. Kling 3.0, por ejemplo, no lista ninguna opción de relación de aspecto. Revisa la página del modelo antes de cambiar la cadena
model. - Los enlaces de salida caducan. Descarga los archivos terminados y guárdalos en tu propio almacenamiento.
- El modelo lo eliges tú. El enrutamiento cambia dónde se ejecuta un trabajo, nunca qué modelo lo ejecuta. Recurrir a un modelo distinto es una decisión de tu código.
- Los precios pueden cambiar. El catálogo siempre muestra los precios actuales, y el precio de cada trabajo queda fijado al enviarlo.
¿Listo para probarlo? Obtén una clave de API, explora los modelos o empieza con el inicio rápido.
Preguntas frecuentes
¿Hay una sola API para todos los modelos de vídeo con IA?
Revana te da una clave de API, un formato de solicitud y un saldo prepago para los principales modelos de vídeo e imagen, incluidos Seedance, Veo, Kling, Wan, Hailuo, Grok Imagine, Nano Banana y GPT Image. Cada modelo conserva sus propias opciones y su precio.
¿En qué se parece Revana a OpenRouter?
OpenRouter ofrece a los desarrolladores una sola API para muchos modelos de lenguaje. Revana hace lo mismo con los modelos de generación de vídeo e imagen: una clave, un saldo y enrutamiento entre varias fuentes de capacidad para el mismo modelo.
¿Qué pasa cuando falla una ruta de origen?
Si el modelo tiene más de una ruta, el enrutador pasa el trabajo a la siguiente ruta al mismo precio listado. Si todas las rutas fallan, el trabajo termina como fallido y se libera el importe retenido.
¿Revana cambiará a otro modelo si el mío no está disponible?
No. El enrutador cambia la ruta, nunca el modelo. Si quieres recurrir a otro modelo, hazlo en tu código enviando una nueva solicitud con un id de modelo distinto.
¿Cómo funciona la facturación?
Compras crédito prepago en paquetes de $10 a $5,000, sin suscripción. Cada trabajo tiene su precio en el catálogo, se retiene al enviarlo y solo se cobra si termina con éxito.
¿Cómo obtengo en código la lista de modelos y precios?
Descarga https://revana.si/data/models.json. Lista todos los modelos con su id, creador, tareas, opciones, precios y número de rutas.
Una clave para todo el catálogo
Crea una clave, añade crédito prepago y llama a cualquier modelo de vídeo o imagen con la misma solicitud.