Person Search API
curl --request POST \
--url https://api.cufinder.io/v3/people/search \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"full_name": "<string>",
"country": "<string>",
"state": "<string>",
"city": "<string>",
"job_title": "<string>",
"job_title_level": "<string>",
"company_domain": "<string>",
"company_name": "<string>",
"company_linkedin_url": "<string>",
"company_industry": "<string>",
"company_employee_range": "<string>",
"company_annual_revenue_min_usd": 123,
"company_annual_revenue_max_usd": 123,
"page": 123
}
'import requests
url = "https://api.cufinder.io/v3/people/search"
payload = {
"full_name": "<string>",
"country": "<string>",
"state": "<string>",
"city": "<string>",
"job_title": "<string>",
"job_title_level": "<string>",
"company_domain": "<string>",
"company_name": "<string>",
"company_linkedin_url": "<string>",
"company_industry": "<string>",
"company_employee_range": "<string>",
"company_annual_revenue_min_usd": 123,
"company_annual_revenue_max_usd": 123,
"page": 123
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
full_name: '<string>',
country: '<string>',
state: '<string>',
city: '<string>',
job_title: '<string>',
job_title_level: '<string>',
company_domain: '<string>',
company_name: '<string>',
company_linkedin_url: '<string>',
company_industry: '<string>',
company_employee_range: '<string>',
company_annual_revenue_min_usd: 123,
company_annual_revenue_max_usd: 123,
page: 123
})
};
fetch('https://api.cufinder.io/v3/people/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cufinder.io/v3/people/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'full_name' => '<string>',
'country' => '<string>',
'state' => '<string>',
'city' => '<string>',
'job_title' => '<string>',
'job_title_level' => '<string>',
'company_domain' => '<string>',
'company_name' => '<string>',
'company_linkedin_url' => '<string>',
'company_industry' => '<string>',
'company_employee_range' => '<string>',
'company_annual_revenue_min_usd' => 123,
'company_annual_revenue_max_usd' => 123,
'page' => 123
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.cufinder.io/v3/people/search"
payload := strings.NewReader("{\n \"full_name\": \"<string>\",\n \"country\": \"<string>\",\n \"state\": \"<string>\",\n \"city\": \"<string>\",\n \"job_title\": \"<string>\",\n \"job_title_level\": \"<string>\",\n \"company_domain\": \"<string>\",\n \"company_name\": \"<string>\",\n \"company_linkedin_url\": \"<string>\",\n \"company_industry\": \"<string>\",\n \"company_employee_range\": \"<string>\",\n \"company_annual_revenue_min_usd\": 123,\n \"company_annual_revenue_max_usd\": 123,\n \"page\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.cufinder.io/v3/people/search")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"full_name\": \"<string>\",\n \"country\": \"<string>\",\n \"state\": \"<string>\",\n \"city\": \"<string>\",\n \"job_title\": \"<string>\",\n \"job_title_level\": \"<string>\",\n \"company_domain\": \"<string>\",\n \"company_name\": \"<string>\",\n \"company_linkedin_url\": \"<string>\",\n \"company_industry\": \"<string>\",\n \"company_employee_range\": \"<string>\",\n \"company_annual_revenue_min_usd\": 123,\n \"company_annual_revenue_max_usd\": 123,\n \"page\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cufinder.io/v3/people/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"full_name\": \"<string>\",\n \"country\": \"<string>\",\n \"state\": \"<string>\",\n \"city\": \"<string>\",\n \"job_title\": \"<string>\",\n \"job_title_level\": \"<string>\",\n \"company_domain\": \"<string>\",\n \"company_name\": \"<string>\",\n \"company_linkedin_url\": \"<string>\",\n \"company_industry\": \"<string>\",\n \"company_employee_range\": \"<string>\",\n \"company_annual_revenue_min_usd\": 123,\n \"company_annual_revenue_max_usd\": 123,\n \"page\": 123\n}"
response = http.request(request)
puts response.read_bodyContact APIs
Person Search API
Multi-filter searches separate precision prospecting from spray-and-pray outreach that wastes sales cycles. The Person Search API queries CUFinder’s 1B+ professional profiles using combined filters, including name, company details, location, industry, and revenue, returning matching contact records with 99% confidence scores. Built for developers creating targeted prospecting and talent sourcing platforms, this RESTful endpoint delivers filtered person data including job titles, social profiles, and employer information that power account-based selling, executive search, and partnership identification workflows across your sales stack.
POST
/
v3
/
people
/
search
Person Search API
curl --request POST \
--url https://api.cufinder.io/v3/people/search \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"full_name": "<string>",
"country": "<string>",
"state": "<string>",
"city": "<string>",
"job_title": "<string>",
"job_title_level": "<string>",
"company_domain": "<string>",
"company_name": "<string>",
"company_linkedin_url": "<string>",
"company_industry": "<string>",
"company_employee_range": "<string>",
"company_annual_revenue_min_usd": 123,
"company_annual_revenue_max_usd": 123,
"page": 123
}
'import requests
url = "https://api.cufinder.io/v3/people/search"
payload = {
"full_name": "<string>",
"country": "<string>",
"state": "<string>",
"city": "<string>",
"job_title": "<string>",
"job_title_level": "<string>",
"company_domain": "<string>",
"company_name": "<string>",
"company_linkedin_url": "<string>",
"company_industry": "<string>",
"company_employee_range": "<string>",
"company_annual_revenue_min_usd": 123,
"company_annual_revenue_max_usd": 123,
"page": 123
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
full_name: '<string>',
country: '<string>',
state: '<string>',
city: '<string>',
job_title: '<string>',
job_title_level: '<string>',
company_domain: '<string>',
company_name: '<string>',
company_linkedin_url: '<string>',
company_industry: '<string>',
company_employee_range: '<string>',
company_annual_revenue_min_usd: 123,
company_annual_revenue_max_usd: 123,
page: 123
})
};
fetch('https://api.cufinder.io/v3/people/search', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cufinder.io/v3/people/search",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'full_name' => '<string>',
'country' => '<string>',
'state' => '<string>',
'city' => '<string>',
'job_title' => '<string>',
'job_title_level' => '<string>',
'company_domain' => '<string>',
'company_name' => '<string>',
'company_linkedin_url' => '<string>',
'company_industry' => '<string>',
'company_employee_range' => '<string>',
'company_annual_revenue_min_usd' => 123,
'company_annual_revenue_max_usd' => 123,
'page' => 123
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.cufinder.io/v3/people/search"
payload := strings.NewReader("{\n \"full_name\": \"<string>\",\n \"country\": \"<string>\",\n \"state\": \"<string>\",\n \"city\": \"<string>\",\n \"job_title\": \"<string>\",\n \"job_title_level\": \"<string>\",\n \"company_domain\": \"<string>\",\n \"company_name\": \"<string>\",\n \"company_linkedin_url\": \"<string>\",\n \"company_industry\": \"<string>\",\n \"company_employee_range\": \"<string>\",\n \"company_annual_revenue_min_usd\": 123,\n \"company_annual_revenue_max_usd\": 123,\n \"page\": 123\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.cufinder.io/v3/people/search")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"full_name\": \"<string>\",\n \"country\": \"<string>\",\n \"state\": \"<string>\",\n \"city\": \"<string>\",\n \"job_title\": \"<string>\",\n \"job_title_level\": \"<string>\",\n \"company_domain\": \"<string>\",\n \"company_name\": \"<string>\",\n \"company_linkedin_url\": \"<string>\",\n \"company_industry\": \"<string>\",\n \"company_employee_range\": \"<string>\",\n \"company_annual_revenue_min_usd\": 123,\n \"company_annual_revenue_max_usd\": 123,\n \"page\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cufinder.io/v3/people/search")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"full_name\": \"<string>\",\n \"country\": \"<string>\",\n \"state\": \"<string>\",\n \"city\": \"<string>\",\n \"job_title\": \"<string>\",\n \"job_title_level\": \"<string>\",\n \"company_domain\": \"<string>\",\n \"company_name\": \"<string>\",\n \"company_linkedin_url\": \"<string>\",\n \"company_industry\": \"<string>\",\n \"company_employee_range\": \"<string>\",\n \"company_annual_revenue_min_usd\": 123,\n \"company_annual_revenue_max_usd\": 123,\n \"page\": 123\n}"
response = http.request(request)
puts response.read_bodyCommon Use Cases
Filtered search turns a target profile into a real list of people you can reach.- Lead Generation: Building targeted contact lists from combined filters.
- Recruiting and Sourcing: Finding candidates by role, company, and location.
- Account-Based Marketing: Reaching the right people inside target accounts.
- Market Research: Exploring a talent pool or buyer segment.
- List Building: Generating fresh prospect lists on demand.
Attributes
string
Person full name, matched as a substring, for example
john doe.string
Person country. See the full list of accepted countries.
string
Person state. See the full list of accepted states.
string
Person city. See the full list of accepted cities.
string
Person job title.
string
Seniority level. Allowed values:
cxo, vp, director, manager, senior, entry, owner, partner, training.string
Company domain.
string
Company name.
string
Company LinkedIn URL.
string
Company industry. See the full list of accepted industries.
string
Company size band. Allowed values:
1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+.integer
Minimum company annual revenue, in USD.
integer
Maximum company annual revenue, in USD.
integer
Page number for paginated results. Each page returns up to 10 records.
Response
{
"success": true,
"data": {
"people": [
{
"first_name": null,
"last_name": null,
"full_name": "alan baptista",
"avatar_url": null,
"job": {
"title": "product marketing director, go-to-market, and partner marketing.",
"level": null,
"categories": []
},
"company": {
"name": "veeam software",
"domain": null,
"website_url": "https://www.veeam.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "washington",
"city": "seattle",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/veeam-software",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "california",
"city": "los angeles",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/abaptista",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "adrienne chang",
"avatar_url": null,
"job": {
"title": "product marketing",
"level": null,
"categories": []
},
"company": {
"name": "meta",
"domain": null,
"website_url": "https://meta.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "california",
"city": "menlo park",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/meta",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "california",
"city": "menlo park",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/adriennetchang",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "agusto alarco",
"avatar_url": null,
"job": {
"title": "strategy, marketing & analytics | mba | ex-capital one",
"level": null,
"categories": []
},
"company": {
"name": "comscore, inc.",
"domain": null,
"website_url": "https://www.comscore.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "virginia",
"city": "reston",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/comscore",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "virginia",
"city": "reston",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/agustoalarco",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "alan letran",
"avatar_url": null,
"job": {
"title": "sr. marketing manager | digital advertising",
"level": null,
"categories": []
},
"company": {
"name": "amazon",
"domain": null,
"website_url": "amazon.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "washington",
"city": "seattle",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/amazon",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "washington",
"city": "seatac",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/alan-letran",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "alena chiang",
"avatar_url": null,
"job": {
"title": "passionate about e-commerce, retail, marketing strategy, start-ups, and all things diy.",
"level": null,
"categories": []
},
"company": {
"name": "meta",
"domain": null,
"website_url": "https://meta.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "california",
"city": "menlo park",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/meta",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "eau claire",
"city": "eau claire",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/alena-chiang",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "alex mastrodonato",
"avatar_url": null,
"job": {
"title": "platform marketing leader",
"level": null,
"categories": []
},
"company": {
"name": "servicenow",
"domain": null,
"website_url": "http://www.servicenow.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "california",
"city": "santa clara",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/servicenow",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "california",
"city": "san francisco",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/alexmastrodonato",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "alex sosner",
"avatar_url": null,
"job": {
"title": "senior manager, influencer marketing",
"level": null,
"categories": []
},
"company": {
"name": "etsy",
"domain": null,
"website_url": "http://www.etsy.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "new york",
"city": "brooklyn",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/etsy",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "new york",
"city": "new york",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/alexsosner",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "alina pimentel",
"avatar_url": null,
"job": {
"title": "product marketing",
"level": null,
"categories": []
},
"company": {
"name": "hinge health",
"domain": null,
"website_url": "http://www.hingehealth.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "panama",
"state": "veraguas province",
"city": "san francisco",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/hinge-health",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "california",
"city": "san francisco",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/alina-pimentel-a320169b",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "alma bencomo",
"avatar_url": null,
"job": {
"title": "product marketing manager | cloud marketing",
"level": null,
"categories": []
},
"company": {
"name": "microsoft",
"domain": null,
"website_url": "https://news.microsoft.com",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "washington",
"city": "redmond",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/microsoft",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "arizona",
"city": "phoenix",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/almabencomo",
"facebook_url": null,
"twitter_url": null
}
},
{
"first_name": null,
"last_name": null,
"full_name": "amanda keay",
"avatar_url": null,
"job": {
"title": "event producer | experiential marketing |conference & corporate events | digital marketing | events manager @overclock labs",
"level": null,
"categories": []
},
"company": {
"name": "overclock labs, creators of akash network",
"domain": null,
"website_url": "http://akash.network",
"industry": "software development",
"type": null,
"employee_range": null,
"followers_count": null,
"linkedin_id": null,
"logo_url": null,
"location": {
"country": "united states",
"state": "california",
"city": "san francisco",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/company/akash-network",
"facebook_url": null,
"twitter_url": null
}
},
"location": {
"country": "united states",
"state": "california",
"city": "san francisco",
"address": null,
"postal_code": null
},
"social": {
"linkedin_url": "linkedin.com/in/amanda-keay-b355ba307",
"facebook_url": null,
"twitter_url": null
}
}
]
},
"meta": {
"confidence": 93,
"query": {
"country": "united states",
"job_title": "marketing",
"company_industry": "software development",
"page": 1
},
"credits": {
"charged": 5,
"remaining": 9862
},
"pagination": {
"page": 1,
"has_more": true
}
}
}
Related APIs
Person Enrichment
Enrich a person with full contact data.
Company Employee Finder
Find employees working at a company.
LinkedIn Profile Enrichment
Enrich a person from their LinkedIn profile.
Reverse Email Lookup
Identify the person behind an email address.

