Skip to main content
The Search Prospect endpoint lets you query Clodura’s comprehensive contact database using a flexible combination of personal, professional, and company-level filters. You can narrow results by job title, seniority, department function, location, company size, industry, funding stage, technology stack, and more. The API is designed purely for search and discovery — it surfaces people records but does not directly return email addresses or phone numbers. To unlock those contact details, use the Reveal Email and Reveal Phone endpoints after identifying your prospects here.
Credit cost: 1 export credit per non-empty record returned for contacts already viewed in Radar. Contacts not yet viewed in Radar incur no credits on the initial search query.
LinkedIn Sales Navigator URLs are not supported. Always supply standard linkedin.com/in/ profile URLs.

Endpoint

POST /api/v1/search/people

Request

Headers

HeaderValue
X-API-KEYYour Clodura API key
Content-Typeapplication/json

Body Parameters

page
integer
required
Page number for paginated results. Accepted range: 1100.
perPage
integer
required
Number of records to return per page. Maximum: 100.
personId
string
Clodura’s unique identifier for a person. Use this to fetch or re-fetch a specific contact record directly.
firstName
string
First name of the person. Typically combined with lastName for name-based searches.
lastName
string
Last name of the person. Typically combined with firstName.
linkedinUrl
string
Standard LinkedIn profile URL for the person (e.g., https://www.linkedin.com/in/kapilkhangaonkar/). Sales Navigator URLs are not supported.
seniority
array
Filter by job seniority level. Accepted values: Founder, Chairman, President, CEO, CXO, Vice President, Director, Head, Manager, Senior, Junior, Entry Level, Executive.
personTitle
array
Job titles to filter by (e.g., "marketing manager", "sales rep"). May return approximate matches unless includeSimilarTitles is set to false.
includeSimilarTitles
boolean
When false, enforces strict matching on personTitle. Defaults to true (approximate matching enabled).
functional
array
Filter by department or business function. Accepted values include: Admin, Analytics, Engineering, Finance, HR, IT, Marketing, Operations, Product Management, Sales, Security, Support, and more.
personCity
array
The person’s current city of residence. Refer to the supported cities list.
personState
array
The person’s current state of residence. Refer to the supported states list.
personCountry
array
The person’s current country of residence. Refer to the supported countries list.
personLocationExclude
boolean
When true, excludes people in the specified location filters instead of including them.
contactEmailStatus
string
Filter by email verification status. Accepted values: verified, unverified, unavailable.
organizationId
string
Clodura’s unique identifier for a company. Use the Search Organizations endpoint to look up this value.
organizationName
string
The name of the employer organization. Use organizationId when possible for more precise matching.
companyDomain
array
One or more employer domain names (e.g., google.com, clodura.ai). Do not include www. or @. Maximum 10 domains per request.
companyEmployeeSize
array
Filter by headcount range. Accepted values: 0 - 1, 2 - 10, 11 - 50, 51 - 200, 201 - 500, 501 - 1000, 1001 - 5000, 5001 - 10000, 10000+.
companyCountry
array
The company’s headquarters country.
companyState
array
The company’s headquarters state.
companyCity
array
The company’s headquarters city.
includeAllOffice
boolean
When true, includes contacts from all office locations, not just HQ. Defaults to false.
excludeViewedPeople
boolean
When true, omits contacts you have already viewed or unlocked. Useful for discovering net-new leads. Defaults to false.
industry
array
Filter by industry sector. Refer to the supported industries list.
industryKeywords
array
Keywords related to the industry to refine results further (e.g., AI, FinTech, SaaS).
revenue
array
Filter by estimated annual company revenue. Accepted values: < 1M, 1M-10M, 11M-100M, 101M-500M, 501M-1B, 1B+.
fundingType
array
Filter by funding round type. Accepted values include: Seed Round, Series A through Series J, Pre Seed Round, Venture Round, Angel Round, Private Equity Round, Post-IPO Equity, and more.
fundingFromDate
date
Start date for filtering by funding events. Format: YYYY-MM-DD.
fundingToDate
date
End date for filtering by funding events. Format: YYYY-MM-DD.
businessModel
array
Filter by company business model. Accepted values: Product, Services, Solutions.
technologyParameters
array
Filter by technologies used by the company. Refer to the supported technologies list.
webKeywords
array
Keywords found on the company’s website (e.g., CRM, automation, cloud).

Example Request

curl --request POST \
  --url https://api.clodura.ai/api/v1/search/people \
  --header 'X-API-KEY: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "personTitle": ["CEO"],
    "seniority": ["Founder", "CEO"],
    "companyDomain": ["clodura.ai"],
    "contactEmailStatus": "verified",
    "page": 1,
    "perPage": 25
  }'

Response

A successful 200 response returns an array of matching people records.
personId
string
Clodura’s unique identifier for this person. Use this value with Reveal Email and Reveal Phone.
firstName
string
The person’s first name.
lastName
string
The person’s last name.
linkedinUrl
string
URL of the person’s LinkedIn profile.
seniority
array
Seniority levels associated with the person’s current role.
personTitle
array
Job title(s) associated with the person.
functional
array
Department or functional area the person belongs to.
personCity
string
City of the person’s current location.
personState
string
State of the person’s current location.
personCountry
string
Country of the person’s current location.
contactEmailStatus
string
Verification status of the person’s email address: verified, unverified, or unavailable.
organizationId
string
Clodura’s unique identifier for the person’s current employer.
organizationName
string
Name of the person’s current employer.
companyDomain
array
Domain name(s) associated with the employer.
companyEmployeeSize
string
Headcount range for the employer.
companyCountry
string
Country where the company’s headquarters is located.
page
integer
The current page number returned.
perPage
integer
Number of records returned per page.

Example Response

[
  {
    "personId": "3597524184265130552",
    "firstName": "Kapil",
    "lastName": "Khangaonkar",
    "linkedinUrl": "https://www.linkedin.com/in/kapilkhangaonkar/",
    "seniority": ["Founder"],
    "personTitle": ["CEO"],
    "functional": ["Admin"],
    "personCity": ["Pune"],
    "personState": ["Maharashtra"],
    "personCountry": ["India"],
    "contactEmailStatus": "verified",
    "organizationId": "2389402640191586304",
    "organizationName": "Clodura.AI",
    "companyDomain": ["clodura.ai"],
    "companyEmployeeSize": ["51-100"],
    "companyCountry": ["United States"],
    "page": 1,
    "perPage": 25
  }
]

Webhook Tracking

The Search People API is asynchronous for email and phone reveals. When you submit a request to the Reveal Email or Reveal Phone endpoints, the API immediately returns a trackingId. Use this ID with the GET /api/v1/search/people/track/{trackingId} endpoint to poll for results or have them delivered to your webhookUrl. See Credit Usage to monitor your remaining balance.

Error Codes

StatusMeaning
400Bad request — check parameter values (e.g., domain count exceeds 10)
401Unauthorized — your API key is missing or invalid
402Payment required — credits exhausted; upgrade your plan or add credits
403Forbidden — this endpoint requires a paid Clodura plan
404No results found — try adjusting your filters
422Unprocessable entity — invalid parameter combination or missing required parent filters
429Rate limit exceeded — slow down requests or upgrade your plan