Por que usar webhooks?
Os webhooks fazem com que os resultados cheguem até você, em vez de você ter que pedi-los repetidamente. Em vez de consultar um endpoint GET até que uma busca termine, a Enrow envia cada resultado para o seu servidor no momento em que ele está pronto — economizando requisições, reduzindo a latência e mantendo seu código simples. Pare de desperdiçar requisições — deixe os resultados chegarem até você. Como todos os endpoints da Enrow são assíncronos, os webhooks são a forma recomendada de receber resultados em Email Finder, Email Verifier e Phone Finder. Os webhooks também ignoram completamente os limites de taxa, já que é a Enrow quem chama você, e não o contrário.Como funciona um fluxo de webhook?
Um fluxo de webhook transforma uma única requisição de busca em uma entrega automática. Você diz à Enrow para onde enviar os resultados, e a Enrow faz o resto:- Você faz um POST de uma requisição de busca com uma URL de
webhooknassettings - A Enrow retorna um ID de busca imediatamente
- A Enrow processa a busca em segundo plano
- Quando concluída, a Enrow faz um POST dos resultados para a sua URL de webhook
Como configuro um webhook?
Você pode registrar um webhook de duas maneiras, dependendo se deseja usá-lo para uma busca ou para todas as buscas:- Por requisição: Inclua uma URL de
webhookno objetosettingsde qualquer chamada de API - Global: Configure um webhook padrão na página de integrações do painel
Quais eventos disparam uma chamada de webhook?
Seis tipos de eventos podem disparar uma chamada de webhook, um por endpoint e tipo de busca:| Event | Descrição |
|---|---|
single_search_finished | Uma busca de e-mail individual foi concluída |
bulk_search_finished | Uma busca de e-mail em massa foi concluída |
verification_finished | Uma verificação de e-mail individual foi concluída |
bulk_verification_finished | Uma verificação de e-mail em massa foi concluída |
single_phone_search_finished | Uma busca de telefone individual foi concluída |
bulk_phone_search_finished | Uma busca de telefone em massa foi concluída |
Como é o payload de um webhook?
O payload do webhook depende do endpoint e de a busca ser individual ou em massa. Buscas individuais entregam o resultado completo diretamente, enquanto buscas em massa entregam uma notificação de conclusão que você complementa com uma requisição GET.Email Finder — Individual
Para buscas individuais, você recebe o resultado completo diretamente na notificação do webhook. Isso elimina a necessidade de fazer uma requisição GET.Email Finder — Em massa
Para buscas em massa, você recebe uma notificação de que o lote foi concluído. Em seguida, chame o endpoint GET /email/find/bulk com oid para recuperar os resultados.
Email Verifier — Individual
O resultado completo é incluído diretamente — não é necessária uma requisição GET.Email Verifier — Em massa
Esta é apenas uma notificação. Chame GET /email/verify/bulk com oid para recuperar os resultados.
Phone Finder — Individual
O resultado completo é incluído diretamente — não é necessária uma requisição GET.Phone Finder — Em massa
Esta é apenas uma notificação. Chame GET /phone/bulk com oid para recuperar os resultados.
Qual a diferença entre webhooks individuais e em massa?
Os webhooks de busca individual contêm o resultado completo, então nenhuma chamada extra é necessária. Os webhooks de busca em massa apenas sinalizam que o lote foi concluído — em seguida, você busca os resultados com o endpoint GET correspondente.| Tipo | Buscas individuais | Buscas em massa |
|---|---|---|
| Payload | Resultado completo incluído | Apenas notificação (ID + créditos) |
| GET necessário? | Não | Sim — use o endpoint GET com o id |
Para buscas individuais, o webhook contém tudo o que você precisa. Para buscas em massa, o webhook informa que o lote foi concluído — então você busca os resultados.
Quais são as boas práticas para endpoints de webhook?
Um endpoint de webhook confiável responde rapidamente, aceita apenas HTTPS e tolera duplicatas ocasionais. Siga estas práticas para manter as entregas confiáveis:Retorne 200 rapidamente
Retorne 200 rapidamente
Processe os payloads de webhook de forma assíncrona. Retorne um
200 imediatamente e, em seguida, trate os dados em uma tarefa em segundo plano.Use HTTPS
Use HTTPS
Sempre use endpoints HTTPS. Webhooks via HTTP serão rejeitados.
Trate duplicatas
Trate duplicatas
Em casos raros, os webhooks podem ser entregues mais de uma vez. Use o campo
id para fazer a deduplicação.Use campos personalizados
Use campos personalizados
Passe dados em O campo
custom nas suas requisições para identificar a qual registro pertence o resultado de um webhook:custom é retornado inalterado no payload do webhook.Devo usar webhooks ou polling?
Use webhooks em produção e polling apenas para prototipagem rápida ou depuração. Os webhooks entregam resultados em tempo real sem consumir sua cota de requisições, enquanto o polling faz chamadas GET repetidas que contam para os seus limites de taxa.| Webhooks | Polling (GET) | |
|---|---|---|
| Latência | Tempo real | Depende do intervalo de polling |
| Chamadas de API | 0 (a Enrow chama você) | Várias chamadas por busca |
| Impacto no limite de taxa | Nenhum | Consome a cota |
| Complexidade | Requer configuração de endpoint | Mais simples de implementar |
Recomendamos webhooks para uso em produção. Use polling apenas para prototipagem rápida ou depuração.
FAQ
Os webhooks custam créditos extras?
Os webhooks custam créditos extras?
Não. Os webhooks não consomem créditos adicionais — você paga apenas pela busca em si. O custo em créditos é informado no campo
credits.cost do payload. Consulte Créditos e cobrança para ver os custos por endpoint.O que acontece se meu endpoint não retornar um 200?
O que acontece se meu endpoint não retornar um 200?
Sua URL de webhook deve ser um endpoint HTTPS válido que retorne um código de status
200. Se o seu servidor estiver inacessível ou responder com outro status, a entrega é considerada como falha. Como alternativa, você sempre pode recuperar os resultados consultando o endpoint GET correspondente com o id da busca.Como faço para associar um webhook à requisição original?
Como faço para associar um webhook à requisição original?
Use o
id da resposta da busca ou passe um objeto custom na sua requisição — ele é retornado inalterado no payload do webhook, para que você possa mapear os resultados de volta aos seus próprios registros, como o ID de um lead no CRM.Por que não recebi um webhook?
Por que não recebi um webhook?
As causas mais comuns são uma URL que não usa HTTPS, um endpoint que não retorna
200 ou um servidor que atinge o tempo limite. Confirme que seu endpoint está acessível publicamente por HTTPS. Para uma solução de problemas mais ampla, consulte Tratamento de erros e Códigos de status.Próximos passos
Encontrar um e-mail
Passe uma URL de webhook nas settings para receber o resultado automaticamente.
Obter resultados em massa
Busque os resultados do lote após o disparo de um webhook bulk_search_finished.
Autenticação
Como passar sua chave de API no cabeçalho x-api-key.
Limites de taxa
Veja por que os webhooks evitam a cota de requisições que o polling consome.

