Erro Connect Timed Out
O que fazer quando vejo este erro nos logs de Webhooks do Asaas?
O erro Connect Timed Out nos Logs de Webhooks indica que o Asaas não conseguiu estabelecer conexão com o servidor responsável por receber o evento.
A falha ocorre antes do processamento do payload pela sua aplicação. Investigue disponibilidade, DNS, rede, firewall e infraestrutura do endpoint.
Connect Timed Out ou Read Timed Out?
Os erros representam etapas diferentes da comunicação.
| Erro | O que aconteceu |
|---|---|
Connect Timed Out | A conexão com o endpoint não foi estabelecida. |
408 - Read Timed Out | A conexão foi estabelecida, mas a aplicação não respondeu dentro do tempo esperado. |
Connect Timed Out
%%{init: {"flowchart": {"nodeSpacing": 18,"rankSpacing": 24,"diagramPadding": 4,"padding": 7}}}%%
flowchart TD
A["Tentar estabelecer conexão"] --> B["Conexão não é concluída"]
classDef inicio fill:#DBEAFE,stroke:#2563EB,color:#1E3A8A,stroke-width:3px
classDef sucesso fill:#DCFCE7,stroke:#16A34A,color:#14532D,stroke-width:3px
class A inicio
class B sucesso
linkStyle default stroke:#94A3B8,stroke-width:2px
Read Timed Out
%%{init: {"flowchart": {"nodeSpacing": 18,"rankSpacing": 24,"diagramPadding": 4,"padding": 7}}}%%
flowchart TD
A["Estabelecer conexão"] --> B["Não receber resposta a tempo"]
classDef inicio fill:#DBEAFE,stroke:#2563EB,color:#1E3A8A,stroke-width:3px
classDef sucesso fill:#DCFCE7,stroke:#16A34A,color:#14532D,stroke-width:3px
class A inicio
class B sucesso
linkStyle default stroke:#94A3B8,stroke-width:2px
Se a conexão for estabelecida, mas a resposta demorar, consulte Erro 408 - Read Timed Out.
Principais causas
O Connect Timed Out pode ocorrer por:
- servidor ou aplicação indisponível;
- indisponibilidade temporária do provedor;
- falhas de rede;
- DNS configurado incorretamente;
- firewall bloqueando a conexão;
- porta utilizada pelo endpoint fechada;
- hospedagem compartilhada sobrecarregada;
- alto consumo de CPU ou memória;
- limite de conexões simultâneas;
- problemas no balanceador de carga;
- timeout na infraestrutura ou no provedor.
Como a conexão não foi estabelecida, não investigue o conteúdo do payload antes de validar a conectividade do endpoint.
Como investigar
1. Verifique se o endpoint está disponível
Teste o endereço configurado no Webhook:
https://minhaapi.com/webhookConfirme que:
- a aplicação está em execução;
- o servidor web está disponível;
- o domínio está ativo;
- o endpoint está acessível externamente.
Se a aplicação estiver ativa, mas o endereço não puder ser alcançado externamente, continue a investigação nas camadas de DNS, rede e firewall.
2. Verifique o DNS
Confirme se o domínio resolve para o destino correto e se alterações recentes de DNS já foram propagadas.
Revise também configurações de proxy ou balanceador que possam encaminhar a requisição para um destino indisponível.
3. Verifique firewall e portas
Confirme que:
- a porta utilizada pelo endpoint está aberta;
- não existem regras bloqueando os IPs do Asaas;
- Security Groups, proxies e firewalls permitem a conexão;
- Cloudflare ou outro WAF não está bloqueando o tráfego.
Consulte os IPs oficiais do Asaas.
Se utilizar Cloudflare, consulte também Bloqueio do Firewall na CloudFlare.
Se o firewall responder explicitamente com HTTP 403, utilize o fluxo de troubleshooting do Erro 403 (Forbidden).
4. Verifique os recursos da infraestrutura
Monitore:
- CPU;
- memória;
- utilização do disco;
- quantidade de conexões abertas;
- disponibilidade do servidor web;
- saúde do balanceador de carga.
Limites de recursos ou de conexões podem impedir que novas conexões sejam estabelecidas.
5. Verifique o provedor
Consulte o status da infraestrutura utilizada pela aplicação, como:
- AWS;
- Azure;
- GCP;
- Hostinger;
- KingHost;
- VPS;
- hospedagens compartilhadas.
Uma indisponibilidade externa também pode impedir o Asaas de estabelecer a conexão.
Cenários comuns
Servidor indisponível
%%{init: {"flowchart": {"nodeSpacing": 28,"rankSpacing": 32,"diagramPadding": 8,"padding": 10}}}%%
flowchart TD
A["Asaas inicia a conexão"] --> B["Servidor está indisponível"]
B --> C["Conexão não é estabelecida"]
C --> D["Registrar Connect Timed Out"]
D --> E["Realizar nova tentativa"]
classDef inicio fill:#DBEAFE,stroke:#2563EB,color:#1E3A8A,stroke-width:3px,font-size:17px
classDef validacao fill:#E0F2FE,stroke:#0284C7,color:#0C4A6E,stroke-width:2px,font-size:17px
classDef sucesso fill:#DCFCE7,stroke:#16A34A,color:#14532D,stroke-width:3px,font-size:17px
class A inicio
class B,C,D validacao
class E sucesso
linkStyle default stroke:#94A3B8,stroke-width:2px
Firewall bloqueando a conexão
%%{init: {"flowchart": {"nodeSpacing": 28,"rankSpacing": 32,"diagramPadding": 8,"padding": 10}}}%%
flowchart TD
A["Asaas inicia a conexão"] --> B["Firewall bloqueia a porta"]
B --> C["Conexão expira"]
C --> D["Registrar Connect Timed Out"]
classDef inicio fill:#DBEAFE,stroke:#2563EB,color:#1E3A8A,stroke-width:3px,font-size:17px
classDef validacao fill:#E0F2FE,stroke:#0284C7,color:#0C4A6E,stroke-width:2px,font-size:17px
classDef sucesso fill:#DCFCE7,stroke:#16A34A,color:#14532D,stroke-width:3px,font-size:17px
class A inicio
class B,C validacao
class D sucesso
linkStyle default stroke:#94A3B8,stroke-width:2px
O que acontece enquanto o erro persiste
Enquanto o Asaas não conseguir estabelecer a conexão:
- os eventos não são entregues;
- novas tentativas são realizadas automaticamente;
- a configuração entra no mecanismo de penalização;
- após 15 falhas consecutivas, a fila do Webhook é interrompida;
- novos eventos continuam sendo gerados e armazenados;
- eventos pendentes permanecem armazenados por até 14 dias e podem ser excluídos permanentemente após esse período.
Entenda a Penalização de filas.
Como validar a correção
Após restaurar a conectividade:
- confirme que o endpoint está acessível externamente;
- verifique se DNS, firewall, porta e infraestrutura estão funcionando;
- se a fila estiver interrompida, reative a configuração;
- gere ou aguarde um novo evento;
- consulte os Logs de Webhooks.
A correção está concluída quando novas tentativas deixam de registrar Connect Timed Out e o endpoint recebe as requisições normalmente.
Se o erro mudar para 408 - Read Timed Out, a conexão foi restabelecida, mas a aplicação ainda precisa reduzir o tempo de resposta.
Próximos passos
Updated 9 days ago
