Erros e limites
Formato dos erros, códigos de status, limites de taxa e recomendações de retentativa da API do VideoUpscaler.
Formato dos erros
Todo erro tem o mesmo formato JSON. Use code no seu código; message é destinado a pessoas e pode mudar.
{
"error": {
"code": "insufficient_credits",
"message": "Not enough credits for this video. Buy credits to continue."
}
}Códigos de status
| Status | Código | Significado | Tentar de novo? |
|---|---|---|---|
400 | invalid_request | A requisição está malformada | Não — corrija a requisição |
401 | unauthorized | Chave de API ausente ou inválida | Não |
402 | insufficient_credits | Créditos insuficientes | Depois de comprar créditos |
403 | paid_plan_required | A conta nunca comprou créditos nem fez uma assinatura | Depois de comprar créditos |
403 | invalid_upload_token | URL de upload inválida ou expirada | Peça uma nova URL de upload |
403 | invalid_stream_token | URL do stream de eventos inválida ou expirada | Abra /tasks/{id}/events de novo |
404 | not_found | Essa tarefa não existe na sua conta | Não |
409 | idempotency_conflict | Idempotency-Key reutilizado com outros parâmetros | Use uma nova chave |
411 | invalid_request | PUT de upload sem corpo ou sem Content-Length | Não — corrija a requisição |
413 | file_too_large | Vídeo acima do limite de tamanho | Não |
422 | video_fetch_failed | Não foi possível baixar a video_url | Depois de corrigir a URL |
422 | unsupported_video | Não é um MP4, MOV ou WebM legível | Não |
422 | video_too_long | Vídeo com mais de 600 segundos | Não |
422 | video_not_found | Nada foi enviado para esta video_url | Depois que o upload terminar |
429 | rate_limited | Requisições demais | Sim, depois de Retry-After segundos |
500 | internal_error | Algo deu errado do nosso lado | Sim, com o mesmo Idempotency-Key |
502 | upstream_error | Não foi possível iniciar o processamento; qualquer cobrança foi reembolsada | Sim, com um novo Idempotency-Key |
504 | upstream_timeout | O download da video_url demorou demais | Sim, ou use um host mais rápido |
Limites
| Limite | Valor |
|---|---|
| Requisições | Cerca de 120 por minuto por chave de API |
| Duração do vídeo | 600 segundos |
Tamanho da video_url remota | 500MB |
| Tamanho do arquivo enviado | 100MB |
| Validade da URL de upload | 1 hora |
| Chaves de API ativas | 20 por conta |
Como tentar de novo com segurança
Sempre envie um Idempotency-Key para /upscale. Se uma requisição der timeout ou você receber um 500 ou 504, tente de novo com a mesma chave: você recebe a tarefa que já foi criada, em vez de uma segunda cobrança.
Um 502 upstream_error é diferente: a tarefa foi criada, não conseguiu iniciar e foi reembolsada, então a mesma chave continuará retornando essa tarefa com falha. Tente novamente com uma nova chave.