1. People Search
Enrich API
  • Introduction
  • Quickstart
  • API Reference
  • Credits & Pricing
  • Rate Limits
  • Authentication
  • Company Followers
    • Count Estimation
      • Start count estimation
      • Get estimation status/results
    • Start company follower scrape
      POST
    • Check scrape progress
      GET
    • Get scrape results
      GET
    • Export results as CSV
      GET
    • Check daily scraping limit
      GET
  • Email Validation
    • Validate a single email
      POST
    • Validate emails in batch
      POST
    • Check batch validation progress
      GET
    • Get batch validation results
      GET
  • Email Finder
    • Find a professional email
      POST
    • Find emails in batch
      POST
    • Check batch finder progress
      GET
    • Get batch finder results
      GET
  • Phone Finder
    • Find phone numbers
      GET
    • Find phone numbers in batch
      POST
    • Check bulk phone lookup progress
      GET
    • Get bulk phone lookup results
      GET
  • Reverse Email Lookup
    • Look up professional profiles in batch
    • Look up a professional profile by email
    • Check bulk lookup progress
    • Get bulk lookup results
  • Wallets
    • Get your credit balance
    • Get transaction history
  • Teams
    • List team members
    • Invite someone to your team
    • List pending invitations
    • Cancel a pending invitation
  • Webhooks
    • Email Validation: per-result callback
    • Email Validation: batch completion callback
    • Email Finder: per-result callback
    • Email Finder: batch completion callback
    • Phone Finder: per-result callback
    • Phone Finder: batch completion callback
    • Reverse Lookup: per-result callback
    • Reverse Lookup: batch completion callback
    • Company Followers: per-result callback
    • Company Followers: completion callback
  • Lead Finder
    • Search leads
    • Export leads to CSV (async)
    • Count matching leads
    • Reveal contact info
    • Enrich contacts with specific fields
    • Unlock full last names
    • List saved searches
    • Save a search
    • Delete a saved search
    • Get filter options
    • Suggest company names
    • Poll reveal/enrich job
    • List reveal/enrich jobs
    • List export jobs
    • Poll export job status
    • Download export CSV
  • People Search
    • Cascading ICP people search
      POST
    • Find employees at a company
      POST
  • Schemas
    • Schemas
      • EnrichmentMeta
      • BatchResultsMeta
      • EmailValidationRequest
      • BatchEmailValidationRequest
      • EmailValidationResult
      • EmailValidationResponse
      • EmailValidationBatchResultsResponse
      • EmailFinderRequest
      • Lead
      • BatchEmailFinderRequest
      • EmailFinderResult
      • EmailFinderResponse
      • EmailFinderBatchResultsResponse
      • BatchSubmitData
      • BatchSubmitResponse
      • BatchStatusData
      • BatchStatusResponse
      • LookupRequest
      • StartEndDate
      • EducationHistoryItem
      • PositionHistoryItem
      • ReverseLookupResult
      • ReverseLookupResponse
      • BulkLookupResultsResponse
      • PhoneBatchRequest
      • PhoneLookupResult
      • PhoneLookupResponse
      • PhoneBulkJobSubmitData
      • PhoneBulkJobSubmitResponse
      • PhoneBulkJobStatusData
      • PhoneBulkJobStatusResponse
      • PhoneBulkResultItem
      • PhoneBulkJobResultsResponse
      • WalletBalance
      • WalletBalanceResponse
      • WalletTransaction
      • Pagination
      • WalletTransactionsResponse
      • TeamMember
      • Invitation
      • InviteBody
      • TeamMemberListResponse
      • InvitationResponse
      • InvitationListResponse
      • SuccessOperationResponse
      • WebhookEmailValidationResult
      • WebhookEmailFinderResult
      • WebhookPhoneResult
      • WebhookReverseLookupResult
      • WebhookEmailValidationCompletion
      • WebhookEmailFinderCompletion
      • WebhookPhoneCompletion
      • WebhookReverseLookupCompletion
      • CompanyFollowerRequest
      • StartCompanyFollowerResponse
      • StartCompanyFollowerData
      • CompanyFollowerProgressResponse
      • CompanyFollowerProgressData
      • CompanyFollowerResultsResponse
      • CompanyFollowerResultsData
      • FollowerProfile
      • CountEstimateRequest
      • StartCountEstimateResponse
      • StartCountEstimateData
      • CountEstimateStatusResponse
      • CountEstimateStatusData
      • CountEstimateResultData
      • FunctionBreakdownItem
      • SeniorityBreakdownItem
      • WebhookCompanyFollowerResult
      • WebhookCompanyFollowerCompletion
    • Response
      • BadRequest
      • Unauthorized
      • InsufficientCredits
      • NotFound
      • RateLimited
      • InternalError
    • ErrorEnvelope
    • BatchSubmitMeta
    • AsyncExportResponse
    • LeadExportJobProgress
    • LeadExportJobStatusResponse
    • LeadExportJobSummary
    • LeadExportJobListResponse
    • BulkLookupRequest
    • RevealJobSubmitResponse
    • BulkLookupSubmitData
    • RevealJobPollResponse
    • BulkLookupResponse
    • RevealJobSummary
    • RevealJobListResponse
    • LeadFinderSearchFilters
    • LeadSearchPreviewResult
    • LeadFinderPagination
    • LeadSearchRequest
    • LeadSearchResponse
    • LeadCountRequest
    • LeadCountResponse
    • LeadExportRequest
    • LeadRevealRequest
    • RevealedContact
    • LeadRevealResponse
    • LeadEnrichRequest
    • LeadEnrichResult
    • LeadEnrichResponse
    • UnlockNamesRequest
    • UnlockNamesResponse
    • SavedSearchItem
    • SavedSearchCreateRequest
    • SavedSearchListResponse
    • SavedSearchResponse
    • LeadFinderFilterOptionsResponse
    • LeadFinderSuggestResponse
    • LeadFinderDeletedResponse
    • AccessDeniedResponse
  1. People Search

Cascading ICP people search

POST
/people-search/waterfall-icp-search
Search for people at a specific company using cascading ICP (Ideal Customer Profile) filter levels.
How it works:
1.
Provide a company LinkedIn URL to target
2.
Optionally define 1-10 cascade levels, each with independent ICP criteria. If omitted, a default 4-level cascade is used: CEO/Founder → C-Suite → VP → Director.
3.
Levels are processed in order — results from earlier levels are excluded from later ones
4.
Each candidate is scored against the ICP criteria of their matching cascade level
5.
Results are returned sorted by score descending
Scoring: Each candidate gets a normalized 0-100 score based on title match (30pts), job level (20pts), skills overlap (15pts), location match (15pts), current job status (10pts), profile completeness (5pts), tenure (5pts), and optional seniority priority bonus (0-30pts). The score is normalized against only the dimensions specified in the cascade level.
Credits: 1 credit per profile returned. No charge if 0 results.

Request

Authorization
API Key
Add parameter in header
x-api-key
Example:
x-api-key: ********************
or
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Body Params application/json

Examples

Responses

🟢200
application/json
Search completed successfully. Results are sorted by ICP score descending.
Headers

Body

🟠400
🟠401
🟠402
🟠429
🔴500
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://dev.enrich.so/api/v3/people-search/waterfall-icp-search' \
--header 'x-api-key: <api-key>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "company_linkedin_url": "https://www.linkedin.com/company/google/",
    "cascade": [
        {
            "include_title": [
                "CTO",
                "VP Engineering"
            ],
            "exclude_title": [
                "Intern",
                "Associate"
            ],
            "job_levels": [
                "C-Level",
                "VP"
            ],
            "job_functions": [
                "Engineering",
                "Technology"
            ],
            "skills": [
                "Python",
                "Machine Learning"
            ],
            "location": [
                "US",
                "UK"
            ],
            "include_headline_search": false,
            "priority_bonus": 0
        }
    ],
    "max_results": 25,
    "min_score": 0
}'
Response Response Example
200 - Basic: C-suite at Google
{
    "success": true,
    "data": {
        "results": [
            {
                "person": {
                    "first_name": "John",
                    "last_name": "Doe",
                    "linkedin_url": "https://www.linkedin.com/in/johndoe",
                    "linkedin_headline": "CTO at Google",
                    "location": "San Francisco, California, United States",
                    "email_domain": "google.com"
                },
                "current_position": {
                    "title": "CTO",
                    "company": "Google",
                    "level": "C-Level",
                    "function": "Engineering",
                    "is_current": true,
                    "start_date": "2020-01-15"
                },
                "skills": [
                    "Python",
                    "Machine Learning",
                    "Cloud Architecture"
                ],
                "education": "Stanford University",
                "certifications": null,
                "score": 92,
                "ranking": 1,
                "cascade_level": 0,
                "ranking_factors": {
                    "title_match": 30,
                    "job_level": 20,
                    "skills_overlap": 10,
                    "location_match": 15,
                    "current_job": 10,
                    "profile_completeness": 5,
                    "experience": 5,
                    "priority_bonus": 0
                },
                "what_matched": [
                    "Exact title match: CTO",
                    "Exact level: C-Level",
                    "Skills: 2/3 matched",
                    "Country match: United States",
                    "Current position"
                ]
            }
        ],
        "total_found": 47,
        "total_returned": 10,
        "cascade_stats": [
            {
                "level": 0,
                "candidates_found": 35,
                "candidates_kept": 8
            },
            {
                "level": 1,
                "candidates_found": 12,
                "candidates_kept": 2
            }
        ]
    },
    "meta": {
        "requestId": "1123c535-e925-4224-b5fb-3d579b75b849",
        "creditsUsed": 10,
        "creditsRemaining": 999990
    }
}
Modified at 2026-02-24 12:39:25
Previous
Download export CSV
Next
Find employees at a company
Built with