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:
| Tentativa | Tempo | Ação de notificação |
|---|---|---|
| 1 | 0 | |
| 2 | 30 segundos | |
| 3 | 1 min | |
| 4 | 3,5 min | |
| 5 | 5 min | 1º E-mail de Alerta |
| 6 | 15 min | |
| 7 | 25 min | |
| 8 | 1 hr | |
| 9 | 1 hr | |
| 10 | 1 hr | 2º E-mail de Alerta |
| 11 | 1 hr | |
| 12 | 1 hr | |
| 13 | 1 hr | |
| 14 | 1 hr | |
| 15 | 3 hrs | 3º 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.
- Acesse a configuração de webhook que apresenta eventos penalizados.
- Clique no botão "Remover penalização"
- 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.
Updated 5 days ago