HiAPI
Blogue

Tutorial

Tutorial da API Seedance 2.0 Mini: interface de vídeo por $0.0272 por segundo

O Seedance mais barato: texto para vídeo, imagem para vídeo e referência para vídeo com um único modelo, com exemplos em curl e Python, todos os parâmetros e custo por segundo.

Oct 15, 2026
Tutorial da API Seedance 2.0 Mini: interface de vídeo por $0.0272 por segundo

TL;DR

  • seedance-2.0-mini é a versão leve do Seedance 2.0 da ByteDance. Com um único nome de modelo você faz texto para vídeo, imagem para vídeo (primeiro frame ou primeiro e último frame) e referência para vídeo, com áudio sincronizado nativo. Abra a página do modelo para gerar online; novos usuários ganham 200 créditos ao se registrar.
  • É um dos modelos de vídeo mais baratos do HiAPI: 480p por $0.0272 por segundo, 720p por $0.0586 por segundo. 5 segundos em 480p custam apenas $0.136.
  • resolution é obrigatório; se não for enviado, retorna erro direto. Abaixo estão exemplos em curl e Python, todos os parâmetros e como cada um dos três modos é cobrado.

Veja o resultado

Três vídeos de texto para vídeo, todos com 5 segundos em 480p, $0.136 cada.

A slow dolly-in toward a steaming bowl of ramen on a worn wooden counter in a dim izakaya. Warm amber lantern light, soft volumetric haze, gentle steam curling upward, shallow depth of field, the broth surface rippling slightly. Cinematic, photoreal.

Gerar com este prompt → (5 segundos, 480p)

seedance-2.0-mini, texto para vídeo, 480p, 5 segundos, $0.136.

A cozy fireplace crackling in a log cabin at night, orange embers popping and drifting, a cast-iron kettle gently steaming on the hearth, rain streaking the dark window behind. Static locked-off shot. Native audio: crackling fire, soft rain on glass, a low wind.

Gerar com este prompt → (5 segundos, 480p)

seedance-2.0-mini, texto para vídeo, 480p, 5 segundos, com áudio nativo, $0.136.

O som de lenha crepitando, a chuva e o vento neste vídeo vêm da última frase do prompt. O Mini gera áudio por padrão, mas o tipo específico de som depende de o prompt deixar isso claro.

A border collie sprints across a sunlit beach toward the camera, kicking up wet sand, ears flapping, tongue out, water spray catching the low golden light. Tracking shot moving backward to keep the dog centered, motion blur on the paws, joyful energy, photoreal.

Gerar com este prompt → (5 segundos, 480p)

seedance-2.0-mini, texto para vídeo, 480p, 5 segundos, $0.136.

curl: o primeiro vídeo

curl -X POST https://api.hiapi.ai/v1/tasks \
  -H "Authorization: Bearer $HIAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-mini",
    "input": {
      "prompt": "rua cyberpunk com neon em noite de chuva, câmera se aproximando lentamente, reflexos coloridos no asfalto molhado, atmosfera cinematográfica",
      "resolution": "480p",
      "duration": 5,
      "aspect_ratio": "16:9"
    }
  }'

5 segundos em 480p, $0.136. Após retornar data.taskId, consulte com GET /v1/tasks/{taskId} até status ser success e então baixe output[0].url.

Python: enviar, consultar, baixar

# pip install requests; primeiro export HIAPI_KEY=sua Key
import os, time, uuid, requests

KEY = os.environ["HIAPI_KEY"]
H = {"Authorization": f"Bearer {KEY}"}

def generate(timeout_s=900, **params):
    body = {"model": "seedance-2.0-mini", "input": params}
    # Ao reenviar a mesma tarefa, use o mesmo Idempotency-Key para evitar cobrança duplicada
    headers = {**H, "Idempotency-Key": str(uuid.uuid4())}
    r = requests.post("https://api.hiapi.ai/v1/tasks", json=body, headers=headers, timeout=30)
    r.raise_for_status()
    res = r.json()
    if res.get("code") != 200:
        raise RuntimeError(res)
    task_id = res["data"]["taskId"]
    deadline = time.time() + timeout_s
    while time.time() < deadline:
        d = requests.get(f"https://api.hiapi.ai/v1/tasks/{task_id}", headers=H, timeout=30).json()["data"]
        if d["status"] == "success":
            return d["output"][0]["url"]
        if d["status"] == "fail":
            raise RuntimeError(d)
        time.sleep(10)
    raise TimeoutError(task_id)

# Imagem para vídeo: anime uma imagem, 720p 5 segundos ($0.293)
url = generate(
    prompt="câmera se afastando lentamente, nuvens e neblina fluindo entre os picos, luz dourada da manhã",
    first_frame_url="https://your-cdn.example.com/first-frame.jpg",
    resolution="720p", duration=5, generate_audio=False,
)
with open("clip.mp4", "wb") as f:
    f.write(requests.get(url).content)

Um modelo, três modos

O modo é definido pelos parâmetros enviados:

Modo O que enviar Descrição
Texto para vídeo Envie apenas prompt
Imagem para vídeo first_frame_url, opcionalmente com last_frame_url Não pode ser combinado com imagens ou vídeos de referência
Referência para vídeo reference_image_urls, reference_video_urls, reference_audio_urls Até 3 vídeos de referência e até 3 áudios de referência, com duração total de no máximo 15 segundos cada

Visão geral dos parâmetros

Parâmetro Valores Descrição
prompt String, obrigatório Pode ser em chinês ou inglês
resolution 480p / 720p, obrigatório Se não for enviado, retorna 400
duration Inteiro de 4–15, obrigatório (exemplos usam 5) Unidade em segundos
aspect_ratio 1:1 4:3 3:4 16:9 9:16 21:9 adaptive, padrão 16:9
generate_audio Padrão true Áudio sincronizado nativo
first_frame_url / last_frame_url URL da imagem jpeg/png/webp/bmp/tiff/gif, lado de 300–6000 px, menos de 30 MB por imagem
reference_image_urls URL da imagem No total, incluindo primeiro e último frame, no máximo 9 imagens
reference_video_urls Até 3 vídeos mp4/mov, 480p ou 720p, 2–15 segundos por vídeo, total de no máximo 15 segundos
reference_audio_urls Até 3 áudios wav/mp3, 2–15 segundos por áudio, total de no máximo 15 segundos

Calculando o custo

Duração 480p ($0.0272/s) 720p ($0.0586/s)
4 segundos $0.1088 $0.2344
5 segundos $0.136 $0.293
10 segundos $0.272 $0.586
15 segundos $0.408 $0.879

Ao enviar reference_video_urls, a cobrança usa outra faixa de preço: 480p por $0.0172 por segundo, 720p por $0.0358 por segundo. Com $10 é possível gerar cerca de 367 segundos em 480p. Recomenda-se ajustar o prompt primeiro em 480p e gerar em 720p após finalizar; para 1080p, use Seedance 2.0 ou Seedance 2.5.

Atenção antes de ir para produção

  • Use callback em vez de polling: no nível superior da requisição (mesmo nível de input), adicione "callback": {"url": "https://seu-dominio/hiapi/callback"} e deduplique por taskId.
  • Salve o resultado a tempo: output[0].url é um link temporário.
  • Retentativas com chave de idempotência: adicione Idempotency-Key no cabeçalho da requisição; a mesma chave em retentativas cria a tarefa apenas uma vez.
  • Reembolso automático em caso de falha: só vídeos gerados com sucesso são cobrados.

Perguntas frequentes

Como escolher entre Seedance 2.0 Mini e Seedance 2.0?

Em 480p, o preço do Mini é cerca de um quinto do 2.0 ($0.0272 por segundo contra $0.136), mas ele vai no máximo até 720p. Use o Mini para rascunhos, produção em lote de vídeos curtos para redes sociais e testes de prompt; para 1080p ou 4K, use o Seedance 2.0.

Por que dá erro se não enviar resolution?

Neste modelo, resolution é obrigatório e deve ser escrito explicitamente como "480p" ou "720p".

Tem áudio?

Sim, por padrão. Descreva no prompt o som desejado; se não quiser áudio, defina generate_audio como false.

Qual é a duração máxima de um vídeo?

De 4 a 15 segundos.

Para ver mais formas de escrever prompts, consulte o Guia de prompts do Seedance 2.0; ou vá direto à página do modelo para gerar o vídeo do ramen.

Artigos relacionados

Ver todos os artigos →

Comece a criar com artefactos de IA persistentes

Obtenha a sua chave de API e chame modelos de imagem, vídeo e áudio através de uma única API baseada em tasks.

Ler a documentação da API