Verificação em Lote
O endpoint de verificação em lote permite validar múltiplos endereços de email em uma única requisição. Ideal para limpar listas de contatos, validar importações de CSV ou processar filas de cadastros.
Endpoint
https://mail.flowsales.online/api/v1/verify/batch
Limite por requisição
Cada requisição batch aceita no máximo 50 emails. Para listas maiores, divida em múltiplas requisições ou utilize a verificação em lote via dashboard (upload de CSV).
Requisição
Envie um JSON com o campo emails contendo um array de endereços a serem verificados.
Body
{
"emails": [
"joao@empresa.com.br",
"maria@gmail.com",
"contato@loja.com",
"fake@dominioinvalido.xyz",
"temp@mailinator.com"
]
}
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
emails |
array | Sim | Array de endereços de email (mínimo 1, máximo 50). |
Exemplo de Requisição
curl -X POST https://mail.flowsales.online/api/v1/verify/batch \
-H "Authorization: Bearer fm_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ012345" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"emails": [
"joao@empresa.com.br",
"maria@gmail.com",
"contato@loja.com"
]
}'
Resposta
A resposta contém um objeto com metadados do lote e um array results
onde cada elemento segue o mesmo formato da verificação única.
{
"total": 3,
"summary": {
"deliverable": 2,
"undeliverable": 0,
"risky": 1,
"unknown": 0
},
"results": [
{
"email": "joao@empresa.com.br",
"verdict": "deliverable",
"score": 95,
"checks": {
"syntax": true,
"mx_records": true,
"smtp_valid": true,
"deliverable": true
},
"details": {
"domain": "empresa.com.br",
"username": "joao",
"free": false,
"disposable": false,
"role_account": false,
"catch_all": false,
"mx_host": "mx1.empresa.com.br",
"suggestion": null
},
"meta": {
"cached": false,
"latency_ms": 312,
"verified_at": "2026-03-01T14:30:00Z"
}
},
{
"email": "maria@gmail.com",
"verdict": "deliverable",
"score": 98,
"checks": {
"syntax": true,
"mx_records": true,
"smtp_valid": true,
"deliverable": true
},
"details": {
"domain": "gmail.com",
"username": "maria",
"free": true,
"disposable": false,
"role_account": false,
"catch_all": false,
"mx_host": "gmail-smtp-in.l.google.com",
"suggestion": null
},
"meta": {
"cached": true,
"latency_ms": 2,
"verified_at": "2026-03-01T10:15:00Z"
}
},
{
"email": "contato@loja.com",
"verdict": "risky",
"score": 45,
"checks": {
"syntax": true,
"mx_records": true,
"smtp_valid": true,
"deliverable": true
},
"details": {
"domain": "loja.com",
"username": "contato",
"free": false,
"disposable": false,
"role_account": true,
"catch_all": true,
"mx_host": "mx.loja.com",
"suggestion": null
},
"meta": {
"cached": false,
"latency_ms": 458,
"verified_at": "2026-03-01T14:30:01Z"
}
}
]
}
Campos da resposta
| Campo | Tipo | Descrição |
|---|---|---|
total |
integer | Quantidade total de emails verificados no lote. |
summary |
object | Contagem de resultados agrupados por veredito. |
results |
array | Array de resultados individuais, cada um no mesmo formato da verificação única. |
Verificação em Lote via Dashboard
Para listas maiores (acima de 50 emails), o FlowMail oferece verificação em lote diretamente pelo dashboard. Essa funcionalidade suporta volumes maiores e processamento assíncrono.
Upload de CSV
Faça upload de um arquivo CSV contendo uma coluna com os endereços de email. O sistema detecta automaticamente a coluna correta.
Colar lista
Cole diretamente uma lista de emails (um por linha) no campo de texto do dashboard. Prático para verificações rápidas de listas pequenas.
Nos dois métodos, o processamento ocorre em segundo plano. Você acompanha o progresso em tempo real no dashboard e recebe uma notificação quando a verificação do lote é concluída.
Erros Comuns
{
"error": {
"code": "validation_error",
"message": "O campo emails não pode ter mais de 50 itens.",
"details": {
"emails": ["O campo emails não pode ter mais de 50 itens."]
}
}
}
{
"error": {
"code": "validation_error",
"message": "O campo emails.2 deve ser um endereço de email válido.",
"details": {
"emails.2": ["O campo emails.2 deve ser um endereço de email válido."]
}
}
}