Scravity

Company Email Finder

Find public emails for a company - Returns verified public email addresses for a given company domain.

5 credits/req 2.5

Overview

The Company Email Finder endpoint returns verified public email addresses associated with a company domain. Pass a domain, get emails — ready for outreach, lead generation, or CRM enrichment.

Who Is This For?

Role Use Case
Marketers Build targeted email lists from a list of company domains for outbound campaigns.
Lead Generation Teams Enrich prospect lists with verified contact points before handing off to sales.
Developers Integrate email discovery into CRMs, sales tools, or internal automation pipelines.

What You Can Build

  • Cold outreach automation — feed a list of domains, collect emails, plug them straight into your email sequences.
  • CRM enrichment pipeline — automatically fill missing contact fields when a new company is added to your CRM.
  • Lead qualification tool — verify a company has reachable contacts before your sales team spends time on it.
  • Prospecting dashboard — combine with the Company Directory endpoint to scrape industries and surface emails in one workflow.
  • Account-based marketing (ABM) lists — target specific companies with known, validated email addresses.

Endpoint

POST https://api.scravity.com/v1/email/company-email-finder

Cost: 5 credits per successful request  ·  Avg. Response Time: ~3.5s

Authentication

Include your API key as a Bearer token in every request.

Authorization: Bearer YOUR_API_KEY

Request Body

Parameter Type Required Description
domain string Yes The root domain of the target company (e.g., scravity.com).

Code Examples

cURL

curl -X POST https://api.scravity.com/v1/email/company-email-finder \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"domain": "scravity.com"}'

Python

import requests

url = "https://api.scravity.com/v1/email/company-email-finder"
headers = {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
}
payload = {"domain": "scravity.com"}

r = requests.post(url, json=payload, headers=headers)
print(r.json())

JavaScript

const res = await fetch("https://api.scravity.com/v1/email/company-email-finder", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({ domain: "scravity.com" })
});

const data = await res.json();
console.log(data);

Response Format

Success (200)

{
  "success": true,
  "domain": "scravity.com",
  "content": [...],
  "logs": []
}

No Emails Found (404)

{
  "success": false,
  "error": "Domain not found or no emails available",
  "domain": "example.com"
}

Insufficient Credits (402)

{
  "success": false,
  "error": "Insufficient credits",
  "details": ["You need at least 5 credits to perform this action. Current balance: 2."]
}

Validation Error (422)

{
  "detail": [
    {
      "loc": ["body", "domain"],
      "msg": "Field required",
      "type": "value_error.missing"
    }
  ]
}

Credits

Result Cost
Emails found 5 credits
No emails found (404) 0 credits
Repeated domain query (within 15 days) 0 credits

Rate Limits

Window Limit
Per second 2 requests
Per minute 120 requests

Tips

  • Always pass the root domain without protocol or path — use scravity.com, not https://scravity.com/about.
  • A 404 costs nothing — safe to probe domains without worrying about burning credits on empty results.
  • Querying the same domain within 15 days is free — useful when polling domains across multiple campaigns.
  • Check your balance first with GET /v1/credits before running bulk lookups.