Como mudar
Comece com essas três alterações. Você encontrará os detalhes e exemplos de solicitações a seguir.
-
1 Obter uma chave de APICrie sua conta do Emailable e gere uma chave de API no painel. Use uma chave de teste enquanto configura tudo; as solicitações de teste não consomem créditos.
-
2 Atualizar o endpointEnvie o endereço de email e sua chave de API em uma única solicitação
GET. Você não precisará de um parâmetro de endereço IP nem de endpoints separados para verificações diferentes. -
3 Mapeie os campos de respostaO
statusdo ZeroBounce passa a serstatee osub_statuspassa a serreason. A maioria dos outros campos corresponde um a um.
Atualize sua integração com a API
Compare os formatos de solicitação e resposta e, em seguida, atualize os campos que seu aplicativo utiliza.
Solicitação de ZeroBounce
curl "https://api.zerobounce.net/v2/validate?email=john.doe@zerobounce.net&api_key=your_api_key&ip_address="
Resposta de ZeroBounce
{
"address": "john.doe@zerobounce.net",
"status": "valid",
"sub_status": "",
"free_email": false,
"catchall_domain": true,
"did_you_mean": null,
"account": "johndoe",
"domain": "zerobounce.net",
"domain_age_days": "3431",
"active_in_days": "30",
"active_first_seen": "2026-02-25",
"smtp_provider": "g-suite",
"mx_found": "true",
"mx_record": "aspmx.l.google.com",
"firstname": "dan",
"lastname": "cotet",
"gender": "male",
"country": null,
"region": null,
"city": null,
"zipcode": null,
"processed_at": "2026-06-18 07:05:00.033"
}
Solicitação do Emailable
curl "https://api.emailable.com/v1/verify?email=support@example.com&api_key=your_api_key"
Resposta do Emailable
{
"accept_all": false,
"did_you_mean": null,
"disposable": false,
"domain": "example.com",
"duration": 0.493,
"email": "support@example.com",
"first_name": null,
"free": false,
"full_name": null,
"gender": null,
"last_name": null,
"mailbox_full": false,
"mx_record": "mx.example.com",
"no_reply": false,
"reason": "accepted_email",
"role": true,
"score": 100,
"smtp_provider": null,
"state": "deliverable",
"tag": null,
"user": "support"
}
Solicitação de ZeroBounce
curl -X POST "https://api.zerobounce.net/v2/validatebatch" \
-H "Content-Type: application/json" \
-d '{
"api_key": "your_api_key",
"email_batch": [
{ "email_address": "john.doe@zerobounce.net", "ip_address": "1.1.1.1" },
{ "email_address": "invalid@example.com", "ip_address": "1.1.1.1" },
{ "email_address": "disposable@example.com", "ip_address": null }
],
"activity_data": true,
"verify_plus": true
}'
Resposta de ZeroBounce
{
"email_batch": [
{
"address": "john.doe@zerobounce.net",
"status": "valid",
"sub_status": "",
"free_email": false,
"catchall_domain": true,
"did_you_mean": null,
"account": "johndoe",
"domain": "zerobounce.net",
"domain_age_days": "3431",
"active_in_days": "30",
"active_first_seen": "2026-02-25",
"smtp_provider": "g-suite",
"mx_found": "true",
"mx_record": "aspmx.l.google.com",
"firstname": "dan",
"lastname": "cotet",
"gender": "male",
"country": null,
"region": null,
"city": null,
"zipcode": null,
"processed_at": "2026-06-18 07:05:00.033"
},
{
"address": "invalid@example.com",
"status": "invalid",
"sub_status": "mailbox_not_found",
"free_email": false,
"did_you_mean": null,
"account": null,
"domain": null,
"domain_age_days": "9692",
"active_in_days": "365",
"active_first_seen": "2026-02-25",
"smtp_provider": "example",
"mx_found": "true",
"mx_record": "mx.example.com",
"catchall_domain": false,
"firstname": "zero",
"lastname": "bounce",
"gender": "male",
"country": null,
"region": null,
"city": null,
"zipcode": null,
"processed_at": "2020-09-17 17:43:11.830"
},
{
"address": "disposable@example.com",
"status": "do_not_mail",
"sub_status": "disposable",
"free_email": false,
"did_you_mean": null,
"account": null,
"domain": null,
"domain_age_days": "9692",
"active_in_days": "365",
"active_first_seen": "2026-02-25",
"smtp_provider": "example",
"mx_found": "true",
"mx_record": "mx.example.com",
"catchall_domain": false,
"firstname": "zero",
"lastname": "bounce",
"gender": "male",
"country": null,
"region": null,
"city": null,
"zipcode": null,
"processed_at": "2020-09-17 17:43:11.830"
}
],
"errors": []
}
Solicitação do Emailable
curl -X POST "https://api.emailable.com/v1/batch" \
-H "Content-Type: application/json" \
-d '{
"api_key": "your_api_key",
"emails": [
"tim@smith.com",
"john@smith.com",
"support@emailable.com"
],
"url": "https://example.com/callback"
}'
Resposta do Emailable
{
"emails": [
{
"accept_all": false,
"did_you_mean": null,
"disposable": false,
"domain": "smith.com",
"email": "tim@smith.com",
"first_name": "Tim",
"free": false,
"full_name": "Tim",
"gender": "male",
"last_name": null,
"mailbox_full": false,
"mx_record": "mx.smith.com",
"no_reply": false,
"reason": "accepted_email",
"role": false,
"score": 100,
"smtp_provider": null,
"state": "deliverable",
"tag": null,
"user": "tim"
},
{
"accept_all": false,
"did_you_mean": null,
"disposable": false,
"domain": "smith.com",
"email": "john@smith.com",
"first_name": "John",
"free": false,
"full_name": "John",
"gender": "male",
"last_name": null,
"mailbox_full": false,
"mx_record": "mx.smith.com",
"no_reply": false,
"reason": "rejected_email",
"role": false,
"score": 0,
"smtp_provider": null,
"state": "undeliverable",
"tag": null,
"user": "john"
},
{
"accept_all": false,
"did_you_mean": null,
"disposable": false,
"domain": "emailable.com",
"email": "support@emailable.com",
"first_name": null,
"free": false,
"full_name": null,
"gender": null,
"last_name": null,
"mailbox_full": false,
"mx_record": "aspmx.l.google.com",
"no_reply": false,
"reason": "low_quality",
"role": true,
"score": 70,
"smtp_provider": "Google",
"state": "risky",
"tag": null,
"user": "support"
}
],
"id": "5cf6dd30093f96d2ac34bb0a",
"message": "Batch verification completed.",
"reason_counts": {
"accepted_email": 1,
"invalid_domain": 0,
"invalid_email": 0,
"invalid_smtp": 0,
"low_deliverability": 0,
"low_quality": 1,
"no_connect": 0,
"rejected_email": 1,
"timeout": 0,
"unavailable_smtp": 0,
"unexpected_error": 0
},
"total_counts": {
"deliverable": 1,
"processed": 3,
"risky": 1,
"total": 3,
"undeliverable": 1,
"unknown": 0,
"duplicate": 0
}
}
Como os endpoints de lote diferem
O endpoint em lote do ZeroBounce mantém a solicitação aberta até que todos os endereços sejam verificados, e a documentação deles indica os endpoints para arquivos em massa para quantidades superiores a 200 endereços. A API em lote do Emailable aceita até 50.000 endereços na solicitação e pode enviar os resultados para sua URL de retorno de chamada.
Contas Enterprise da Emailable podem solicitar lotes maiores entrando em contato com o suporte.
Como obter seus resultados
Para lotes da API, use o ID retornado para verificar o status ou adicione uma URL de retorno de chamada, e nós notificaremos seu aplicativo quando o processamento estiver concluído. Lotes com mais de 1.000 endereços retornam um link para download de um arquivo CSV.
curl "https://api.emailable.com/v1/batch?id=5cf6dd30093f96d2ac34bb0a&api_key=your_api_key"
For batches up to 1,000 addresses, add partial=true to the status request to read results while the batch is still verifying.
Listas únicas
Para uma lista de emails pontual, não use a API em lote e recorra ao Verificador em Massa no seu painel do Emailable. Faça o upload do arquivo por lá e, em seguida, exporte os resultados quando terminar.
Mapeie as respostas
A maior parte do conteúdo retornado por ZeroBounce possui um campo “Emailable” correspondente. Use essas tabelas para verificar o que mudou e o que permaneceu igual.
Do status ao estado
| Status do ZeroBounce | Estado do Emailable |
|---|---|
valid |
deliverable
|
invalid |
undeliverable
|
catch-all |
risky
|
do_not_mail |
risky
|
abuse |
|
spamtrap |
|
unknown |
unknown
|
Um traço significa que não há um estado “Emailable” correspondente. Use os indicadores de pontuação e risco para decidir como seu aplicativo deve lidar com esses endereços.
Sem estado equivalente
Spam trap lists are kept secret, so no verifier can identify them reliably. Read how to protect your list.
Mapeie os campos de resposta
| Campo do ZeroBounce | Campo do Emailable |
|---|---|
address |
email |
status |
state |
sub_status |
reason |
account |
user |
domain |
domain |
did_you_mean |
did_you_mean |
free_email |
free |
catchall_domain |
accept_all |
smtp_provider |
smtp_provider |
mx_record |
mx_record |
firstname |
first_name |
lastname |
last_name |
gender |
gender |
O Emailable também retorna esses campos, que não têm equivalente no ZeroBounce:
score
role
disposable
mailbox_full
no_reply
tag
Teste antes de mudar
Primeiro, conecte sua integração a uma chave de teste. Os endereços de teste do Emailable retornam resultados fixos, para que você possa testar todos os estados e atributos antes de colocar em produção, sem usar créditos.