ravn
Email finder API

Name + company in. Verified email out.

Give it "Jane Smith" and acme.com. Ravn works out how Acme writes its addresses, tries the likely ones and returns the one that checks out, with a confidence and the pattern it used.

Start free: 1,000 lookups Read the docs

How it works

What happens on every call.

The same tool answers over the REST API, the MCP server and the CLI.

  1. / 01

    Read the company’s own site

    Public addresses on the company website reveal its pattern: first.last, flast, first and so on.

  2. / 02

    Build candidates

    We generate the likely addresses for the name you gave, most likely first.

  3. / 03

    Verify each one

    Each candidate goes through the same checks as validate_email. Catch-all domains are marked as such, not passed off as certain.

  4. / 04

    Return one answer

    You get the best address, its risk score, the pattern and a confidence. If nothing checks out you get not_found and pay nothing.

Call it

One request. One answer shape.

Branch on status. A miss returns not_found and costs nothing. In Claude, just ask in plain English and it picks search_business_email_by_name for you.

curl https://api.askravn.com/v1/tools/search_business_email_by_name \
  -H "Authorization: Bearer $RAVN_API_KEY" \
  -d '{"name": "Jane Smith", "company": "acme.com"}'

{ "status": "ok",
  "results": { "email": "jane.smith@acme.com", "pattern": "first.last",
    "confidence": 0.97, "status": "valid", "risk_score": "A" } }
FAQ

Questions about search_business_email_by_name.

All questions →

Do I pay when no email is found?

No. A miss returns not_found and the lookup comes straight back.

Can I run it over a spreadsheet?

Yes: npx ravn enrich leads.csv --tool search_business_email_by_name --map name=Name,company=Website --dry-run, then drop --dry-run.

Does it scrape LinkedIn?

No. It uses the company’s own website and mail servers. For people profiles, see people search.

Is it accurate on catch-all domains?

On catch-all domains no service can prove a mailbox exists. We return the best pattern match and mark it risky so you can decide.