NezhaGateNezhaGate
← Guías

API de Seedance 2.5: precio, parámetros y código

Seedance 2.5 es el modelo de vídeo de ByteDance que genera hasta 30 segundos en una sola toma, con audio nativo, a partir de un prompt de texto o de hasta 30 imágenes, 10 vídeos y 10 pistas de audio de referencia. En NezhaGate es una API asíncrona al estilo de OpenAI: $0.10 por segundo a 480P, $0.158 a 720P, y un trabajo fallido no cuesta nada.

Actualizado el 2026-10-03

Seedance 2.5 de un vistazo

ByteDance lanzó Seedance 2.5 el 31 de julio de 2026 (ByteDance Seed). Su principal novedad es la duración: hasta 30 segundos en una sola toma, con audio nativo, mientras que Seedance 2.0 se queda en 15. En NezhaGate funciona con la misma clave API que todos los demás modelos.

ID del modeloseedance-2.5
EndpointPOST https://nezhagate.com/v1/videos/generations y luego GET /v1/videos/jobs/{id}
Duracióncualquier número entero de segundos de 4 a 30 (duration)
Resolución480P, 720P (predeterminada); 1080P próximamente
Relación de aspecto16:9 (predeterminada), 9:16, 1:1, 4:3, 3:4 (size)
Referenciashasta 30 imágenes, 10 vídeos (30 s en total) y 10 pistas de audio, en una sola petición
Audiobanda sonora nativa, activada por defecto (audio: false la desactiva)
Prompthasta 11,000 caracteres; el chino y el inglés cuentan igual
Salidaun enlace mp4 en data[0].url, alojado por nosotros y conservado durante 60 días

Precio

Se factura por segundo de vídeo generado. Las imágenes, los vídeos y los audios de referencia no se facturan. Un trabajo fallido o que supera el tiempo límite se reembolsa íntegramente.

ResoluciónPor segundo5 s10 s15 s30 s
480P$0.10$0.50$1.00$1.50$3.00
720P$0.158$0.79$1.58$2.37$4.74

El precio oficial de ByteDance en BytePlus para vídeo 16:9 es de $0.103 por segundo a 480p y $0.231 a 720p: a 720P ahorras un 31%. Un clip fijo de 30 segundos a 720P con seedance-2.5-30s cuesta $1.50. El precio de cada proveedor, lado a lado: comparación de precios de la API de Seedance.

Envía un trabajo y obtén el vídeo

El vídeo es asíncrono: la llamada de envío devuelve al instante HTTP 202 y un id de trabajo; después consultas hasta que status sea succeeded y lees data[0].url. Crea una clave en la consola y guárdala como API_KEY.

curl

curl
# 1) enviar: devuelve {"id": "img_...", "status": "queued"}
curl https://nezhagate.com/v1/videos/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "A lighthouse keeper climbs the spiral stairs at dusk; the lamp flares on and sweeps across a stormy sea. Slow push-in, warm light, film grain.",
    "duration": 10,
    "resolution": "720P",
    "size": "16:9"
  }'

# 2) consulta cada 15 s hasta que "status" sea "succeeded" y luego lee data[0].url
curl https://nezhagate.com/v1/videos/jobs/JOB_ID -H "Authorization: Bearer $API_KEY"

Python

Python
import os
import time

import requests

BASE = "https://nezhagate.com/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["API_KEY"]}

job = requests.post(f"{BASE}/videos/generations", headers=HEADERS, json={
    "model": "seedance-2.5",
    "prompt": "A lighthouse keeper climbs the spiral stairs at dusk; the lamp flares on "
              "and sweeps across a stormy sea. Slow push-in, warm light, film grain.",
    "duration": 10,
    "resolution": "720P",
    "size": "16:9",
}).json()
print("job", job["id"])

while True:
    time.sleep(15)
    r = requests.get(f"{BASE}/videos/jobs/{job['id']}", headers=HEADERS).json()
    if r["status"] == "succeeded":
        print(r["data"][0]["url"])
        break
    if r["status"] == "failed":
        raise SystemExit(r["error"]["message"])   # refunded in full

Node.js

Node.js
const BASE = "https://nezhagate.com/v1";
const headers = { Authorization: `Bearer ${process.env.API_KEY}`, "Content-Type": "application/json" };

const job = await (await fetch(`${BASE}/videos/generations`, {
  method: "POST",
  headers,
  body: JSON.stringify({
    model: "seedance-2.5",
    prompt: "A lighthouse keeper climbs the spiral stairs at dusk; the lamp flares on and sweeps across a stormy sea.",
    duration: 10,
    resolution: "720P",
    size: "16:9",
  }),
})).json();

while (true) {
  await new Promise((ok) => setTimeout(ok, 15000));
  const r = await (await fetch(`${BASE}/videos/jobs/${job.id}`, { headers })).json();
  if (r.status === "succeeded") { console.log(r.data[0].url); break; }
  if (r.status === "failed") throw new Error(r.error.message);
}

Imágenes, vídeos y audio de referencia

Añade las referencias a la misma petición y nómbralas en el prompt por orden: @Image1, @Image2 para images, @Video1 para video_references, @Audio1 para audio_reference. Cada elemento puede ser una URL pública o un data URI en base64 (lo alojamos durante 7 días).

JSON
{
  "model": "seedance-2.5",
  "prompt": "The dancer from @Image1 performs the moves of @Video1 on the rooftop from @Image2, cut to the beat of @Audio1.",
  "images": ["https://example.com/dancer.png", "https://example.com/rooftop.png"],
  "video_references": ["https://example.com/moves.mp4"],
  "audio_reference": ["https://example.com/beat.mp3"],
  "duration": 12,
  "resolution": "720P",
  "size": "9:16"
}

Seedance no tiene modo de primer fotograma: cada imagen es una referencia de un personaje, un objeto, un lugar o un estilo, así que no se garantiza que una imagen de referencia abra el clip. Nombra cada referencia en el prompt y di qué hay que conservar de ella.

Límites que hacen fallar una petición

Cada uno de estos casos devuelve un error legible, y un trabajo que falla después del envío se reembolsa íntegramente.

Cuánto tarda un render

5.8 minTiempo mediano de render en trabajos reales de clientes de los últimos 7 días
9.8 minEl 90% de los trabajos termina en este tiempo o menos
86.5%Tasa de éxito en esos mismos días

Se cuentan las peticiones reales de clientes. No se cuentan nuestras propias pruebas, las peticiones rechazadas por errores del cliente (4xx) ni el contenido que el modelo se negó a generar. Las llamadas fallidas nunca se cobran. Se actualiza cada 10 minutos.

Los clips más largos y de mayor resolución tardan más, y también las horas de más carga. Guarda el id del trabajo y consúltalo; no lo reenvíes, porque cada envío es un trabajo nuevo de pago. Un render que no termina a tiempo acaba como fallido, con el motivo en error, y se reembolsa íntegramente.

Preguntas frecuentes

¿Cuánto cuesta la API de Seedance 2.5?
En NezhaGate, $0.10 por segundo a 480P y $0.158 por segundo a 720P, para cualquier duración de 4 a 30 segundos. Un clip de 5 segundos a 720P cuesta $0.79 y uno de 30 segundos, $4.74; el modelo de 30 segundos fijos, seedance-2.5-30s, cuesta $1.50 por clip.
¿Cuánto puede durar un vídeo de Seedance 2.5?
Cualquier número entero de segundos de 4 a 30 en una sola generación. Indica duration (o seconds) en la petición; el clip se factura exactamente por esos segundos.
¿Seedance 2.5 admite imagen a vídeo?
Sí, mediante imágenes de referencia: envía hasta 30 imágenes y nómbralas en el prompt como @Image1, @Image2, etc. Seedance trata cada imagen como referencia de personajes, objetos, escenas o estilo; no hay modo de primer fotograma, así que no se garantiza que una imagen sea el fotograma inicial.
¿Puedo usar un vídeo o un audio de referencia?
Sí. Hasta 10 vídeos de referencia (30 segundos en total) y hasta 10 pistas de audio de referencia, junto con imágenes de referencia en la misma petición; nómbralos como @Video1 y @Audio1. En NezhaGate, los vídeos de referencia no se facturan: solo pagas los segundos que generas.
¿Cuánto tarda un render de Seedance 2.5?
Normalmente unos minutos, y más cuando el backend está ocupado. Envía el trabajo, guarda el id y consúltalo; no lo reenvíes, porque cada envío es un trabajo nuevo de pago. Si un trabajo falla o supera el tiempo límite, se reembolsa íntegramente.
¿Está disponible 1080P?
Todavía no en NezhaGate: hoy están disponibles 480P y 720P, y 1080P llegará próximamente.
Pruébalo en NezhaGate

La misma clave compatible con OpenAI sirve para todos los demás modelos de chat, imagen y vídeo de NezhaGate. Pago por uso; los trabajos fallidos se reembolsan por completo.

Obtener clave API Probar en el Playground Comparar proveedores

Más guías: Seedance: vídeos de 30 segundos, precio y código