Pular para o conteúdo principal

Formato do erro

Os erros tratados pela API usam application/problem+json.
Alguns erros trazem um campo extra: reason em video_not_eligible e protocol_id em external_id_taken. Não confunda os dois reason. O reason deste erro HTTP só existe em video_not_eligible, na resposta de POST /protocols. Já o error.reason do protocolo aparece em GET /protocols/{protocol_id}, dentro de error, quando a criação falhou depois de aceita: hoje o único valor é holder_email_in_use. Veja os códigos de error.

Como reagir

  • Siga a próxima ação indicada para o code da resposta.
  • Ao repetir uma ação que exige Idempotency-Key, envie a mesma chave. Veja Idempotência.
  • Nos erros 4xx de POST /protocols, nenhum protocolo é criado e o saldo não é descontado.
  • Depois de um erro 5xx ou de um tempo limite em POST /protocols, reenvie com a mesma chave e o mesmo corpo. Se o protocolo já foi criado, a API devolve esse protocolo com Idempotent-Replayed: true e não cria outro.
  • Trate também respostas sem corpo problem+json (como redirecionamentos e alguns 400, 403 e 431 de infraestrutura): decida pelo status HTTP.

Quando tentar de novo

Códigos

400 Requisição inválida

401 Não autenticado

402 Saldo insuficiente

403 Sem permissão

404 Não encontrado

409 Conflito

422 Não foi possível processar

429 Limite de chamadas

500 Erro do nosso lado

503 Serviço indisponível