New Playbook: Cold Email Infrastructure Setup Guide

Read Now arrow_forward
Mailsfinder Mailsfinder
Mailsfinder Mailsfinder
Pricing
Compare
Contact
Log In Start Free Trial

API Documentation

The Mailsfinder API lets you find and verify B2B email addresses programmatically. Integrate email finding and verification into your CRM, sales workflows, or custom applications.

link

Base URL

server.mailsfinder.com

lock

Auth

Bearer API Key

data_object

Format

JSON

api

Endpoints

4 endpoints

Authentication

All API requests require a Bearer token in the Authorization header. Get your API key from your Mailsfinder dashboard under Account → API.

Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
POST

Email • Find

Find an email by name and domain.

https://server.mailsfinder.com/api/access-key/email/findEmail

Request body

FieldRequiredDescription
first_nameYesPerson's first name
last_nameYesPerson's last name
domainYesCompany domain
curl -X POST "https://server.mailsfinder.com/api/access-key/email/findEmail" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "first_name": "John",
  "last_name": "Doe",
  "domain": "example.com"
}'
await fetch("https://server.mailsfinder.com/api/access-key/email/findEmail", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "first_name": "John",
    "last_name": "Doe",
    "domain": "example.com"
  })
})
import requests

r = requests.post(
    "https://server.mailsfinder.com/api/access-key/email/findEmail",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "first_name": "John",
        "last_name": "Doe",
        "domain": "example.com"
    }
)
print(r.json())

Response

FieldTypeDescription
emailstringFound email address
statusstringVerification status (Valid, Invalid, Unknown)
confidencenumberConfidence score (0-100)
domainstringCompany domain
timenumberProcessing time (ms)
200 We found the email successfully. 400 Missing required fields. 401 Not logged in. 500 Server error.
POST

Email • Find Bulk

Find emails in bulk. Send an array of objects with first_name, last_name, and domain.

https://server.mailsfinder.com/api/access-key/email/findBulkEmail

Request body

FieldRequiredDescription
items[]YesArray of objects with first_name, last_name, domain
curl -X POST "https://server.mailsfinder.com/api/access-key/email/findBulkEmail" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '[
  {
    "domain": "example.com",
    "first_name": "John",
    "last_name": "Doe"
  },
  {
    "domain": "example.com",
    "first_name": "Jane",
    "last_name": "Smith"
  }
]'
await fetch("https://server.mailsfinder.com/api/access-key/email/findBulkEmail", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify([
    { "domain": "example.com", "first_name": "John", "last_name": "Doe" },
    { "domain": "example.com", "first_name": "Jane", "last_name": "Smith" }
  ])
})
import requests

r = requests.post(
    "https://server.mailsfinder.com/api/access-key/email/findBulkEmail",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json=[
        {"domain": "example.com", "first_name": "John", "last_name": "Doe"},
        {"domain": "example.com", "first_name": "Jane", "last_name": "Smith"}
    ]
)
print(r.json())
200 All emails were processed. 400 List is incorrect or incomplete. 401 Not logged in. 429 Too many requests at once. 500 Error processing emails.
POST

Email • Verify

Verify a single email address.

https://server.mailsfinder.com/api/access-key/email/verifyEmail

Request body

FieldRequiredDescription
emailYesEmail address to verify
curl -X POST "https://server.mailsfinder.com/api/access-key/email/verifyEmail" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "john.doe@example.com"
}'
await fetch("https://server.mailsfinder.com/api/access-key/email/verifyEmail", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "email": "john.doe@example.com"
  })
})
import requests

r = requests.post(
    "https://server.mailsfinder.com/api/access-key/email/verifyEmail",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={"email": "john.doe@example.com"}
)
print(r.json())

Response

FieldTypeDescription
emailstringEmail address verified
statusstringVerification result (Valid, Invalid, Unknown)
domainstringEmail domain
timenumberProcessing time (ms)
200 Email checked successfully. 400 Email not included. 401 Not logged in. 422 Incorrect email format. 500 Mail server did not respond.
POST

Email • Verify Bulk

Verify a list of email addresses in bulk.

https://server.mailsfinder.com/api/access-key/email/verifyBulkEmail

Request body

FieldRequiredDescription
emails[]YesArray of email address strings
curl -X POST "https://server.mailsfinder.com/api/access-key/email/verifyBulkEmail" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "emails": [
    "john.doe@example.com",
    "jane.smith@example.com"
  ]
}'
await fetch("https://server.mailsfinder.com/api/access-key/email/verifyBulkEmail", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "emails": [
      "john.doe@example.com",
      "jane.smith@example.com"
    ]
  })
})
import requests

r = requests.post(
    "https://server.mailsfinder.com/api/access-key/email/verifyBulkEmail",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "emails": [
            "john.doe@example.com",
            "jane.smith@example.com"
        ]
    }
)
print(r.json())
200 All emails were checked. 400 Email list is missing or incorrect. 401 Not logged in. 429 Too many emails too fast. 500 Verification failed due to server issues.

Status Codes

CodeMeaningAction
200SuccessRequest processed. Parse the response JSON.
400Bad RequestCheck required fields. Ensure JSON is valid.
401UnauthorizedCheck your API key. Make sure it's in the Authorization header.
422UnprocessableEmail format is invalid. Check the address.
429Rate LimitedToo many requests. Wait and retry with backoff.
500Server ErrorSomething went wrong on our side. Retry after a moment.

Rate Limits

API rate limits depend on your plan. If you hit a rate limit, you'll receive a 429 response. Wait and retry with exponential backoff.

Free Plan

100

credits per day

Pro Plan

10,000

credits per month

Agency+ Plans

100,000+

credits per month

Need higher limits? Talk to sales for custom API access.

Ready to integrate?

Get your API key from the Mailsfinder dashboard and start finding and verifying emails programmatically. 100 free credits daily, no credit card required.

Get API Key arrow_forward