Pular para o conteúdo

Sua primeira geração

Abra Integrações com o e-mail da sua assinatura. Habilite API + MCP, se ainda não estiver incluído, e crie uma chave com account:read, generations:write, generations:read e media:read.

A chave completa aparece uma única vez. Guarde-a no gerenciador de segredos do seu servidor. Nunca coloque a chave no código do navegador, Git, prints ou parâmetros de URL.

Janela do terminal
export INFINITY_FLOW_API_KEY='SUA_CHAVE_PRIVADA'
export INFINITY_FLOW_API_BASE='https://infinityflow.stream/api/v1'
Janela do terminal
curl --fail-with-body "$INFINITY_FLOW_API_BASE/account" \
-H "Authorization: Bearer $INFINITY_FLOW_API_KEY"

O resultado contém account e entitlements: plano, automação, limites e direitos atuais. Se receber 403 AUTOMATION_REQUIRED, confira plano base e adicional na sua assinatura.

Gere um UUID novo para cada criação nova. Salve o UUID e o payload antes de enviar. O exemplo abaixo usa um UUID ilustrativo; substitua-o antes da primeira criação.

Janela do terminal
export INFINITY_FLOW_REQUEST_KEY='a2b2da8a-d14a-43ad-8846-91c741bb5301'
curl --fail-with-body "$INFINITY_FLOW_API_BASE/generations" \
-H "Authorization: Bearer $INFINITY_FLOW_API_KEY" \
-H 'Content-Type: application/json' \
-H "Idempotency-Key: $INFINITY_FLOW_REQUEST_KEY" \
--data '{"prompt":"Uma floresta ao amanhecer, movimento de câmera suave","mediaKind":"video","aspect":"16:9"}'

A resposta 202 contém generation.id, estado inicial e o header Location. Salve o ID. 202 significa pedido aceito, não vídeo pronto.

Janela do terminal
curl --fail-with-body "$INFINITY_FLOW_API_BASE/generations/ID_DA_GERACAO" \
-H "Authorization: Bearer $INFINITY_FLOW_API_KEY"

Use polling com intervalo inicial de cinco segundos e aumente o intervalo quando houver lentidão. Ao chegar em succeeded, consulte a saída e sua expiração. attention_required exige acompanhamento do pedido salvo; não é autorização para gerar outra vez.

Solicite uma URL temporária e baixe-a sem o header Authorization do Infinity Flow:

Janela do terminal
curl --fail-with-body "$INFINITY_FLOW_API_BASE/generations/ID_DA_GERACAO/outputs/0/download-ticket" \
-H "Authorization: Bearer $INFINITY_FLOW_API_KEY"
# Copie o campo url retornado para um processo que não encaminhe a chave:
curl --fail-with-body 'URL_TEMPORARIA_RETORNADA' --output video.mp4

O arquivo fica disponível por 24 horas a partir do horário em que ficou pronto. A URL temporária normalmente dura até 90 segundos. Pedir outra URL não renova as 24 horas.

Entenda idempotência e retry · Referência REST