Skip to main content

Visão geral

Somente no sandbox, POST /transactions pode devolver uma resposta de erro predefinida sem criar a transação. Use para testar como o seu sistema se comporta quando o monitoramento fica indisponível, dá timeout ou rejeita a solicitação.
Esses gatilhos são ignorados em produção. Uma organização de produção sempre segue o fluxo normal de create, mesmo que você envie um externalId ou código de metadata de simulação.

Como funciona

  1. Autentique-se com uma API key de uma organização em sandbox.
  2. Chame POST /transactions com:
    • externalId começando com SIMULATE-ERROR-, ou
    • metadata.sandboxErrorCode (canônico) ou metadata.error_code (alias).
  3. A Gu1 responde com o HTTP status e o body correspondentes de imediato (ou após um delay limitado no timeout). Nada é gravado em transactions.

Prioridade na escolha do código

  1. metadata.sandboxErrorCode (se presente e reconhecido)
  2. metadata.error_code (se presente e reconhecido)
  3. Sufixo após SIMULATE-ERROR- no externalId (por exemplo SIMULATE-ERROR-TIMEOUT)
Códigos desconhecidos retornam 400 com error.code UNKNOWN_SANDBOX_ERROR_CODE e a lista de códigos válidos.

Aliases úteis

Você pode usar aliases curtos no sufixo ou no metadata: TIMEOUT, UNAVAILABLE, 500, 504, 429, 409, 403, VALIDATION, DUPLICATE, QUOTA, INTERNAL_ERROR, FAILED_TO_CREATE.

Exemplos

Timeout (indisponibilidade / sem resposta a tempo)

Escolher o erro com metadata

Alias (mesmo efeito no sandbox):

Exemplo de body 504

Escopo

  • Aplica-se apenas ao POST /transactions individual. Endpoints de batch não estão cobertos.
  • Falhas de auth / permissão (401 / 403 do middleware) não são simuladas aqui — use uma key ou role inválida se precisar.
  • Creates com sucesso (201) não mudam; este recurso só simula erros.

Relacionado