Penalização de filas

Para garantir a estabilidade do nosso sistema de webhooks e fornecer previsibilidade sobre as tentativas de entrega, o Asaas utiliza um sistema de penalização. Quando o seu endpoint começa a retornar erros, aplicamos intervalos de tempo crescentes entre as novas tentativas.

Este mecanismo se aplica tanto para webhooks configurados no modo sequencial quanto no não sequencial.

📘

Importante

Para as configurações no modo sequencial, a ordem de entrega dos eventos é estritamente garantida. Portanto, se um evento estiver penalizado, todos os eventos seguintes da mesma fila aguardarão o sucesso do envio dele antes de serem processados.

Como funciona a penalização?

Se a sua aplicação retornar qualquer resposta que não seja da família 200, consideramos uma falha. Após a primeira falha, o Asaas iniciará o seguinte ciclo de retentativas e notificações:

TentativaTempoAção de notificação
10
230 segundos
31 min
43,5 min
55 min1º E-mail de Alerta
615 min
725 min
81 hr
91 hr
101 hr2º E-mail de Alerta
111 hr
121 hr
131 hr
141 hr
153 hrs3º E-mail (Fila Pausada)

Após 15 falhas consecutivas, a fila de envios para a configuração de webhook específica é pausada.

Novos eventos continuarão sendo gerados e enfileirados, mas não serão enviados até você reativar a fila manualmente. Veja mais detalhes sobre a fila pausada em fila pausada.

Removendo a penalização

Se você identificou e corrigiu o problema em seu sistema que estava causando as falhas, não é necessário esperar todo o ciclo de penalização terminar.

Você pode solicitar que o Asaas remova a penalização e tente reenviar o evento que está no topo da fila imediatamente.

Você pode remover a penalização de duas formas:

Via interface web

Acesse a área de Integrações > Webhooks. Existe uma coluna ao lado da "situação" da configuração que apresenta a quantidade de eventos penalizados.

  1. Acesse a configuração de webhook que apresenta eventos penalizados.
  2. Clique no botão "Remover penalização"
  3. Confirme a ação na modal que será exibida.

Via API

Você também pode remover a penalização de forma programática. Para isso, utilize o endpoint para remover a penalização da configuração de webhook.

Confira a referência completa deste endpoint

🚧

Atenção

Este endpoint possui um rate limit mais restrito para desencorajar o uso de automações que tentem remover a penalização repetidamente. O objetivo da funcionalidade é ser um recurso para ser usado após a correção do problema em sua aplicação.