Pular para o conteúdo

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.

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.

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.