API Crear clave

ByteDanceVideo

Seedance 2.5 final en 1080p

Pasa a 1080p un borrador aprobado de Seedance 2.5.

Precio
593 crpor clip · varía con la duración o el tamaño
Tiempo habitual
≈ 4 min
Id del modelo
video.seedance-2-5-final

Zona de pruebas

Zona de pruebas

Regístrate para ejecutarlo

Cambia los ajustes: el precio y el código se actualizan. Para ejecutarlo necesitas una cuenta.

video.seedance-2-5-final

Aún no hay un ejemplo de este modelo. Estos son sus ajustes reales.

# 1. Crea el trabajo. Se cobra una vez y se reembolsa si falla.
JOB_ID=$(curl -s -X POST https://staglight.ai/api/v1/jobs \
  -H "Authorization: Bearer $STAGLIGHT_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "op": "video.seedance-2-5-final",
    "params": {
      "draft_job_id": "job_your_draft_id"
    }
  }' | jq -r .id)

# 2. Consulta hasta que termine. Cada llamada espera hasta 30 segundos.
while :; do
  JOB=$(curl -s "https://staglight.ai/api/v1/jobs/$JOB_ID?wait=30" -H "Authorization: Bearer $STAGLIGHT_API_KEY")
  case "$(echo "$JOB" | jq -r .status)" in queued|running) ;; *) break ;; esac
done

# 3. Descarga el resultado desde outputs[0].download_url.
DOWNLOAD_URL=$(echo "$JOB" | jq -r '.outputs[0].download_url')
curl -L -o result.mp4 "$DOWNLOAD_URL"
import os, uuid, requests

BASE = "https://staglight.ai/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['STAGLIGHT_API_KEY']}"}

# 1. Crea el trabajo. Se cobra una vez y se reembolsa si falla.
r = requests.post(f"{BASE}/jobs", timeout=60,
                  headers={**HEADERS, "Idempotency-Key": str(uuid.uuid4())},
                  json={
                    "op": "video.seedance-2-5-final",
                    "params": {
                      "draft_job_id": "job_your_draft_id"
                    }
                  })
r.raise_for_status()
job = r.json()

# 2. Consulta hasta que termine. Cada llamada espera hasta 30 segundos.
while job["status"] in ("queued", "running"):
    job = requests.get(f"{BASE}/jobs/{job['id']}", headers=HEADERS,
                       params={"wait": 30}, timeout=60).json()

# 3. Descarga el resultado desde outputs[0].download_url.
print(job["outputs"][0]["download_url"] if job["outputs"] else job["data"] or job["error"])
// Node 18 o posterior. Guárdalo como run.mjs: el await de nivel superior necesita un módulo.
const BASE = "https://staglight.ai/api/v1";
const headers = { Authorization: `Bearer ${process.env.STAGLIGHT_API_KEY}` };

// 1. Crea el trabajo. Se cobra una vez y se reembolsa si falla.
let res = await fetch(`${BASE}/jobs`, {
  method: "POST",
  headers: { ...headers, "Content-Type": "application/json", "Idempotency-Key": crypto.randomUUID() },
  body: JSON.stringify({
    "op": "video.seedance-2-5-final",
    "params": {
      "draft_job_id": "job_your_draft_id"
    }
  }),
});
if (!res.ok) throw new Error((await res.json()).error.message);
let job = await res.json();

// 2. Consulta hasta que termine. Cada llamada espera hasta 30 segundos.
while (job.status === "queued" || job.status === "running") {
  job = await (await fetch(`${BASE}/jobs/${job.id}?wait=30`, { headers })).json();
}

// 3. Descarga el resultado desde outputs[0].download_url.
console.log(job.outputs[0]?.download_url ?? job.data ?? job.error);
{
  "id": "job_19a2b3c4d5e6f7a8b9c0d1",
  "op": "video.seedance-2-5-final",
  "status": "queued",
  "credits": 593,
  "title": "",
  "params": {
    "draft_job_id": "job_your_draft_id"
  },
  "progress": null,
  "outputs": [],
  "data": null,
  "error": null,
  "run_id": null,
  "source": "api",
  "created_at": "2026-11-06T12:00:00Z",
  "finished_at": null,
  "eta_seconds": 240
}

Cuánto cuesta

593 cr con la duración por defecto. El precio depende de la duración de tu texto o archivo, y el precio exacto aparece antes de ejecutar la tarea.

La zona de pruebas muestra el precio exacto de tus ajustes. La tarea se cobra una vez al aceptarla y se reembolsa si falla.

Parámetros

NombreTipoPor defectoValores
draft_job_idobligatorioBorrador aprobado (ID de la toma) string Hasta 64 caracteres

Envíalos dentro de params. Los archivos son ids de POST /api/v1/uploads. Ver la documentación

Más modelos