Respuesta directa: puedes usar Seedance 2.5 a través de la API de Yovid con una sola clave. Envía POST https://yovid.ai/v1/videos/generations con "model": "seedance-2.5" y un prompt, luego consulta GET /v1/tasks/{task_id} hasta que el estado sea completed y lee output.video_url. Los clips duran de 4 a 30 segundos, y una solicitud puede llevar hasta 30 imágenes, 10 videos y 10 archivos de audio como referencias. La facturación usa los mismos créditos de Yovid que la web, y los créditos solo se descuentan cuando una tarea termina con éxito.
Índice
- De dónde viene el acceso a la API de Seedance 2.5
- Inicio rápido en cuatro pasos
- Parámetros de la solicitud
- Cómo elige la API el modo de generación
- Límites de referencias y archivos
- Cuánto cuesta una solicitud
- Errores, reintentos y límites de frecuencia
- Un ejemplo completo en Python
- Preguntas frecuentes
De dónde viene el acceso a la API de Seedance 2.5
Seedance 2.5 es el modelo de ByteDance Seed. La vía para desarrolladores de la propia ByteDance pasa por sus plataformas en la nube: su anuncio de lanzamiento del 31 de julio de 2026 decía que el acceso por API llegaría a través de BytePlus ModelArk; según informaciones de prensa, Volcano Engine abrió el acceso por API en China el 7 de agosto, y la página de Seedance 2.5 de ByteDance enlaza al playground de BytePlus.
Yovid es una plataforma independiente, sin relación con ByteDance, y ofrece Seedance 2.5 a través de su propia API:
- Una clave, una factura. La misma clave y los mismos créditos sirven para Seedance 2.5, 2.0, 2.0 Fast, 2.0 Mini, 1.5 Pro y 1.0 Pro Fast.
- IDs públicos estables. Envías
seedance-2.5; Yovid mantiene internos los nombres de modelo del proveedor para que puedan cambiar sin romper tu código. - La misma cuenta que en la web. Los clips que generas por la API usan el plan y los créditos que ya tienes.
La referencia completa está en la documentación de la API de Yovid; esta guía se centra en lo que es específico de Seedance 2.5.
Inicio rápido en cuatro pasos
1. Crea una clave de API
Abre Configuración → Claves de API, ponle nombre a la clave y créala. La clave secreta completa se muestra una sola vez, así que guárdala en un gestor de secretos y cárgala en tu servidor como YOVID_API_KEY. Nunca la pongas en código de navegador ni de apps móviles.
2. Crea una tarea
curl https://yovid.ai/v1/videos/generations \
-H "Authorization: Bearer $YOVID_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.5",
"prompt": "A lighthouse keeper climbs a spiral staircase with a lantern, reaches the lamp room as a storm rolls in, and lights the great lamp. Wind howling, boots on iron steps.",
"duration": 10,
"quality": "720p",
"aspect_ratio": "16:9",
"generate_audio": true
}'{
"task_id": "vid_01JZK7R7KCYQ3T9F33A7K0J6XB",
"status": "pending",
"created_at": "2026-10-22T08:30:00.000Z"
}3. Consulta la tarea
curl https://yovid.ai/v1/tasks/vid_01JZK7R7KCYQ3T9F33A7K0J6XB \
-H "Authorization: Bearer $YOVID_API_KEY"Consulta cada 5 a 10 segundos mientras el estado sea pending o processing, y ve espaciando las consultas. Cuando cambie a completed, la URL del video estará en output.video_url; si cambia a failed, deja de consultar y lee error.
4. Comprueba tus créditos
curl https://yovid.ai/v1/credits \
-H "Authorization: Bearer $YOVID_API_KEY"available es lo que puede usar una tarea nueva; reserved es lo que queda retenido para las tareas que aún se están ejecutando.
Parámetros de la solicitud
| Campo | Tipo | Notas para Seedance 2.5 |
|---|---|---|
model | string | seedance-2.5 |
prompt | string | Obligatorio. Funcionan los tramos de tiempo, los diálogos entre comillas y las referencias tipo @image1 |
duration | integer | De 4 a 30 segundos |
quality | string | La documentación indica 480p y 720p para Seedance 2.5 |
aspect_ratio | string | 16:9, 9:16, 1:1, 4:3, 3:4, 21:9 o adaptive |
generate_audio | boolean | Sonido, diálogos y efectos en la misma pasada |
image_urls | array | Hasta 30 URL públicas HTTPS de imágenes |
video_urls | array | Hasta 10 URL públicas HTTPS de videos |
audio_urls | array | Hasta 10 URL públicas HTTPS de archivos MP3 o WAV |
reference_mode | boolean | Trata una o dos imágenes como referencias en lugar de como primer y último fotograma |
output_format | string | mp4 (por defecto) o mov |
content_filter | boolean | Filtro opcional, activado por defecto; false aplica una tarifa de 1,1× |
web_search | boolean | Solo para solicitudes de texto a video |
La API comprueba cada valor según el modelo y tu plan antes de crear una tarea, y devuelve un 403 o un 422 con el campo problemático en param si algo no está permitido. Si partes de un fotograma, la salida sigue la forma de esa imagen.
Cómo elige la API el modo de generación
Nunca envías un modo del proveedor. Yovid lo elige según los archivos que adjuntes:
| Lo que envías | Modo |
|---|---|
| Ningún archivo | Texto a video |
| Una imagen | Imagen a video; la imagen es el primer fotograma |
| Dos imágenes | Primer y último fotograma |
| Tres o más imágenes | Referencia a video |
| Cualquier video | Referencia a video |
| Cualquier audio | Referencia a video |
Una o dos imágenes más "reference_mode": true | Referencia a video |
En el modo de referencia, nombra los archivos en el prompt según su orden en cada array: @image1, @image2, @video1, @audio1. Una solicitud con referencias tiene este aspecto:
{
"model": "seedance-2.5",
"prompt": "@image1 is the main character. @image2 is the ceramic mug she holds; keep its shape and logo. @image3 is the kitchen. She walks into the kitchen, pours coffee into the mug and turns to the window. Use @audio1 as her voice: she says, \"Finally, Saturday.\"",
"image_urls": [
"https://example.com/character.jpg",
"https://example.com/mug.jpg",
"https://example.com/kitchen.jpg"
],
"audio_urls": ["https://example.com/voice-sample.mp3"],
"duration": 12,
"quality": "720p"
}Las referencias de audio son una función de la API: el generador de la web admite imágenes y videos, mientras que la API añade hasta 10 archivos de audio para una voz, una pista o un ritmo.
Límites de referencias y archivos
Según la página de modelos y entradas de la documentación de la API:
| Archivo | Formatos | Límites |
|---|---|---|
| Imágenes | JPEG, PNG, WebP | Hasta 30; de 300 a 6000 px por lado; relación de aspecto de 0,4 a 2,5; hasta 30 MB cada una |
| Videos | MP4, MOV | Hasta 10; de 2 a 30 s cada uno y 30 s en total; de 24 a 60 FPS; hasta 200 MB cada uno |
| Audio | MP3, WAV | Hasta 10; de 2 a 30 s cada uno y 30 s en total; hasta 15 MB cada uno |
Todos los archivos deben ser URL públicas HTTPS. Yovid rechaza localhost, direcciones de redes privadas, URL con credenciales incrustadas y nombres de host que no puede resolver. Usa URL en lugar de Base64; el proveedor limita cada cuerpo de solicitud a 64 MB.
Cuánto cuesta una solicitud
La API cobra en los mismos créditos que la web, con las mismas tarifas. Con la tarifa base de los paquetes de créditos, Seedance 2.5 cuesta unos 3 créditos por segundo en 480p y unos 6,1 en 720p, así que un clip de 10 segundos en 720p cuesta unos 61 créditos y uno de 30 segundos, unos 183. Los suscriptores pagan menos por segundo.
- Los videos de referencia se cobran por la duración del clip de referencia más la de la salida, a una tarifa más baja: unos 2,1 créditos por segundo en 480p y 4,6 en 720p.
- Desactivar
content_filtermultiplica el costo por 1,1. - Primero reserva, luego descuento. Los créditos se reservan al crear la tarea y solo se descuentan si se completa; una tarea fallida los devuelve.
- Acceso por plan. Seedance 2.5 requiere un plan de pago o un paquete de créditos de pago único. Una cuenta gratuita recibe
403 plan_upgrade_required.
La tarea completada indica lo que ha consumido en credits_used. Consulta la página de precios para ver planes y paquetes, y el artículo sobre si Seedance 2.5 es gratis para conocer la forma más barata de empezar.
Errores, reintentos y límites de frecuencia
| Estado | Significado | ¿Reintentar? |
|---|---|---|
401 | Clave ausente, no válida o revocada | No, sustituye la clave |
402 | No hay suficientes créditos disponibles | No, añade créditos |
403 | El modelo o la calidad requieren un plan superior | No, cambia la entrada o el plan |
422 | Parámetro no válido, modelo no disponible o prompt bloqueado | No, corrige la solicitud |
429 | Se alcanzó el límite de frecuencia o de tareas simultáneas | Sí, con espera progresiva (backoff) |
500, 502, 503 | Problema del servidor, del proveedor o de moderación | Sí, tras una espera |
Cada clave admite hasta 120 solicitudes por minuto, y las consultas de estado cuentan para ese límite. El endpoint de creación todavía no admite claves de idempotencia, así que no reintentes un POST automáticamente si no sabes si el primero tuvo éxito: podría crear una segunda tarea y reservar créditos dos veces. Guarda cada task_id que recibas.
Un ejemplo completo en Python
import os
import time
import requests
API = "https://yovid.ai"
HEADERS = {"Authorization": f"Bearer {os.environ['YOVID_API_KEY']}"}
create = requests.post(
f"{API}/v1/videos/generations",
headers=HEADERS,
json={
"model": "seedance-2.5",
"prompt": (
"0-10s: a courier in a yellow rain jacket runs out of a subway exit into a night street. "
"10-20s: she weaves between umbrellas as a taxi brakes. "
"20-30s: she stops at a door and knocks twice. Rain and traffic, no music."
),
"duration": 30,
"quality": "720p",
"aspect_ratio": "16:9",
},
timeout=30,
)
create.raise_for_status()
task_id = create.json()["task_id"]
delay = 5
while True:
task = requests.get(f"{API}/v1/tasks/{task_id}", headers=HEADERS, timeout=30)
task.raise_for_status()
data = task.json()
if data["status"] == "completed":
print(data["output"]["video_url"], data["credits_used"])
break
if data["status"] == "failed":
raise RuntimeError(data["error"])
time.sleep(delay)
delay = min(delay * 1.5, 30)El prompt usa tramos de tiempo, que es la forma más fiable de llenar un clip de 30 segundos. La guía de prompts de Seedance 2.5 tiene 13 prompts que puedes enviar tal cual, y las comparativas con Kling 3.0, Veo 3.1 y Seedance 2.0 te ayudan a elegir a qué ID de modelo llamar.
Preguntas frecuentes
¿Existe una API oficial de Seedance 2.5?
ByteDance ofrece Seedance 2.5 a los desarrolladores a través de sus plataformas en la nube, Volcano Engine y BytePlus. La API de Yovid es una alternativa independiente: una sola clave y un solo saldo de créditos para Seedance 2.5 y los demás modelos Seedance.
¿Cuál es el ID de modelo de Seedance 2.5 en Yovid?
seedance-2.5. Otros IDs públicos son seedance-2.0, seedance-2.0-fast, seedance-2.0-mini, seedance-1.5-pro y seedance-1.0-pro-fast.
¿Cuánto puede durar un video de Seedance 2.5 generado por la API?
De 4 a 30 segundos por tarea, según el valor de duration.
¿Qué resoluciones admite la API de Seedance 2.5?
La documentación de la API indica 480p y 720p para seedance-2.5. Tu plan también fija un límite, y la API devuelve un 403 antes de crear la tarea si la calidad lo supera.
¿Puedo enviar audio como referencia?
Sí, hasta 10 archivos MP3 o WAV en audio_urls, que se nombran en el prompt como @audio1, @audio2, etc. Las referencias de audio solo están disponibles a través de la API.
¿Una tarea fallida consume créditos?
No. Los créditos se reservan al crear la tarea y solo se descuentan cuando se completa con éxito.
¿Cuántas solicitudes puedo hacer?
Hasta 120 solicitudes por minuto por clave, consultas de estado incluidas, más un límite de tareas simultáneas que depende de tu plan. Una respuesta 429 significa que debes esperar y reintentar con espera progresiva.
¿Quieres empezar a construir? Crea una clave en Configuración → Claves de API y sigue el inicio rápido de la API.




