Pass your API key in the X-API-Key header. Get one from API Keys.
curl -X POST https://byndemr.com/api/v1/verify \
-H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" \
-d '{"email":"name@company.com"}'
Returns status (valid · invalid · catch_all · unknown · disposable · role), score (0–100), and flags (free_email, role, disposable, accept_all, mx_record, did_you_mean).
curl -X POST https://byndemr.com/api/v1/verify/batch \
-H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" \
-d '{"emails":["a@x.com","b@y.com"]}'
curl -X POST https://byndemr.com/api/v1/find \
-H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" \
-d '{"first_name":"Jane","last_name":"Doe","domain":"company.com"}'
# → { "found": true, "email": "jane.doe@company.com", "status": "valid", "score": 95 }
# or { "found": false, "status": "catch_all", "best_guess": "jane.doe@company.com" }
Generates the common corporate patterns, probes the MX, and returns the address the server accepts. This is the endpoint the scheduler uses to turn scraped prospects (name + domain) into verified emails.
curl -X POST https://byndemr.com/api/v1/jobs \
-H "X-API-Key: YOUR_KEY" -H "Content-Type: application/json" \
-d '{"name":"list","emails":["a@x.com","b@y.com"]}'
# → { "job": { "id": 1, "status": "pending", ... } }
curl https://byndemr.com/api/v1/jobs/1 -H "X-API-Key: YOUR_KEY"
curl "https://byndemr.com/api/v1/jobs/1/results?format=csv" -H "X-API-Key: YOUR_KEY"
curl https://byndemr.com/api/v1/credits -H "X-API-Key: YOUR_KEY"