GET /videos/generations/:id

Live
Leia o estado atual de uma tarefa de vídeo.
Abrir no ChatGPT
(opens in new tab)
Última verificação: 2026-09-08

Endpoint

GET /videos/generations/:id
Leia o estado atual de uma tarefa de vídeo. A Base URL é https://api.modelrush.ai/v1.

Requisição

Campos: ID da geração no caminho e a mesma chave Bearer usada no envio. Envie Authorization: Bearer $MODELRUSH_API_KEY nas rotas autenticadas e Content-Type: application/json nos corpos JSON.

Resposta

Campos: id, status (queued, in_progress, completed ou failed), model, modelrush_region, video_url ao concluir, error em falhas e provider_status quando disponível. GET /predictions/:id usa succeeded e outputs. Guarde os identificadores de requisição ou de geração devolvidos. As saídas geradas e suas referências de arquivo no provedor são removidas do banco de dados do ModelRush 24 horas após a conclusão da requisição; baixe o que você precisar manter.

Erros

Entradas inválidas devolvem uma resposta 4xx com um erro estruturado. Um 403 com adult_attestation_required, portrait_rights_attestation_required ou person_rights_confirmation_required precisa ser resolvido pela pessoa titular da conta e nunca deve ser repetido automaticamente. Repita os 429 conforme o Retry-After; repita as falhas 5xx apenas com uma política de backoff limitada.

Referências das APIs dos modelos Spicy

Abra a página do modelo para consultar parâmetros e preços atuais. As quatro páginas Wan 3 incluem uma seção de API abaixo do Playground. GET /v1/models fornece esquemas e acesso permitido à chave; GET /api/model-pricing retorna preços públicos sem autenticação; com uma chave API Bearer válida, retorna os preços aplicáveis à conta.
Modelo e referência da APIID do modeloEndpoint
Wan 3 Spicymodelrush/wan3-spicyPOST /v1/videos/generations
Wan 3 Pro Spicymodelrush/wan3-pro-spicyPOST /v1/videos/generations
Wan 3 Prime Spicymodelrush/wan3-prime-spicyPOST /v1/videos/generations
Wan 3 Prime Pro Spicymodelrush/wan3-prime-pro-spicyPOST /v1/videos/generations
Wan 2.7 I2V Spicymodelrush/wan2.7-i2v-spicyPOST /v1/videos/generations
Wan 2.2 I2V Spicymodelrush/wan2.2-i2v-spicyPOST /v1/videos/generations
Wan Animate Spicymodelrush/wan-animatePOST /v1/videos/generations
FlashVSR Spicymodelrush/flashvsrPOST /v1/videos/generations
GET /v1/videos/generations/:id termina com completed ou failed e retorna video_url em caso de sucesso. GET /v1/predictions/:id usa succeeded e outputs. Siga o contrato do poll_url usado. Os vídeos de referência e de saída do Wan 3 não podem exceder 30 segundos no total. Os quatro níveis Wan 3 Spicy aceitam prompt_extend (booleano, padrão true). LoRA aceita três listas opcionais de pesos, 480P/720P e 5/8 segundos. Wan Animate e FlashVSR usam o endpoint de vídeo com mídia de origem. No FlashVSR, duration deve ser igual à duração do vídeo de entrada arredondada para o segundo inteiro mais próximo (mínimo 1); caso contrário, a solicitação falha com video_duration_mismatch (ou video_duration_unverified se o vídeo não puder ser lido) antes de qualquer cobrança.
Todos os modelos Spicy exigem confirmação de acesso para adultos na conta e uma chave com permissão para o modelo e a capacidade. Guarde as chaves no servidor e reutilize Idempotency-Key onde houver suporte. Wan Animate também exige a estimativa assinada e x-request-id da documentação de vídeo.

Wan Animate: confirme uma estimativa assinada antes do envio

Em novas solicitações de modelrush/wan-animate, remova duration. O servidor mede o vídeo de referência: mais de 0 e no máximo 30 segundos. A saída segue essa duração; 5/8 segundos não controla seu tamanho. A estimativa lê o vídeo e o preço atual sem iniciar geração nem reservar saldo. Confirme billing.maximum_charge_cents (centavos inteiros, arredondados para cima por tarefa). A cobrança final não pode superar esse máximo; a reserva não utilizada é liberada. A estimativa vale por 10 minutos. Os requisitos de conta, acesso à mídia e credenciais continuam válidos.
API pública: POST https://api.modelrush.ai/v1/videos/generations/quote e depois POST https://api.modelrush.ai/v1/videos/generations. Use Authorization: Bearer com uma chave de servidor autorizada para o modelo. Ambiente Agent: POST https://modelrush.ai/api/agent/v1/videos/generations/quote e depois POST https://modelrush.ai/api/agent/v1/videos/generations. Use a credencial Agent com media:write e um Agent run ativo, não uma chave da API pública. A estimativa não cobra uma geração, mas não elimina a assinatura Agent nem outros requisitos do serviço.
  1. Crie um UUID e salve o identificador e o corpo JSON exato antes do envio. Inclua model, image, video, mode (animate ou replace), resolution (480P ou 720P) e os campos opcionais prompt/seed/region. Omita duration.
  2. Envie esse corpo à rota de estimativa com Content-Type: application/json e x-request-id: UUID. HTTP 200 retorna quote_token, request_id, expires_at e billing. Confira request_id e mostre o máximo para aprovação.
  3. Envie o mesmo corpo e x-request-id à rota de geração correspondente. Adicione x-modelrush-video-edit-quote: quote_token. Mantenha conta, Agent run quando aplicável, região, bytes da mídia e configurações. Idempotency-Key não substitui UUID nem assinatura; alterá-lo não autoriza outra tarefa com a mesma estimativa.
  4. Salve id e poll_url e consulte a rota retornada com sua credencial. O estado de vídeo usa completed/failed; prediction unificado usa succeeded/failed. Não envie outra tarefa para consultar o andamento.
UUID ou assinatura ausente/inválida: HTTP 400 video_edit_quote_required. Estimativa vencida, mídia/configuração ou preço alterado: HTTP 409 video_edit_quote_changed. Não aceite outro máximo automaticamente. Após rejeição definitiva da estimativa, obtenha outra com o mesmo UUID e corpo e confirme novamente. Se nunca tentou enviar e ela venceu, atualize antes de enviar. Em timeout, resposta perdida ou 5xx incerto, mantenha UUID, corpo e assinatura e repita exatamente a geração uma vez para recuperar o resultado. Uma solicitação aceita correspondente é recuperada antes da validação de validade/mídia; não substitua a assinatura vencida durante recuperação incerta. Persistindo a dúvida, pare e investigue pelo ID; não troque UUID para contornar. HTTP 409 idempotency_conflict indica conteúdo diferente sob esse ID: pare. Proteja a estimativa e não registre credenciais.
Solicitações já aceitas antes da mudança podem ser recuperadas com Idempotency-Key e corpo originais, incluindo o antigo duration. A tarefa existente é retornada sem nova reserva nem cobrança. Isso vale apenas para tarefas aceitas correspondentes, não novos pedidos sem assinatura, corpos alterados ou outro UUID. Sem uma tarefa aceita conhecida, migre para a estimativa assinada.
Baixe o exemplo Node.js executável. Configure MODELRUSH_API_KEY para public ou MODELRUSH_AGENT_TOKEN para agent no servidor. O estado contém a assinatura privada; não o inclua no Git. quote nunca envia uma geração. Substitua MAX_CENTS pelo inteiro mostrado somente após aprovação. submit/recover podem reservar saldo e iniciar tarefa paga; fazem uma solicitação, sem repetição automática. refresh mantém UUID/corpo e exige nova revisão; use antes do primeiro envio ou após video_edit_quote_changed definitivo.
sh
curl --fail --output wan-animate-quoted-request.mjs https://modelrush.ai/examples/wan-animate-quoted-request.mjs
cat > wan-animate-body.json <<'JSON'
{"model":"modelrush/wan-animate","image":"https://YOUR_HOST/character.png","video":"https://YOUR_HOST/reference.mp4","mode":"animate","resolution":"480P"}
JSON
node wan-animate-quoted-request.mjs quote wan-animate-state.json wan-animate-body.json public
node wan-animate-quoted-request.mjs submit wan-animate-state.json MAX_CENTS
# recover: same saved UUID, body and token; no new task ID
node wan-animate-quoted-request.mjs recover wan-animate-state.json MAX_CENTS
# refresh: review the returned maximum again before submit
node wan-animate-quoted-request.mjs refresh wan-animate-state.json
# Agent: use a separate state file and MODELRUSH_AGENT_TOKEN
node wan-animate-quoted-request.mjs quote wan-animate-agent-state.json wan-animate-body.json agent