API de vídeo Seedance

Gere vídeos a partir de texto ou imagem com Seedance 2.0 ou 2.5, consulte a tarefa assíncrona e descarregue o resultado.

A geração de vídeo Seedance usa uma Video API assíncrona. Primeiro envie uma tarefa e depois consulte o estado com o ID devolvido. Esta API é separada de Chat Completions.

Antes de começar

Crie uma chave API da Modelflare e use https://modelflare.dev/v1 como Base URL. Os nomes públicos dos modelos são seedance-2.0 e seedance-2.5.

As combinações disponíveis de duração e resolução podem variar por modelo. Consulte Modelos e preços antes do pedido. Quando disponíveis, as resoluções são 480p, 720p, 1080p ou 4k.

Pedido de texto para vídeo

curl https://modelflare.dev/v1/videos \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "Um gato branco corre numa rua iluminada por néon à chuva, plano cinematográfico em movimento",
    "duration": 4,
    "resolution": "720p"
  }'

Pedido de imagem para vídeo

Adicione image com um URL HTTPS de imagem acessível publicamente. Os restantes campos são iguais ao pedido de texto para vídeo.

curl https://modelflare.dev/v1/videos \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "O sujeito vira-se lentamente para a câmara enquanto ela avança",
    "image": "https://example.com/reference.png",
    "duration": 4,
    "resolution": "720p"
  }'

Resposta ao envio

Um envio bem-sucedido devolve um ID público. id e task_id identificam a mesma tarefa; guarde qualquer um deles.

{
  "id": "task_example_123",
  "task_id": "task_example_123",
  "object": "video",
  "model": "seedance-2.5",
  "status": "queued"
}

Consultar o estado

Consulte a tarefa a cada poucos segundos. Os estados de espera podem incluir queued, pending, processing ou in_progress. Pare quando mudar para completed ou failed.

curl https://modelflare.dev/v1/videos/task_example_123 \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY"

Exemplo de resposta concluída:

{
  "id": "task_example_123",
  "task_id": "task_example_123",
  "object": "video",
  "model": "seedance-2.5",
  "status": "completed",
  "progress": 100,
  "metadata": {
    "url": "https://example.com/generated-video.mp4"
  }
}

Descarregar o resultado

Depois de concluído, descarregue o vídeo pelo endpoint content:

curl -L https://modelflare.dev/v1/videos/task_example_123/content \
  -H "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \
  -o seedance.mp4

Campos principais

  • model: obrigatório; seedance-2.0 ou seedance-2.5.
  • prompt: obrigatório; descrição do vídeo.
  • duration: obrigatório; inteiro em segundos, atualmente com mínimo de 4. seconds também é aceite.
  • resolution: obrigatória; resolução suportada pelo modelo escolhido.
  • image: opcional; URL HTTPS pública que ativa imagem para vídeo.

HTTP 400 normalmente indica parâmetros inválidos, 401 uma chave inválida, 429 um limite temporário e erros 5xx podem ser repetidos com espera progressiva.