Contact Search API

Search any contact, at any company

Get their full profile

Input type

You Input

curl --request POST \
  --url https://api.waterfall.io/v1/search/contact \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: YOUR_API_KEY' \
  --data '{
  "domain": "acme.com",
  "title_filters": [
    { "name": "founders", "filter": "founder OR co-founder OR ceo" }
  ],
  "page_number": 1,
  "page_size": 10
}'

Your Receive

{
  "status": "SUCCEEDED",
  "output": {
    "persons": [
      {
        "first_name": "Jane",
        "last_name": "Doe",
        "linkedin_url": "https://www.linkedin.com/in/jane-doe-abc123/",
        "title": "Head of Sales",
        "seniority": "Director",
        "department": "Sales",
        "company_name": "Acme Corp",
        "company_domain": "acme.com",
        "location": "San Francisco, California, United States"
      }
    ]
  }
}

You Input

curl --request POST \
  --url https://api.waterfall.io/v1/search/contact \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: YOUR_API_KEY' \
  --data '{
  "company_linkedin": "acme-corp",
  "title_filters": [
    { "name": "revops", "filter": "revenue operations OR sales ops" }
  ],
  "page_number": 1,
  "page_size": 25
}'

Your Receive

{
  "status": "SUCCEEDED",
  "output": {
    "persons": [
      {
        "first_name": "Sam",
        "last_name": "Patel",
        "linkedin_url": "https://www.linkedin.com/in/sam-patel-9f2a/",
        "title": "Director, Revenue Operations",
        "seniority": "Director",
        "department": "Sales",
        "company_name": "Acme Corp",
        "company_linkedin_id": "acme-corp"
      }
    ]
  }
}

You Input

curl --request POST \
  --url https://api.waterfall.io/v1/search/contact \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: YOUR_API_KEY' \
  --data '{
  "domain": "acme.com",
  "contact_full_name": "Jane Doe",
  "page_number": 1,
  "page_size": 10
}'

Your Receive

{
  "status": "SUCCEEDED",
  "output": {
    "persons": [
      {
        "first_name": "Jane",
        "last_name": "Doe",
        "linkedin_url": "https://www.linkedin.com/in/jane-doe-abc123/",
        "title": "Head of Sales",
        "seniority": "Director",
        "department": "Sales",
        "company_name": "Acme Corp",
        "company_domain": "acme.com"
      }
    ]
  }
}
Methodology

What makes Waterfall different

Flexible Inputs with Maximum Coverage

Coverage

Search across our database of 750M+ profiles using whatever identifier you have - social profiles, name + domain, business or personal email. Unlike platforms with limited search options, we'll find job changes from any starting point you provide.

Scalable search

Accuracy

Flexible search to fill missing fields for a profile.

Pay Only for Matching Profiles

Pricing

We offer outcome-based pricing — Waterfall deducts credits only when we return a matching profile, even though we incur costs querying our vendors on every request. Searches that come back empty are free, and one credit covers the whole waterfall however many sources it takes to resolve the identifier you sent.

Customers

Hear what our customers say about us

Stop comparing vendors on their numbers. Run the benchmark on yours.

Three commercial reasons to start

  • Flexible Commercials

  • Best International Coverage

  • High Data Accuracy

Three technical reasons to start

  • One single API

  • Unified Response & Request structure

  • Sync & Async solution

What teams build with the Contact Search API

CRM Profile Completion

Fill in missing data points and complete partial profiles in your CRM with verified, up-to-date information

FAQ

How is Contact Search priced?

Outcome-based. A credit is deducted only when we return a matching profile — an empty search is free — and one credit covers the whole waterfall regardless of how many sources it took to resolve the identifier. Rates depend on committed volume and are quoted against your own data rather than a list price.

What can I search by?

A social profile URL, a name plus domain, or an email — business or personal. Most tools require the identifier they happen to index; the point of a search layer is that you use whichever one your record actually contains.

Can you resolve a personal email to a business profile?

Yes, and it is one of the most common reasons teams use this endpoint. Self-serve signups arrive with personal addresses; resolving those to a company, a title and a seniority is what makes PLG routing and scoring possible at all. Send us 5,000 recent signups and we will show you how many of them we can place, on your data rather than a sample of ours.

Is search the same thing as enrichment?

Related, but not the same. Enrichment starts from a known person and fills in missing fields. Search starts from a partial identifier and finds the person first. Most teams use both: search to establish who this is, enrichment to complete the record once it is resolved.

Book a call to hear more

Every company has different needs. Talk to our team (most likely one of the founders) to share your use case and see how Waterfall can help.