POST

People Search Prospeo API

/v1/run/people_search.prospeo

Prospect Prospeo's contact database by job title, department, seniority, experience, location and any company firmographic. One flat price per page of 25.

Category enrichmentRequests / mo 3Routing 1 lane · no failover
Get ~100 free requests

Pricing

One price, in dollars

pay per request · no subscription · fallbacks added as the catalog grows
Request
Gateway request
discovered operation
↓
Router
↓
Providers · 1
↳ One lane serves this endpoint today, so a failed call has nowhere to fail over to. Failed attempts are never billed. Uptime, latency and traffic are measured through the gateway, last 30 days.

Call it

Make your first request

POST /v1/run/people_search.prospeo · same shape for every API
import os, requests

res = requests.post(
    "https://api.getanyapi.com/v1/run/people_search.prospeo",
    headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"},
    json={},
)
print(res.json())
Open in
Get a free key
Sample response
{
  "data": {
    "currentPage": 29,
    "people": [
      {
        "company": {
          "attributes": {
            "hasDemo": true,
            "hasDownloadable": true,
            "hasFreeTrial": true,
            "hasMobileApps": true,
            "hasOnlineReviews": true,
            "hasPricing": true,
            "isB2b": true
          },
          "companyId": "Acme Inc",
          "crunchbaseUrl": "https://example.com/page",
          "description": "A short example description of this item.",
          "descriptionAi": "A short example description of this item.",
          "descriptionSeo": "A short example description of this item.",
          "domain": "example.com",
          "emailTech": {
            "domain": "example.com",
            "mxProvider": "a1b2c3d4"
          },
          "employeeCount": 12500,
          "employeeCountOnProspeo": 12500,
          "employeeRange": "example",
          "facebookUrl": "https://example.com/page",
          "founded": 42,
          "funding": {
            "events": [
              null
            ],
            "latestStage": "example",
            "latestUtc": 12.5,
            "rounds": 42,
            "totalRaised": 12500,
            "totalRaisedPrinted": "example"
          },
          "image": "https://example.com/image.jpg",
          "industry": "general",
          "instagramUrl": "https://example.com/page",
          "jobPostings": {
            "activeCount": 12500,
            "activeTitles": [
              null
            ]
          },
          "keywords": [
            "a1b2c3d4"
          ],
          "linkedinId": "https://example.com/page",
          "linkedinUrl": "https://example.com/page",
          "location": {
            "city": "San Francisco",
            "country": "US",
            "countryCode": "US",
            "rawAddress": "123 Main St",
            "state": "CA"
          },
          "naicsCodes": [
            "a1b2c3d4"
          ],
          "name": "Example title",
          "otherWebsites": [
            "https://example.com/page"
          ],
          "phoneHq": {
            "country": "US",
            "countryCode": "US",
            "international": "example",
            "national": "example",
            "phone": "+1 555-0142"
          },
          "revenueRange": {
            "max": 12.5,
            "min": 12.5
          },
          "revenueRangePrinted": "example",
          "sicCodes": [
            "a1b2c3d4"
          ],
          "technologies": [
            "example"
          ],
          "twitterUrl": "https://example.com/page",
          "type": "general",
          "website": "https://example.com/page",
          "youtubeUrl": "https://example.com/page"
        },
        "email": {
          "email": "alex@example.com",
          "revealed": true,
          "status": "active"
        },
        "firstName": "Alex",
        "fullName": "Alex Rivera",
        "headline": "Example title",
        "jobChangeDetectedUtc": 12.5,
        "jobHistory": [
          {
            "companyId": "Acme Inc",
            "companyName": "Acme Inc",
            "current": true,
            "departments": [
              null
            ],
            "durationMonths": 13,
            "endMonth": 42,
            "endYear": 2024,
            "jobKey": "a1b2c3d4",
            "seniority": "example",
            "startMonth": 42,
            "startYear": 2024,
            "title": "Example title"
          }
        ],
        "jobKey": "a1b2c3d4",
        "jobTitle": "Example title",
        "lastName": "Rivera",
        "linkedinMemberId": "https://example.com/page",
        "linkedinUrl": "https://example.com/page",
        "location": {
          "city": "San Francisco",
          "country": "US",
          "countryCode": "US",
          "state": "CA",
          "timeZone": "2024-01-15T09:30:00Z",
          "timeZoneOffset": 12.5
        },
        "mobile": {
          "country": "US",
          "countryCode": "US",
          "international": "example",
          "mobile": "example",
          "national": "example",
          "revealed": true,
          "status": "active"
        },
        "personId": "a1b2c3d4",
        "skills": [
          "example"
        ]
      }
    ],
    "perPage": 29,
    "totalCount": 12500,
    "totalPages": 12500
  },
  "found": true
}
Response interface
interface PeopleSearchProspeoResponse {
  data: {
    currentPage?: number;
    people: {
      company?: {
        attributes?: {
          hasDemo?: boolean;
          hasDownloadable?: boolean;
          hasFreeTrial?: boolean;
          hasMobileApps?: boolean;
          hasOnlineReviews?: boolean;
          hasPricing?: boolean;
          isB2b?: boolean;
        };
        companyId?: string;
        crunchbaseUrl?: string;
        description?: string;
        descriptionAi?: string;
        descriptionSeo?: string;
        domain?: string;
        emailTech?: {
          domain?: string;
          mxProvider?: string;
        };
        employeeCount?: number;
        employeeCountOnProspeo?: number;
        employeeRange?: string;
        facebookUrl?: string;
        founded?: number;
        funding?: {
          events?: {
            amount?: number;
            amountPrinted?: string;
            link?: string;
            raisedUtc?: number;
            stage?: string;
          }[];
          latestStage?: string;
          latestUtc?: number;
          rounds?: number;
          totalRaised?: number;
          totalRaisedPrinted?: string;
        };
        image?: string;
        industry?: string;
        instagramUrl?: string;
        jobPostings?: {
          activeCount?: number;
          activeTitles?: string[];
        };
        keywords?: string[];
        linkedinId?: string;
        linkedinUrl?: string;
        location?: {
          city?: string;
          country?: string;
          countryCode?: string;
          rawAddress?: string;
          state?: string;
        };
        naicsCodes?: string[];
        name?: string;
        otherWebsites?: string[];
        phoneHq?: {
          country?: string;
          countryCode?: string;
          international?: string;
          national?: string;
          phone?: string;
        };
        revenueRange?: {
          max?: number;
          min?: number;
        };
        revenueRangePrinted?: string;
        sicCodes?: string[];
        technologies?: string[];
        twitterUrl?: string;
        type?: string;
        website?: string;
        youtubeUrl?: string;
      };
      email?: {
        email?: string;
        revealed?: boolean;
        status?: string;
      };
      firstName?: string;
      fullName: string;
      headline?: string;
      jobChangeDetectedUtc?: number;
      jobHistory?: {
        companyId?: string;
        companyName?: string;
        current?: boolean;
        departments?: string[];
        durationMonths?: number;
        endMonth?: number;
        endYear?: number;
        jobKey?: string;
        seniority?: string;
        startMonth?: number;
        startYear?: number;
        title?: string;
      }[];
      jobKey?: string;
      jobTitle?: string;
      lastName?: string;
      linkedinMemberId?: string;
      linkedinUrl?: string;
      location?: {
        city?: string;
        country?: string;
        countryCode?: string;
        state?: string;
        timeZone?: string;
        timeZoneOffset?: number;
      };
      mobile?: {
        country?: string;
        countryCode?: string;
        international?: string;
        mobile?: string;
        national?: string;
        revealed?: boolean;
        status?: string;
      };
      personId?: string;
      skills?: string[];
    }[];
    perPage?: number;
    totalCount?: number;
    totalPages?: number;
  } | null;
  found: boolean;
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

Request, response, and price

Last verified 2026-09-03 · uptime and latency measured over 30d
POST /v1/run/people_search.prospeo
curl -X POST https://api.getanyapi.com/v1/run/people_search.prospeo \
  -H "Authorization: Bearer $ANYAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"company":{"websites":{"include":["stripe.com"]}},"page":1}'
FieldTypeExample value
Request body
companystring{"websites":{"include":["stripe.com"]}}Filter by company names or websites, e.g. {"names": {"include": ["Stripe"]}, "websites": {"include": ["stripe.com"]}}.
companyAttributesstringFilter by company characteristics, e.g. B2B, has pricing, has a free trial.
companyEmailProviderarrayFilter by the company's email MX provider.
companyFoundedstringFilter by founding year range.
companyFundingstringFilter by funding stage or amount raised.
companyHeadcountByDepartmentarrayFilter by headcount within a department.
companyHeadcountCustomstringFilter by a custom employee count range.
companyHeadcountGrowthstringFilter by headcount growth.
companyHeadcountRangearrayFilter by Prospeo's predefined employee count bands.
companyIndustrystringFilter by company industry.
companyJobPostingHiringForarrayFilter by the roles the company is currently hiring for.
companyJobPostingQuantitystringFilter by how many roles the company has open.
companyKeywordsstringFilter by keywords found in company data.
companyLocationSearchstringFilter by company headquarters location.
companyNaicsstringFilter by NAICS codes.
companyRevenuestringFilter by revenue range.
companySicsstringFilter by SIC codes.
companyTechnologystringFilter by technologies the company uses.
companyTypeenumFilter by ownership type.
maxPersonPerCompanyintegerCap how many people one company may contribute to the results.
pageinteger1Page number, one-based. Prospeo returns 25 results per page and charges one flat price per page.
personContactDetailsstringFilter by which contact channels Prospeo holds for the person.
personDepartmentstringFilter by department.
personDuplicateControlstringDuplicate-control settings exported from the Prospeo dashboard.
personJobTitlestringFilter by job title, with exact, contains and boolean semantics, e.g. {"include": ["VP Sales"]}.
personLocationSearchstringFilter by where the person is located.
personNamestringFilter by person name.
personNameOrJobTitlestringFree-text search across person name and job title.
personSenioritystringFilter by seniority. Prospeo's own values are case sensitive: Founder/Owner, C-Suite, Partner, Vice President, Head, Director, Manager, Senior, Entry, Intern. Common aliases such as vp and founder are normalized before the call.
personTimeInCurrentCompanystringFilter by time at the current company, as a numeric range.
personTimeInCurrentRolestringFilter by time in the current role, as a numeric range.
personYearOfExperiencestringFilter by total years of experience, as a numeric range.
Response
dataobjectOne page of matching records plus Prospeo's paging counters.
data.currentPageintegerPage number this response holds, one-based.
data.peopleobject[]Matching people, each with their current employer's firmographic record. Email addresses and mobile numbers come back masked; reveal them with Person Enrichment - Prospeo.
data.people[].companyobjectThe person's current employer, with Prospeo's full firmographic record.
data.people[].company.attributesobjectWhat Prospeo detects about how the company sells.
data.people[].company.attributes.hasDemobooleanThe website offers a demo.
data.people[].company.attributes.hasDownloadablebooleanThe website offers a download.
data.people[].company.attributes.hasFreeTrialbooleanThe website offers a free trial.
data.people[].company.attributes.hasMobileAppsbooleanThe company publishes mobile apps.
data.people[].company.attributes.hasOnlineReviewsbooleanThe company has online reviews.
data.people[].company.attributes.hasPricingbooleanThe website publishes pricing.
data.people[].company.attributes.isB2bbooleanThe company sells to businesses.
data.people[].company.companyIdstringProspeo's own company identifier. Send it back as this SKU's companyId input.
data.people[].company.crunchbaseUrlstringCompany Crunchbase profile URL.
data.people[].company.descriptionstringCompany description as the company writes it.
data.people[].company.descriptionAistringProspeo's own AI-written company summary.
data.people[].company.descriptionSeostringMeta description from the company's website.
data.people[].company.domainstringPrimary company domain.
data.people[].company.emailTechobjectHow the company's email is hosted.
data.people[].company.emailTech.domainstringDomain the company's email addresses use.
data.people[].company.emailTech.mxProviderstringMail provider behind the domain's MX records.
data.people[].company.employeeCountintegerEmployees Prospeo currently counts.
data.people[].company.employeeCountOnProspeointegerEmployees of this company that Prospeo holds a profile for.
data.people[].company.employeeRangestringEmployee headcount band, e.g. 10000+.
data.people[].company.facebookUrlstringCompany Facebook page URL.
data.people[].company.foundedintegerYear the company was founded.
data.people[].company.fundingobjectFunding history.
data.people[].company.funding.eventsobject[]One entry per funding round.
data.people[].company.funding.events[].amountnumberAmount raised in USD.
data.people[].company.funding.events[].amountPrintedstringAmount raised as a display string.
data.people[].company.funding.events[].linkstringSource URL for the round.
data.people[].company.funding.events[].raisedUtcnumberUTC epoch timestamp in seconds (Unix time) the round closed. Multiply by 1000 for a JS Date in milliseconds.
data.people[].company.funding.events[].stagestringRound stage, e.g. Series E-J.
data.people[].company.funding.latestStagestringMost recent funding stage.
data.people[].company.funding.latestUtcnumberUTC epoch timestamp in seconds (Unix time) of the most recent round. Multiply by 1000 for a JS Date in milliseconds.
data.people[].company.funding.roundsintegerNumber of funding rounds raised.
data.people[].company.funding.totalRaisednumberTotal capital raised, in USD.
data.people[].company.funding.totalRaisedPrintedstringTotal capital raised as a display string.
data.people[].company.imagestringCompany logo URL.
data.people[].company.industrystringCompany industry.
data.people[].company.instagramUrlstringCompany Instagram profile URL.
data.people[].company.jobPostingsobjectOpen roles Prospeo currently sees for the company.
data.people[].company.jobPostings.activeCountintegerOpen roles currently posted.
data.people[].company.jobPostings.activeTitlesstring[]Titles of the open roles.
data.people[].company.keywordsstring[]Keywords Prospeo assigns the company.
data.people[].company.linkedinIdstringCompany LinkedIn numeric id.
data.people[].company.linkedinUrlstringCompany LinkedIn page URL.
data.people[].company.locationobjectCompany headquarters.
data.people[].company.location.citystringCity.
data.people[].company.location.countrystringCountry name.
data.people[].company.location.countryCodestringISO 3166-1 alpha-2 country code.
data.people[].company.location.rawAddressstringHeadquarters address as one display string.
data.people[].company.location.statestringState or region.
data.people[].company.naicsCodesstring[]NAICS classification codes for the company.
data.people[].company.namestringCompany name.
data.people[].company.otherWebsitesstring[]Other domains the company owns.
data.people[].company.phoneHqobjectHeadquarters switchboard number.
data.people[].company.phoneHq.countrystringCountry the number belongs to.
data.people[].company.phoneHq.countryCodestringISO 3166-1 alpha-2 code for that country.
data.people[].company.phoneHq.internationalstringNumber in international format.
data.people[].company.phoneHq.nationalstringNumber in national format.
data.people[].company.phoneHq.phonestringPhone number as Prospeo stores it.
data.people[].company.revenueRangeobjectAnnual revenue band in USD.
data.people[].company.revenueRange.maxnumberUpper bound in USD.
data.people[].company.revenueRange.minnumberLower bound in USD.
data.people[].company.revenueRangePrintedstringAnnual revenue band as a display string.
data.people[].company.sicCodesstring[]SIC classification codes for the company.
data.people[].company.technologiesstring[]Technologies Prospeo detects in the company's stack.
data.people[].company.twitterUrlstringCompany X (Twitter) profile URL.
data.people[].company.typestringOwnership type, e.g. Private, Public, Non Profit.
data.people[].company.websitestringCompany website URL.
data.people[].company.youtubeUrlstringCompany YouTube channel URL.
data.people[].emailobjectWork email address. Prospeo returns the address only once it is revealed; status says why it is absent otherwise.
data.people[].email.emailstringThe email address, when Prospeo revealed one.
data.people[].email.revealedbooleanTrue when the address below is the full value rather than a masked preview.
data.people[].email.statusstringProspeo's verdict for the address, e.g. VERIFIED or UNAVAILABLE.
data.people[].firstNamestringFirst name.
data.people[].fullNamestringPerson's full name.
data.people[].headlinestringLinkedIn headline.
data.people[].jobChangeDetectedUtcnumberUTC epoch timestamp in seconds (Unix time) Prospeo last detected a job change. Multiply by 1000 for a JS Date in milliseconds.
data.people[].jobHistoryobject[]Every role Prospeo holds for the person, most recent first.
data.people[].jobHistory[].companyIdstringProspeo company id for the employer.
data.people[].jobHistory[].companyNamestringEmployer name.
data.people[].jobHistory[].currentbooleanTrue while the role is current.
data.people[].jobHistory[].departmentsstring[]Departments Prospeo assigns the role.
data.people[].jobHistory[].durationMonthsintegerHow long the role has run, in months.
data.people[].jobHistory[].endMonthintegerMonth the role ended, absent while current.
data.people[].jobHistory[].endYearintegerYear the role ended, absent while current.
data.people[].jobHistory[].jobKeystringProspeo's identifier for this role.
data.people[].jobHistory[].senioritystringSeniority band, e.g. C-Suite, Manager, Entry.
data.people[].jobHistory[].startMonthintegerMonth the role started, 1 to 12.
data.people[].jobHistory[].startYearintegerYear the role started.
data.people[].jobHistory[].titlestringJob title held.
data.people[].jobKeystringProspeo's identifier for the current role.
data.people[].jobTitlestringCurrent job title.
data.people[].lastNamestringLast name.
data.people[].linkedinMemberIdstringLinkedIn numeric member id.
data.people[].linkedinUrlstringLinkedIn profile URL.
data.people[].locationobjectWhere the person is located.
data.people[].location.citystringCity.
data.people[].location.countrystringCountry name.
data.people[].location.countryCodestringISO 3166-1 alpha-2 country code.
data.people[].location.statestringState or region.
data.people[].location.timeZonestringIANA time zone, e.g. America/New_York.
data.people[].location.timeZoneOffsetnumberCurrent offset from UTC in hours.
data.people[].mobileobjectMobile phone number. Digits are masked until the number is revealed; send enrichMobile to reveal it.
data.people[].mobile.countrystringCountry the number belongs to.
data.people[].mobile.countryCodestringISO 3166-1 alpha-2 code for that country.
data.people[].mobile.internationalstringNumber in international format.
data.people[].mobile.mobilestringThe number as Prospeo stores it.
data.people[].mobile.nationalstringNumber in national format.
data.people[].mobile.revealedbooleanTrue when the digits below are the full number rather than a masked preview.
data.people[].mobile.statusstringProspeo's verdict for the number, e.g. VERIFIED or UNAVAILABLE.
data.people[].personIdstringProspeo's own person identifier. Send it back as this SKU's personId input.
data.people[].skillsstring[]Skills the person lists.
data.perPageintegerResults Prospeo returns per page. Prospeo fixes this at 25 and charges one flat price per page.
data.totalCountintegerResults matching the filters across all pages.
data.totalPagesintegerPages of results behind these filters.
foundbooleanFalse when no record matched the filters.
Price
Price per requestUSD$0.066
Price /1k reqUSD$66.00

FAQ

About the People Search Prospeo API

The AnyAPI People Search Prospeo API returns People Search prospeo data as normalized JSON from one POST call to /v1/run/people_search.prospeo. Prospect Prospeo's contact database by job title, department, seniority, experience, location and any company firmographic. One flat price per page of 25. AnyAPI returns one normalized schema whichever source serves it. It costs from $66 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 0.0% of People Search prospeo calls through AnyAPI succeeded across 3 measured calls.

It costs from $66 per 1,000 requests, in US dollars with no subscription and no monthly minimum. You fund one USD wallet, each call draws it down, and a failed request costs $0.

Prospect Prospeo's contact database by job title, department, seniority, experience, location and any company firmographic. One flat price per page of 25. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 0.0% of People Search prospeo calls through AnyAPI succeeded across 3 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Get started

Two ways to start on AnyAPI

Humans fund a USD wallet and pay per request. Agents point a coding agent at one URL and onboard themselves.

Get ~100 free requests
Works with
Terminal agentsClaude CodeCursorCodexMCP clients