Enrichment
Decision makers
The right person at every company you target, by title, seniority, department and country.
You name the company. mySDR returns the people who hold the role you sell to. The person did not do anything: they work at a company you chose. For people who just did something, use Signals.
People at your companies: Search People with companies#
Say: "Find the CFO of Acme Analytics in Belgium."
MCP — search_people, on every connection. REST — POST /person/search, with every key.
{
"companies": [{ "domain": "acme-analytics.example" }],
"current_job_titles": ["CFO", "Head of Finance"],
"locations": ["Belgium"],
"limit": 5
}
Name up to 25 companies in companies, each by its domain, its LinkedIn company page (linkedin_url) or a cmp_… from a signal row (id), and say who you want there with the filters of Search People: current_job_titles, seniority_levels, functions, locations and more. With companies, current_job_titles and functions filter. A company where nobody holds that role returns status no_match and suggested_roles, other titles to try in a next call, at no extra cost. Each lead carries company_index, its place in companies, and companies in the response says per company what was found. A company that cannot be matched costs nothing.
A company you send by its domain is looked up first. If the source cannot reach one company (the lookup or the people search fails or times out), that company is retried on its own. The call still returns the people from the companies it could reach. companies[].status upstream_unavailable, and failed_companies with error.code upstream_unavailable, name the ones to retry later. Nothing is charged for those. The call is 503 service_unavailable with Retry-After only when every company fails, or when a search without companies fails upstream.
A company the source did search, where nobody holds the role you asked for, has companies[].status no_match. suggested_roles lists other titles to try (HR, sales, marketing, engineering, finance, operations, and CEO or Founder when the company is small or its size is not already known). That hint is free, and a company with no match costs nothing.
The top people of each company: per_company#
Say: "The CFO of each of these ten companies."
{
"companies": [{ "domain": "acme-analytics.example" }, { "linkedin_url": "https://www.linkedin.com/company/example-labs" }],
"functions": ["finance"],
"seniority_levels": ["cxo", "vice_president"],
"per_company": 1
}
Without per_company one call reads one page across all the companies, so a big company can fill it. With per_company the call searches in rounds, at most 4, and a company that has its people drops out of the next round, so a big company does not crowd out the others. It returns up to 100 people in one call, without a next page; a company the call did not get to says so in companies[].message.
Send all the companies of one request in one call, not one call per company. Each call that finds someone costs at least 3 credits, and each call that finds nobody counts toward the daily limit on empty searches. Ten companies with one CFO each are ten calls at the minimum, or one call that pays per lead.
What it costs#
You pay 1 credit per lead that comes back, and at least 3 credits for a search that finds someone: ask for the number of people you want in one call. limit (10 unless you say otherwise, at most 25, with per_company up to 100) caps what the call returns, and max_credits what it costs. For more, send next_cursor back. People at a company on your exclusions are left out and not charged (left_out.excluded).
The same search also works without companies: people by title, seniority, department, company size and place, anywhere. Without companies, titles rank the results and do not exclude, so a person with a different title can still appear. total_results says how many match.
A search that finds nobody is free, but such searches are limited: 20 a day for your organization, plus one for every 20 leads or companies your searches delivered that day (Search People and Search Companies count together). After that, a new search answers 429 empty_search_limit_reached until midnight in Brussels. Start broad and narrow down from the results.
Build a list of companies#
Before the people, you may need the companies.
- By name, free:
lookup_company(GET /companies/lookup) returns the LinkedIn pages whose name matches, so you can pick the right one between namesakes. - By name, industry, size, place or recent activity:
search_companies(Search Companies,POST /company/search). Filter on LinkedIn industry, company size, country or city, funding raised in the last 12 months, new senior leaders in the last 3 months and hiring on LinkedIn. 1 credit per company returned; a search by filters that returns a company costs at least 5 credits, so ask for the number of companies you want in one call. - Like a company you know: the same search with
similar_to, a LinkedIn company page or a domain. We read its industry, size and country and find companies with the same industry, a similar size and the same country; a filter you add replaces what we read. The company itself never comes back, and reading it is free. - By technology:
find_companies_using_technology(POST /technologies/companies), with every key: the companies whose job posts mention a technology, with the evidence per company, 3 credits per company. Find the slug of a technology for free withfind_technologies(GET /technologies).
The technology search is data about who uses a tool today. The Technology signal runs the same data as a signal search, for companies that just adopted it.
Then#
- Enrich only the people you keep: People enrichment.
- Save them to the Leads table with a note:
save_leadsorPOST /tables/leads.