Skip to main content
O construtor Routa valida a configuração de forma síncrona e monta o transporte que todos os recursos usam.

Opções

Retentativas

O cliente retenta:
  • falhas de rede e timeouts;
  • respostas 429;
  • respostas 5xx;
  • um 409 que significa “uma requisição idêntica ainda está em andamento” (idempotency_in_progress).
A espera usa backoff exponencial com jitter completo, limitado a 8 segundos, e respeita o header Retry-After quando o servidor o envia. Respostas 4xx como 401, 403, 404 e 422 nunca são retentadas, porque repeti-las só repetiria a mesma falha. Um 409 idempotency_key_reuse também não é retentado: é um erro do cliente.

Idempotência

messages.send() envia um Idempotency-Key automaticamente e o reutiliza em todas as retentativas, então uma retentativa nunca cria uma segunda mensagem. Passe a sua própria chave com send({ ..., idempotencyKey }).
Quando uma chamada devolve o resultado de uma tentativa anterior, message._replayed é true.
O servidor deduplica apenas messages.send(). Se você precisa evitar retentativas nas outras operações de escrita, configure maxRetries: 0. Veja Idempotência.

Logger

Fetch personalizado

Substitua o fetch para injetar um agente de proxy ou, em testes, para responder sem rede: