Skip to main content
POST
People Search

People Search

POST /v3/people/search is the single V3 people lookup endpoint. It replaces the older V3 people variants such as mixed search, ICP search, employees, by-title, and people lookalike. Use it when you want to search people from either:
  • one company, using company_domain, company_name, or linkedin_url
  • a criteria-based account set, using company_filters
You can combine company filters, people filters, title/role/query intent, contactability requirements, and optional paid contact-detail unlocks in one request.

Endpoint Details

Raw outreach fields require include_contact_details: true and confirm_credit_charge: true. Otherwise the API returns masked/locked values and availability flags.

Quick Example

Search Across Company Filters

Use company_filters when you want to find people across an account list instead of one known company.

Request Body

At least one company identifier or usable company_filters object is required.

Company Targeting

People Intent

People Filters

Pass these inside people_filters or peopleFilters.

Contactability And Unlocks

Output Controls

Response

string
Human-readable result summary.
number
Finalized credits charged for this request (base people rows plus any unlocked contact details).
object[]
Returned people. Each row contains person, optional company, optional domain_intel, and an unlock object when outreach fields are locked.
object[]
Company rows matched or hydrated for the search.
integer
Number of returned people.
integer
Applied page size.
integer
Applied offset.
Unless you set include_contact_details: true and confirm_credit_charge: true, raw outreach fields stay hidden and the API returns masked values such as contact_email_masked plus an unlock cost summary.

Company Search

Build the account set that People Search can target with company_filters.

Company Lookalike

Find similar accounts from a seed company.

Email Finder

Find a work email for one known person.

Mobile Finder

Find a direct mobile number for one known person.

Authorizations

X-API-Key
string
header
required

Your LeadMagic API key. Header name is case-insensitive (X-API-Key, X-API-KEY, x-api-key all work).

Body

application/json
company_domain
string
Example:

"leadmagic.io"

company_name
string
Example:

"LeadMagic"

linkedin_url
string

B2B company profile URL or slug.

Example:

"https://www.linkedin.com/company/leadmagichq/"

company_filters
object

Criteria-based company set. Supports the full Company Search filter family.

people_filters
object

People-level filters for names, title/function/level, geography, profile URLs, seniority, connection count, and channel availability.

title
string
Example:

"VP Sales"

job_title
string
Example:

"Head of Revenue"

titles
string[]
Maximum array length: 12
roles
string[]
Maximum array length: 12
query
string

Free-text people/title query.

required_email
boolean

Only return people with email availability.

required_mobile
boolean

Only return people with mobile availability.

channels
enum<string>[]

Legacy alias for contactability requirements.

Available options:
email,
phone
channel_match
enum<string>
default:any
Available options:
any,
all
include_company
boolean
default:true
include_domain_intel
boolean
default:true
include_contact_details
boolean
default:false

Return paid raw email/mobile fields. Requires confirm_credit_charge=true.

include_email
boolean
default:true
include_mobile
boolean
default:true
confirm_credit_charge
boolean
default:false
limit
integer
default:25
Required range: 1 <= x <= 100
offset
integer
default:0
Required range: x >= 0

Response

People search results

message
string
credits_consumed
number
people
object[]
companies
object[]
count
integer
returned_count
integer
limit_applied
integer
offset
integer
metadata
object