Search for contacts by LinkedIn, company identity, or persona filters.
output.persons is included directly in the response. There is no separate polling step.linkedin_url as the linkedin field in Contact Enrichment Launcher.
| Mode | Anchor field(s) |
|---|---|
| Single contact by LinkedIn | contact_linkedin |
| Company-specific search | domain or company_linkedin or company_name — find contacts at a specific company, filtered by title, department, seniority, location, and more |
| Company-set persona search | One of company_location_countries / company_industries / company_employee_ranges + an experience date + a title filter — discover personas across a set of companies |
To access the API, provide your API key in x-api-key.
Search Contact request payload with filters and pagination options.
Request payload for Search Contact.
Search mode must be one of: 1) contact_linkedin 2) company-specific search with one of domain, company_linkedin, company_name 3) company-set search with one of company_location_countries, company_industries, or
company_employee_ranges (and one of title_filters or
title_lists is required).
Domain where you want to search contacts.
4 - 500"waterfall.io"
Company LinkedIn URL/ID.
3 - 500"google"
Company name.
3 - 500"Google"
Personal LinkedIn URL/ID.
3 - 500"https://www.linkedin.com/in/johndoe/"
Names to exclude from results.
100Full name of the contact. Providing first_name and last_name is preferable when both are available.
250"John Doe"
["Bill Gates", "Steve Ballmer"]If provided, restrict results to these names.
100Full name of the contact. Providing first_name and last_name is preferable when both are available.
250"John Doe"
["Ada Lovelace", "Grace Hopper"]Boolean title filters.
5[
{
"name": "founders",
"filter": "founder OR co-founder OR ceo"
}
]Named lists of exact titles. Each entry in titles is matched exactly against the contact's title. Use title_filters instead for boolean/keyword matching.
5[
{
"name": "founders",
"titles": ["founder", "co-founder", "ceo"]
}
]Contact department filters.
["engineering", "marketing"]Contact seniority filters.
["manager", "director"]Contact location countries.
50Country of the contact's current address. Use full country names (for example, United States or France).
1 - 200"United States"
["United States", "Canada"]Company location countries.
50Country of the contact's current address. Use full country names (for example, United States or France).
1 - 200"United States"
["United States", "Canada"]Company industries.
50[
"software development",
"information technology"
]Company employee size ranges.
8LinkedIn employee-size bucket.
1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+ ["201-500", "501-1000"]Headline filter applied to profile headline text.
3 - 500"demand generation"
Page number for paginated Search Contact results.
1 <= x <= 1001
Number of contacts to return per page in Search Contact.
1 <= x <= 25010
Any custom key-value pairs echoed back in the Prospector Finder output (useful for correlating internal source metadata).
{
"tenantId": "0e9d26b7-cdb5-4d95-b248-59ac389d2e8a",
"workflowId": "ProspectFromWaterfall:23ed5bc8-a976-4ee0-b644-f0eb2db6e3ad:c268355e-a256-4593-a216-009a2463cee4",
"waterfallRequestId": "1b49c542-f47a-406b-a95f-a1859d1461af"
}Search Contact result returned successfully.
Search Contact response with job state, input, and optional output.
The status of the job.
RUNNING, SUCCEEDED, FAILED, TIMED_OUT, ABORTED "RUNNING"
A date time in ISO 8601 format.
"2025-02-05T15:46:35.771Z"
{
"task": {
"domain": "waterfall.io",
"page_number": 1,
"page_size": 10,
"job_id": "7d44db58-5de3-4e92-a2fb-8325d12c2e8b",
"context_id": "7d44db58-5de3-4e92-a2fb-8325d12c2e8b"
}
}A date time in ISO 8601 format.
"2025-02-05T15:46:35.771Z"
Search Contact output payload.
{ "persons": [] }