Documentación de API Hop
Generación de vídeo Seedance 2.5
Contenido multimodal, audio generado y parámetros de reutilización de tareas de muestra de Seedance 2.5.
https://api.apihop.ai/v1/video/seedanceCrea una tarea asíncrona de Seedance 2.5. Para Seedance 2.0, usa su referencia de parámetros independiente.
Autenticación
Authorization: Bearer YOUR_API_KEY
Content-Type: application/jsonCuerpo
modelstringobligatorioseedance-2.5.
promptstringInstrucción de vídeo. Obligatoria para generar solo con texto; puede omitirse o estar vacía si hay referencias de imagen/vídeo. Omítela al reutilizar draft_task. Los elementos de texto de metadata.content se descartan; prevalece prompt de nivel superior.
durationnumberPredeterminado: 5Entero de 4 a 30, o -1 para duración automática. El campo nativo seconds acepta la cadena entera equivalente. También se admite metadata.duration. Los alias de duración proporcionados deben coincidir. Omite todos los controles de duración al reutilizar draft_task.
resolutionstringPredeterminado: 720p480p, 720p o 1080p. El campo nativo size puede indicar la resolución; metadata.resolution tiene prioridad. 4k no se admite.
aspectRatiostringPredeterminado: 16:916:9, 9:16, 1:1, 4:3, 3:4, 21:9 o adaptive. Se aceptan aspect_ratio, ratio y metadata.ratio. Los valores de relación de aspecto en size siguen aceptándose por compatibilidad, pero un valor de resolución en size significa resolución. La entrada de fotogramas inicial/final requiere adaptive; se elige automáticamente si hay roles de fotogramas sin relación explícita.
metadataobjectAcepta resolution, ratio, duration, content, generate_audio y output_format. Establece generate_audio en un booleano para el audio generado. generateAudio / generate_audio de nivel superior son alias; usa un único control de audio.
imageUrlsstring[]Imágenes de referencia. images, imageUrl, image_urls e image_url son alias. La forma nativa abreviada images usa las dos primeras imágenes como fotogramas inicial/final; imageUrls conserva la semántica de imágenes de referencia.
imageWithRolesobject[]Imágenes por roles con url y role: first_frame, last_frame o reference_image. image_with_roles es un alias. También se acepta metadata.content tipado.
videoUrlsstring[]Vídeos de referencia. videoUrl, video_urls y video_url son alias.
audioUrlsstring[]Audio de referencia. audioUrl, audio_urls y audio_url son alias. Requiere una imagen o vídeo en la misma solicitud.
outputFormatstringPredeterminado: mp4Solo mp4. Se aceptan output_format y metadata.output_format. mov y watermark no se admiten.
callback_urlstringURL opcional de callback nativo. La disponibilidad depende del canal elegido; usa GET https://api.apihop.ai/v1/jobs/{jobId} como resultado de referencia.
Contenido multimodal
Las URL multimedia pueden ser direcciones HTTP(S) públicas o identificadores asset:// existentes.
| Tipo | Campo anidado | Roles |
|---|---|---|
image_url | image_url.url | first_frame, last_frame, reference_image |
video_url | video_url.url | reference_video |
audio_url | audio_url.url | reference_audio |
draft_task | draft_task.id | Sin rol; solo reutilización de muestras |
Se aceptan hasta 30 imágenes, 10 vídeos y 10 archivos de audio, con un máximo de 50 elementos multimedia en total, sumando formas abreviadas y contenido tipado. El audio requiere una imagen o vídeo. Usa prompt de nivel superior en lugar de contenido type: "text". Proporciona un único alias por ajuste. Los controles no compatibles se rechazan. Los campos de nivel superior first_frame_url, last_frame_url, reference_image_urls, reference_video_urls y reference_audio_urls son formas abreviadas por rol. Los campos no listados dentro del contenido no se reenvían.
Reutilización de tareas de muestra
draft_task es exclusivo de Seedance 2.5. Reutiliza una muestra compatible existente y completada; esta página no define controles de creación de muestras.
metadata.contentdebe contener exactamente un elementodraft_task.- Prefiere el
jobIdde Synapse de la muestra existente, como cadena decimal, paradraft_task.id. También se acepta un identificador de plataformatask_...existente y registrado; no uses el ID bruto del proveedor ni inventes identificadores. - La muestra debe pertenecer a la misma cuenta, usar el mismo modelo y canal de procesamiento, estar completada y haberse creado hace menos de 7 días.
- No proporciones instrucciones, entradas de imagen/vídeo/audio, duración, relación de aspecto, semilla,
generate_audio, formato de salida niomni_reference_task_type. Se reutilizan los ajustes de la muestra. - Se puede proporcionar la resolución de salida.
Las comprobaciones de compatibilidad y propiedad pueden rechazar la reutilización aunque la tarea referenciada se completara correctamente. No supongas que toda generación normal es una muestra reutilizable.
Ejemplos de solicitudes
Referencia multimodal
{
"model": "seedance-2.5",
"prompt": "Keep the referenced character and camera movement in a coherent film",
"seconds": "8",
"size": "720p",
"metadata": {
"ratio": "16:9",
"generate_audio": true,
"content": [
{"type": "image_url", "image_url": {"url": "https://example.com/character.png"}, "role": "reference_image"},
{"type": "video_url", "video_url": {"url": "https://example.com/camera.mp4"}, "role": "reference_video"},
{"type": "audio_url", "audio_url": {"url": "https://example.com/music.mp3"}, "role": "reference_audio"}
]
}
}Fotogramas inicial y final
{
"model": "seedance-2.5",
"duration": 5,
"metadata": {
"ratio": "adaptive",
"content": [
{"type": "image_url", "image_url": {"url": "https://example.com/first.jpg"}, "role": "first_frame"},
{"type": "image_url", "image_url": {"url": "https://example.com/last.jpg"}, "role": "last_frame"}
]
}
}Reutilizar una muestra existente
Sustituye EXISTING_SAMPLE_JOB_ID por el jobId devuelto de una muestra real compatible y completada. El marcador siguiente no es un identificador de tarea funcional.
{
"model": "seedance-2.5",
"metadata": {
"resolution": "1080p",
"content": [
{"type": "draft_task", "draft_task": {"id": "EXISTING_SAMPLE_JOB_ID"}}
]
}
}Envío y resultado
El campo data de la respuesta contiene jobId, status, model y message. Un envío correcto significa que la tarea se ha aceptado, no que haya terminado. Consulta periódicamente GET https://api.apihop.ai/v1/jobs/{jobId} con una clave de la misma cuenta. Consulta Consultar tarea asíncrona.
Cuando el estado sea COMPLETED, lee data.outputResult. Acepta cadenas y matrices en el campo url de cada objeto de resultado.