Arquivos privados e retenção
O Infinity Flow mantém resultados por 24 horas a partir de readyAt. A resposta da geração informa expiresAt e disponibilidade. Processamento demorado não deve reduzir o período de download antes de o resultado estar pronto.
| Rota | Uso |
|---|---|
GET /generations/{id}/outputs/0/download |
Autoriza a conta e retorna redirect para download privado |
GET /generations/{id}/outputs/0/download-ticket |
Retorna { "url": "..." } com URL temporária |
GET /generations/{id}/outputs/0/play |
Entrega autorizada para playback inline |
GET /generations/{id}/outputs/0/thumbnail |
Thumbnail privada, quando disponível |
Todas exigem media:read, conta e automação válidas e ownership do resultado. Output index atualmente é 0 porque cada job produz um resultado.
Duas validades diferentes
Seção intitulada “Duas validades diferentes”A URL de entrega geralmente dura até 90 segundos, limitada ao tempo de retenção restante. A mídia tem uma janela maior de 24 horas. Se o link expirar mas a mídia ainda existir, peça outro ticket; isso não estende a retenção.
Não grave o link temporário como URL pública permanente nem compartilhe em logs, analytics ou tickets abertos. Quem recebe esse link pode acessar o arquivo durante sua curta validade.
Não encaminhe o Bearer
Seção intitulada “Não encaminhe o Bearer”No fluxo mais simples, seu backend chama download-ticket com Authorization, recebe a URL e faz uma segunda requisição sem a chave da API. Clientes HTTP que seguem redirects devem remover Authorization ao trocar de host. Não habilite opções que repassem credenciais a destinos externos.
Baixe o resultado para o armazenamento da sua operação antes de expiresAt. Conteúdo expirado não é regenerado automaticamente, e reutilizar um request key antigo não cria um vídeo novo.