
Valid or deliverable status and score of one email address.
This API endpoint allows you to verify the deliverability of an email address.
Job email.verify
telipot run hunter.email.verify \
--input-json '{"email":"test@example.com"}' \
--quotePrice
$0.0123 / verificationPriced· before it runs
hunter.email.verify
$0.0123 / verificationYour plan
Whose account it uses
1The person asking
not needed2Your company’s Hunter plan
Selected identity for this example3Our account
not usedWhat it sends
{
"email": "test@example.com"
}Your Hunter login is added for you. Your AI never sees it.
What it costs
$0.0123
per verification · billed on success
| rate | 0.5 credits per verification, billed on success |
| source | docs · help.hunter.io/en/articles/1911617-how-do-credits-work-in-hunter · checked 2026-10-05 |
| confidence | documented |
| note | All-in-one plans: 0.5 credit per verified email; nothing when Hunter fails to verify (status unknown) or the address is disposable, and a repeat in one billing period is not charged again. Data Platform plans: 1 Verification credit. A 202 means the verification is still running: repeat the same call, it counts once. |
Preview the price first. --quote runs nothing.
For developers · run it
Shell · runs the task on the named account
telipot run hunter.email.verify \
--input-json '{"email":"test@example.com"}'string · required | The email address to verify. |
domain_metadata string | Any non-empty value adds meta.domain, company_name, following_domain and webmail about the address's domain. Listed in Hunter's OpenAPI, not on the docs page. |
data object | |
meta object |
Full output schema · JSONNested fields and constraints
Output JSON Schema
{
"type": "object",
"required": [
"meta"
],
"properties": {
"data": {
"type": "object",
"properties": {
"status": {
"type": "string",
"description": "valid, invalid, accept_all, webmail, disposable or unknown"
},
"score": {
"type": "integer"
},
"email": {
"type": "string"
},
"regexp": {
"type": "boolean"
},
"gibberish": {
"type": "boolean"
},
"disposable": {
"type": "boolean"
},
"webmail": {
"type": "boolean"
},
"mx_records": {
"type": "boolean"
},
"smtp_server": {
"type": "boolean"
},
"smtp_check": {
"type": "boolean"
},
"accept_all": {
"type": "boolean"
},
"block": {
"type": "boolean"
},
"result": {
"type": "string",
"description": "Deprecated; use status"
},
"verification": {
"type": "object",
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"status": {
"type": [
"string",
"null"
]
}
}
},
"sources": {
"type": "array",
"items": {
"type": "object",
"properties": {
"domain": {
"type": "string"
},
"uri": {
"type": "string"
},
"extracted_on": {
"type": "string"
},
"last_seen_on": {
"type": "string"
},
"still_on_page": {
"type": "boolean"
}
}
}
}
}
},
"meta": {
"type": "object",
"required": [
"params"
],
"properties": {
"params": {
"type": "object",
"properties": {
"email": {
"type": "string"
}
}
},
"message": {
"type": "string",
"description": "Present on a 202, while the verification is still running"
}
}
}
}
}A real answer
No example captured yet: one is recorded when telipot catalog verify passes.

