Skip to content

Endpoints

MethodPathWhat it doesBilled
POST/v1/checkCheck one address1 email
GET/v1/check?email=...Same, using the query string1 email
POST/v1/check/bulkCheck up to 1,000 addresses1 per address answered
POST/v1/feedbackReport what happened to a checked addressFree
GET/v1/modelLive accuracy of the modelFree

POST /v1/check

FieldTypeRequiredDescription
emailstringYesThe address to check. Max 254 characters.
ipstringNoThe user's public IP (IPv4 or IPv6). Adds cloud-server, Tor and same-IP checks. Never stored.
explainbooleanNotrue adds an evidence list showing how each signal moved the score.

Prefer POST over GET: addresses then stay out of URLs and server logs. The GET version takes the same fields as query parameters.

POST /v1/check/bulk

{ "emails": ["a.lee@gmail.com", "not-an-email", "test@mailinator.com"] }

Returns one entry per input, in the same order. An invalid input returns an error entry instead of failing the whole request:

{
  "results": [
    { "email": "a.lee@gmail.com", "human_score": 94, "verdict": "allow", "...": "..." },
    { "input": "not-an-email", "error": "not a valid email address" },
    { "email": "test@mailinator.com", "human_score": 0, "verdict": "block", "...": "..." }
  ]
}

Addresses are checked in parallel, and addresses at the same domain share one lookup, so a bulk call is much faster than many single calls.

POST /v1/feedback

{ "check_id": "chk_AXDmekmC35NL1mpGtCtC...", "outcome": "fake" }

Or skip the check_id and send the address. It labels your latest check of that inbox:

{ "email": "maria.santos@gmail.com", "outcome": "confirmed" }

Returns 202 Accepted. See Teach the model with feedback.

GET /v1/model

Shows how accurate the model is, measured on real feedback before the model learned from each example. Example response (your numbers will differ):

{
  "mode": "auto",
  "serving": "baseline",
  "healthy": false,
  "learned_version": 12,
  "feedback_examples": 140,
  "customers": 3,
  "baseline": { "accuracy": 0.91, "log_loss": 0.27, "recent_log_loss": 0.25 },
  "learned":  { "accuracy": 0.93, "log_loss": 0.22, "recent_log_loss": 0.21 },
  "recommendation": "keep collecting feedback"
}

Ready to try it? 1,000 free checks a month. See the quick start or pricing.

Get free API key