EasyEmailFinder API
Programmatic access to business search, email enrichment, and lead generation.
Base URL: https://easyemailfinder.com/api/v1
Authentication
All API requests require a Bearer token in the Authorization header. Generate API keys from the Developer Dashboard.
curl https://easyemailfinder.com/api/v1/balance \ -H "Authorization: Bearer eef_live_your_key_here"
Rate Limits
Standard endpoints
60 req/min
Search, balance, usage
Enrich endpoints
10 req/min
Enrich, batch enrich, search+enrich
When rate limited, the response includes a Retry-After header with the number of seconds to wait.
Endpoints
/api/v1/searchSearch for businesses by query. Returns names, addresses, phone numbers, and websites — but no emails. Use the enrich endpoint to get emails. Set mode to "digital" to search for online-only businesses (SaaS, agencies, etc.) instead of local businesses.
Request body:
{
"query": "dentists in denver",
"pageToken": null,
"mode": "local" // "local" (default) or "digital"
}Response:
{
"data": {
"businesses": [
{
"placeId": "ChIJ...",
"name": "Denver Family Dentistry",
"address": "123 Main St, Denver, CO",
"phone": "(303) 555-0100",
"website": "https://denverfamilydentistry.com",
"rating": 4.8,
"userRatingCount": 245,
"primaryType": "dentist",
"types": ["dentist", "health"]
}
],
"nextPageToken": "abc123...",
"totalReturned": 20
},
"meta": { "requestId": "req_a1b2c3", "creditsUsed": 0 }
}/api/v1/enrichScrape a website for email addresses, tech stack info, and social media links.
Request body:
{
"website": "https://denverfamilydentistry.com"
}Response:
{
"data": {
"website": "https://denverfamilydentistry.com",
"emails": ["info@denverfamilydentistry.com"],
"techStack": "wordpress",
"socialLinks": {
"facebook": "https://facebook.com/dfdenver",
"instagram": "https://instagram.com/dfdenver"
},
"pagesScraped": 5
},
"meta": {
"requestId": "req_d4e5f6",
"creditsUsed": 1,
"remainingCredits": 94.75
}
}/api/v1/enrich-batchEnrich up to 20 websites in one request. Credits are deducted upfront for all websites.
Request body:
{
"websites": [
"https://denverfamilydentistry.com",
"https://example-plumber.com"
]
}Response:
{
"data": {
"results": [
{
"website": "https://denverfamilydentistry.com",
"emails": ["info@denverfamilydentistry.com"],
"techStack": "wordpress",
"socialLinks": {},
"pagesScraped": 5
}
]
},
"meta": {
"requestId": "req_g7h8i9",
"creditsUsed": 2,
"remainingCredits": 92.75
}
}/api/v1/search-and-enrichCombined endpoint: search for businesses and enrich their websites in one call. Only businesses with websites are enriched. Set mode to "digital" to search for online-only businesses.
Request body:
{
"query": "dentists in denver",
"limit": 20,
"mode": "local" // "local" (default) or "digital"
}Response:
{
"data": {
"results": [
{
"placeId": "ChIJ...",
"name": "Denver Family Dentistry",
"address": "123 Main St, Denver, CO",
"website": "https://denverfamilydentistry.com",
"emails": ["info@denverfamilydentistry.com"],
"techStack": "wordpress",
"socialLinks": {}
}
],
"query": "dentists in denver",
"totalReturned": 20
},
"meta": {
"requestId": "req_j0k1l2",
"creditsUsed": 20,
"remainingCredits": 72.75
}
}/api/v1/balanceCheck your current credit balance.
Response:
{
"data": {
"credits": 94.75,
"emailCredits": 379,
"costPerEmail": 0.25
},
"meta": {
"requestId": "req_m3n4o5",
"remainingCredits": 94.75
}
}/api/v1/usage?days=7View API usage breakdown by day.
Response:
{
"data": {
"days": 7,
"totalCreditsUsed": 25.5,
"totalRequests": 102,
"daily": [
{ "date": "2026-02-20", "credits": 5.0, "requests": 20 },
{ "date": "2026-02-21", "credits": 8.25, "requests": 33 }
]
},
"meta": { "requestId": "req_p6q7r8" }
}Error Codes
| Code | HTTP Status | Description |
|---|---|---|
UNAUTHORIZED | 401 | Missing, invalid, or revoked API key |
RATE_LIMITED | 429 | Too many requests. Check Retry-After header. |
INSUFFICIENT_CREDITS | 402 | Not enough credits. Purchase more at /developer. |
INVALID_REQUEST | 400 | Missing or invalid request parameters |
INTERNAL_ERROR | 500 | Unexpected server error |
All errors follow this format:
{
"error": {
"code": "INSUFFICIENT_CREDITS",
"message": "Not enough credits. 1 credit required per enrichment."
},
"meta": { "requestId": "req_abc123" }
}Credit Costs
| Endpoint | Cost | Notes |
|---|---|---|
| /v1/search | Free | Search is the funnel top |
| /v1/enrich | 1 credit | Per website ($0.25) |
| /v1/enrich-batch | 1 credit/website | Max 20 per batch, deducted upfront |
| /v1/search-and-enrich | 1 credit/result | Max 60 results |
| /v1/balance | Free | |
| /v1/usage | Free |
Purchase credits from the Developer Dashboard or the main app. Credits are shared between the app and the API.
OpenClaw Integration
Easy Email Finder ships with an OpenClaw skill, so AI agents running on OpenClaw can search for businesses and enrich them with emails using your API key.
Install the skill:
# Copy into your OpenClaw skills directory cp -r openclaw-skill/ ~/.openclaw/skills/easy-email-finder/
Configure your API key:
// ~/.openclaw/openclaw.json
{
"skills": {
"entries": {
"easy-email-finder": {
"enabled": true,
"apiKey": "eef_live_your_key_here"
}
}
}
}Once installed, your OpenClaw agent can use natural language like "find dentists in Denver and get their emails" and it will call the API endpoints automatically.