Gates2b

Códigos HTTP e erros

O que cada status significa e o formato do corpo de erro.

A API usa os status HTTP convencionais: 2xx é sucesso, 4xx é problema na requisição que você enviou e 5xx é falha do nosso lado.

Formato do erro

Todo erro tem o mesmo corpo:

{
  "statusCode": 400,
  "code": "VALIDATION",
  "message": ["grossAmount must be a string"],
  "traceId": "3b9c6f2a-71d4-4e0b-b8a5-0c2e9f41d7a6"
}
CampoDescrição
statusCodeO mesmo status HTTP da resposta.
codeCódigo estável para o seu sistema tratar o erro. Use este campo nas decisões, não a mensagem.
messageTexto para pessoas. Pode ser string ou lista (erros de validação trazem um item por campo). Pode mudar sem aviso.
traceIdIdentificador do erro nos nossos registros. Informe ao suporte para localizar o caso.
missingOpcional. Lista dos dados que faltam para concluir a operação.

Status

StatuscodeSignificado
200, 201—Sucesso. 201 quando um recurso é criado.
400BAD_REQUEST, VALIDATIONCampo obrigatório ausente ou inválido. A message diz qual.
401UNAUTHORIZEDChave de API ausente ou inválida. Veja Autenticação.
403FORBIDDEN, API_KEY_IP_NOT_ALLOWEDOperação não permitida para a conta, chamada de IP não liberado, ou GET enviado com corpo.
404NOT_FOUNDO endpoint ou o recurso não existe (ou não pertence à sua conta).
409CONFLICTO estado atual impede a operação: cliente duplicado, assinatura já cancelada, cobrança já reembolsada.
422VALIDATIONOs dados têm o formato certo, mas não passam numa regra de negócio.
429—Limite de requisições excedido. Veja Limites.
500INTERNALErro do nosso lado. A message é genérica de propósito; guarde o traceId.
501—Combinação não suportada, por exemplo um plano que mistura PIX e cartão.
503UNAVAILABLEServiço temporariamente indisponível. Tente de novo com espera crescente.

GET com corpo é recusado

Chamadas GET com qualquer conteúdo no corpo recebem 403. Envie filtros na query string.

Quando tentar de novo

  • 429, 500, 503 e timeouts: tente de novo com espera crescente (1 s, 2 s, 4 s…).
  • Na criação de cobrança, envie attemptIdempotencyKey. Se a nova tentativa responder 409, a primeira chegou a ser criada: consulte a cobrança pelo seu externalReference em vez de criar outra.
  • 4xx (exceto 429): não repita a mesma requisição. Corrija o que a message aponta.

Nesta página