Generar video e imágenes desde tus propias herramientas
Crea una clave, llama a la API con autenticación Bearer y consulta el estado de la tarea hasta que tu resultado esté listo. Funciona con Claude Code, Codex y cualquier cliente HTTP.
Inicio rápido
Paso 1
Crear una clave
Genera una clave de API en tu panel de control. Solo se muestra una vez, así que guárdala en un lugar seguro.
Paso 2
Llamar a la API
Envía una solicitud POST con tu clave Bearer y un encabezado Idempotency-Key.
Paso 3
Consultar el resultado
Consulta el endpoint de estado de la tarea hasta que el estado sea completado o fallido, luego lee la salida.
Autenticación
Cada solicitud se autentica con una clave API Bearer en el encabezado Authorization.
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json
Idempotency-Key: a-unique-id-per-requestSeedance Video
Texto, imagen o contenido multimedia a video.
/api/v1/video/seedanceParámetros
| Parámetro | Tipo | Requerido | Predeterminado | Valores permitidos |
|---|---|---|---|---|
modeGeneration mode. | string | Opcional | text-to-video | text-to-videoimage-to-videomedia-to-video |
quality_tierQuality tier. | string | Opcional | standard | standardpro |
channelRendering channel. | string | Opcional | standard | standardrealwild |
promptText prompt. | string | Obligatorio | — | 3–10000 chars |
aspect_ratioAspect ratio. | string | Opcional | 16:9 | 1:121:94:33:416:99:16 |
durationClip duration. | string | Opcional | 5 | 4–15 (seconds) |
resolutionOutput resolution. | string | Opcional | 720p | 720p1080p |
image_urlStart frame — required for image-to-video. | string (URL) | Opcional | — | public https URL |
end_image_urlOptional end frame. | string (URL) | Opcional | — | public https URL |
media_urlsRequired for media-to-video. | string[] (URL) | Opcional | — | ≤ 12 public https URLs |
generate_audioGenerate an audio track. | boolean | Opcional | true | truefalse |
fixed_lensLock the camera lens. | boolean | Opcional | false | truefalse |
seedNot supported on the real channel. | integer | Opcional | — | -1 – 4294967295 |
Enviar trabajo
curl -X POST https://seedance2ai.io/api/v1/video/seedance \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: demo-video-001" \
-d '{
"mode": "text-to-video",
"quality_tier": "standard",
"prompt": "A cinematic shot of a glass train crossing a snowy mountain bridge",
"aspect_ratio": "16:9",
"duration": "5",
"resolution": "720p"
}'GPT Image 2
Generación de imágenes de alta fidelidad.
/api/v1/image/gpt-image-2Parámetros
| Parámetro | Tipo | Requerido | Predeterminado | Valores permitidos |
|---|---|---|---|---|
typeGeneration type. | string | Obligatorio | — | text-to-imageimage-to-image |
channelGeneration channel. economy is lower-cost with polling-based delivery. | string | Opcional | standard | standardeconomy |
promptText prompt. | string | Obligatorio | — | 3–20000 chars |
resolutionOutput resolution. auto only supports 1K; 1:1 cannot use 4K on the standard channel. | string | Obligatorio | — | 1K2K4K |
aspectRatioAspect ratio. | string | Obligatorio | — | auto1:15:49:1621:916:94:33:24:53:42:32:11:23:11:39:21 |
batchCountNumber of images. | integer | Opcional | 1 | 1–4 |
imageUrlsRequired for image-to-image. | string[] (URL) | Opcional | — | 1–10 public https URLs |
Enviar trabajo
curl -X POST https://seedance2ai.io/api/v1/image/gpt-image-2 \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: demo-gpt-image-001" \
-d '{
"type": "text-to-image",
"prompt": "Editorial product photo of a transparent running shoe on chrome",
"resolution": "1K",
"aspectRatio": "1:1"
}'Nano Banana Pro
Salida de imágenes estilizada y premium.
/api/v1/image/nano-banana-proParámetros
| Parámetro | Tipo | Requerido | Predeterminado | Valores permitidos |
|---|---|---|---|---|
typeGeneration type. | string | Obligatorio | — | text-to-imageimage-to-image |
promptText prompt. | string | Obligatorio | — | 3–10000 chars |
image_sizeAspect ratio. | string | Opcional | auto | 1:19:1616:93:44:33:22:35:44:521:9auto |
output_formatImage format. | string | Opcional | png | pngjpeg |
resolutionOutput resolution. | string | Opcional | 1K | 1K2K4K |
image_urlsRequired for image-to-image. | string[] (URL) | Opcional | — | 1–8 public https URLs |
Enviar trabajo
curl -X POST https://seedance2ai.io/api/v1/image/nano-banana-pro \
-H "Authorization: Bearer $SEEDANCE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: demo-nbp-001" \
-d '{
"type": "text-to-image",
"prompt": "A premium packaging mockup for an AI video studio",
"image_size": "1:1",
"resolution": "1K",
"output_format": "png"
}'Verificar estado de la tarea
Sondea hasta que el estado sea completado o fallido.
curl https://seedance2ai.io/api/v1/tasks/sd2_xxxxx \
-H "Authorization: Bearer $SEEDANCE_API_KEY"{
"id": "sd2_xxxxx",
"status": "completed",
"model": "seedance",
"output": { "video_url": "https://..." },
"credits_used": 30
}Códigos de error
| Código | HTTP | Significado |
|---|---|---|
unauthorized | 401 | Missing, invalid, or revoked API key. |
invalid_request | 400 | Bad input or unsupported field. |
insufficient_credits | 402 | Not enough credits on the balance. |
rate_limited | 429 | Too many requests for this account. |
idempotency_conflict | 409 | Same Idempotency-Key reused with a different body, or still running. |
service_busy | 503 | Temporary upstream or credit-concurrency issue. Retry. |
not_found | 404 | Task does not exist or does not belong to this key owner. |
internal_error | 500 | Unexpected server-side failure. |
Skill
Instala la habilidad Seedance en Claude Code, Codex o cualquier agente — escribe prompts cinematográficos y los renderiza a través de la API por ti.
# Clone into Claude Code's skills folder
git clone https://github.com/tkaptop/seedance-skill ~/.claude/skills/seedanceUsar con Claude Code
Presiona Copiar para que la IA capture el API completo como Markdown limpio, pégalo en Claude Code o Codex, y deja que configure la integración. O apunta el agente directamente al endpoint de texto sin procesar.
Preguntas frecuentes
¿Quién puede usar la API?
Cualquiera con créditos. No hay restricción por plan — cualquier cuenta con créditos puede crear una clave y llamar a la API.
¿Cómo consigo créditos?
Recarga o suscríbete en la página de precios. Los créditos se añaden a tu saldo al instante.
¿Los créditos se comparten entre el sitio web y la API?
Sí — tu saldo de crédito personal se utiliza tanto para la generación web como para las llamadas API. En un equipo, las llamadas API usan el saldo personal de cada miembro, no el fondo compartido del equipo.
¿Cómo empiezo?
Crea una clave de API en tu panel de control, luego llama a los endpoints con un token Bearer (consulta la guía de inicio rápido arriba).
¿Qué pasa si una llamada devuelve insufficient_credits?
Tu saldo está vacío — recarga en la página de precios e inténtalo de nuevo.