Use case

Find work emails for the LinkedIn prospects you already picked

Turn LinkedIn profile URLs into email addresses as JSON, so a shortlist of prospects becomes a contact list you can load into your outreach tool.

Prepaid, no subscriptionREST or MCPOne key for models, data and agents
LinkedInlovelyjsonitems[0]"linkedin_url": "https://www.linkedin.…"email": "priya.nair@brightline…

You have a shortlist of the right people, with profile URLs and no way to reach them outside LinkedIn. Guessing addresses bounces and hurts your sending domain. Lovely Router looks up the email for each profile. Send profile URLs, get one JSON object per email, pay per email from a prepaid balance. Run it from a script or an AI agent between your prospecting step and your outreach tool.

Hand it to your AI agent

Copy this prompt into Claude Code, Cursor, Codex or any coding agent. It tells the agent where the docs are and how to use your API key.

Find work emails for the LinkedIn prospects you already picked. Use the Lovely Router data tools: each returns JSON and is billed per result.

- Docs (read first): https://lovelyrouter.com/docs/tools/find.md and https://lovelyrouter.com/docs/tools/run.md
- Plan first: POST https://lovelyrouter.com/v1/tools/suggest with `{"task": "<my task in plain words>"}` (free). It returns the tools to run in order, each with an example `input`, the `input_required` fields, an estimated cost and a ready-made `run` request. Replace the example values with my task's; if a field is unclear, read the tool with GET https://lovelyrouter.com/v1/tools/<id>. To browse instead, POST https://lovelyrouter.com/v1/tools/discover searches the catalog.
- Show me the plan and its estimated cost (`total_est_cost_usd`) before running anything large.
- Run: POST https://lovelyrouter.com/v1/tools/<id>/run with `{"input": {...}, "max_results": N}`. A 200 has the finished run with `items`; a 202 means it is still running, so poll the `poll` path until `status` is `succeeded`, `failed`, `timed_out` or `stopped`.
- Only delivered results are billed. Keep max_results small on the first run, check the output, then scale up.
- If you support MCP, connect https://lovelyrouter.com/mcp instead (Streamable HTTP, same key; https://lovelyrouter.com/docs/tools/mcp.md) and use suggest_tools, get_tool and run_tool.
- Auth: read my API key from the LOVELY_API_KEY environment variable and send it as `Authorization: Bearer $LOVELY_API_KEY`. Never print or commit the key. If it is not set, ask me to create one at https://lovelyrouter.com/app/keys.
- Billing is prepaid: every call is charged to my balance, so test with a small request before running anything large.
- Every docs page is plain Markdown; the full index is https://lovelyrouter.com/llms.txt.

My task: <the inputs (links, keywords or accounts) and how many results you need>
01

How it works

010203
  1. Start from a shortlist

    Collect LinkedIn profile URLs of people you have a real reason to contact.

  2. Run the tool with a cap

    Send the URLs in linkedinUrls to POST /v1/tools/linkedin-email-finder/run with max_results. The run holds its maximum cost from your balance.

  3. Verify before you send

    Pass the addresses through a verification step, then load only the valid ones into your outreach tool.

02

Find emails from profile URLs with one request

{}

Find email from a LinkedIn profile takes profile URLs in linkedinUrls. One address is one result, and one run reads up to 50 profiles:

curl https://lovelyrouter.com/v1/tools/linkedin-email-finder/run \
  -H "Authorization: Bearer $LOVELY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "input": {
        "linkedinUrls": [
            "https://www.linkedin.com/in/jane-doe-example"
        ]
    },
    "max_results": 3
}'

Only profiles where an address is found are returned. You are responsible for using people and contact data lawfully, including privacy and anti-spam rules in the countries of the people you contact. A run still going after 60 seconds returns 202; Run a tool shows how to poll.

03

What each email holds

Field groupWhat you get
ContactEmail address for the profile
SourceThe LinkedIn profile URL it belongs to

The tool returns the email and nothing about the person. To add name, headline and position, run the same URLs through linkedin-profile.

04

Recipes

Contact a shortlist

Take the 40 decision makers from an employee search, look up their emails in one run, and verify them before the first send.

Enrich inbound leads

When a signup gives you only a LinkedIn link, look up a work address to follow up by email.

Reach speakers or guests

Build a list of conference speakers or podcast guests from their profile URLs and find where to write.

Clean a half-filled CRM

Select contacts with a LinkedIn URL and no email, run them in batches of 50 and write the results back.

Cold outreach with care

Keep a note of where each address came from, and send only to people for whom your message is relevant.

Prefer plain words? Connect the MCP server and tell Claude Code or Cursor: "Read profiles.csv, look up the email for each LinkedIn URL with linkedin-email-finder, and give me a CSV of url and email. Set max_results to 30."

06

What you pay

You pay per email: starting a run holds its maximum cost, the per-call fee plus the per-email fee times max_results, and the run settles to what it returned. The rest of the hold goes back to your balance. A run that fails or times out pays only for the emails it delivered, and a run refused at the start costs nothing.

Looking up 100 profiles is billed by the emails the run returns, up to 100. There is no subscription and no monthly minimum: top up from $5, and one balance pays for tools and models. The card above shows today's price; pricing lists every tool.

07

Frequently asked questions

?
What do I need to provide?+

Only LinkedIn profile URLs, in linkedinUrls.

How many profiles can one run take?+

Up to 50 per run.

Is every profile guaranteed to return an email?+

No. A profile with no address found returns nothing, and you pay for the emails delivered.

Is it legal to email these people?+

That depends on where you and they are. You are responsible for using people and contact data lawfully, including privacy and anti-spam rules in the countries of the people you contact.

Do I need a subscription?+

No. You add credit to a prepaid balance and each run draws it down. Failed runs pay only for the results they delivered, and nothing renews automatically.

Putting together a prospecting flow? See lead generation, and the rest of the tool catalog. Run settings are in Run a tool.

One prepaid key for models, data and agents

No subscription. Top up, use what you need, see every charge in your logs.