People Data Labs · Capability
People Data Labs API
People Data Labs (PDL) provides APIs for enriching and building people and company profiles at scale. The API offers person enrichment, person search, person identification, company enrichment, company search, IP enrichment, and job posting search across a dataset of professional profiles and organizations.
What You Can Do
GET
Get person enrich
— Enrich a person profile
/person/enrich
GET
Get person search
— Search for person profiles
/person/search
GET
Get person identify
— Identify a person
/person/identify
POST
Post person bulk
— Bulk person enrichment
/person/bulk
GET
Get company enrich
— Enrich a company profile
/company/enrich
GET
Get company search
— Search for companies
/company/search
GET
Get ip enrich
— IP enrichment
/ip/enrich
GET
Get job posting search
— Search job postings
/job_posting/search
GET
Get autocomplete
— Autocomplete suggestions
/autocomplete
MCP Tools
get-person-enrich
Enrich a person profile
read-only
idempotent
get-person-search
Search for person profiles
read-only
idempotent
get-person-identify
Identify a person
read-only
idempotent
post-person-bulk
Bulk person enrichment
get-company-enrich
Enrich a company profile
read-only
idempotent
get-company-search
Search for companies
read-only
idempotent
get-ip-enrich
IP enrichment
read-only
idempotent
get-job-posting-search
Search job postings
read-only
idempotent
get-autocomplete
Autocomplete suggestions
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: People Data Labs API
description: People Data Labs (PDL) provides APIs for enriching and building people and company profiles at scale. The API
offers person enrichment, person search, person identification, company enrichment, company search, IP enrichment, and
job posting search across a dataset of professional profiles and organizations.
tags:
- People
- Data
- Labs
- API
created: '2026-05-06'
modified: '2026-05-06'
capability:
consumes:
- type: http
namespace: people-data-labs
baseUri: https://api.peopledatalabs.com/v5
description: People Data Labs API HTTP API.
authentication:
type: apikey
in: header
name: X-API-Key
value: '{{PEOPLE_DATA_LABS_TOKEN}}'
resources:
- name: person-enrich
path: /person/enrich
operations:
- name: get-person-enrich
method: GET
description: Enrich a person profile
inputParameters:
- name: email
in: query
type: string
- name: phone
in: query
type: string
- name: profile
in: query
type: string
- name: first_name
in: query
type: string
- name: last_name
in: query
type: string
- name: company
in: query
type: string
- name: min_likelihood
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: person-search
path: /person/search
operations:
- name: get-person-search
method: GET
description: Search for person profiles
inputParameters:
- name: sql
in: query
type: string
- name: query
in: query
type: string
- name: size
in: query
type: integer
- name: from
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: person-identify
path: /person/identify
operations:
- name: get-person-identify
method: GET
description: Identify a person
inputParameters:
- name: email
in: query
type: string
- name: phone
in: query
type: string
- name: first_name
in: query
type: string
- name: last_name
in: query
type: string
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: person-bulk
path: /person/bulk
operations:
- name: post-person-bulk
method: POST
description: Bulk person enrichment
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: company-enrich
path: /company/enrich
operations:
- name: get-company-enrich
method: GET
description: Enrich a company profile
inputParameters:
- name: name
in: query
type: string
- name: website
in: query
type: string
- name: profile
in: query
type: string
- name: ticker
in: query
type: string
- name: location
in: query
type: string
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: company-search
path: /company/search
operations:
- name: get-company-search
method: GET
description: Search for companies
inputParameters:
- name: sql
in: query
type: string
- name: query
in: query
type: string
- name: size
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: ip-enrich
path: /ip/enrich
operations:
- name: get-ip-enrich
method: GET
description: IP enrichment
inputParameters:
- name: ip
in: query
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: job-posting-search
path: /job_posting/search
operations:
- name: get-job-posting-search
method: GET
description: Search job postings
inputParameters:
- name: sql
in: query
type: string
- name: query
in: query
type: string
- name: size
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: autocomplete
path: /autocomplete
operations:
- name: get-autocomplete
method: GET
description: Autocomplete suggestions
inputParameters:
- name: field
in: query
type: string
required: true
- name: text
in: query
type: string
- name: size
in: query
type: integer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
port: 8080
namespace: people-data-labs-rest
description: REST adapter for People Data Labs API.
resources:
- path: /person/enrich
name: get-person-enrich
operations:
- method: GET
name: get-person-enrich
description: Enrich a person profile
call: people-data-labs.get-person-enrich
outputParameters:
- type: object
mapping: $.
- path: /person/search
name: get-person-search
operations:
- method: GET
name: get-person-search
description: Search for person profiles
call: people-data-labs.get-person-search
outputParameters:
- type: object
mapping: $.
- path: /person/identify
name: get-person-identify
operations:
- method: GET
name: get-person-identify
description: Identify a person
call: people-data-labs.get-person-identify
outputParameters:
- type: object
mapping: $.
- path: /person/bulk
name: post-person-bulk
operations:
- method: POST
name: post-person-bulk
description: Bulk person enrichment
call: people-data-labs.post-person-bulk
outputParameters:
- type: object
mapping: $.
- path: /company/enrich
name: get-company-enrich
operations:
- method: GET
name: get-company-enrich
description: Enrich a company profile
call: people-data-labs.get-company-enrich
outputParameters:
- type: object
mapping: $.
- path: /company/search
name: get-company-search
operations:
- method: GET
name: get-company-search
description: Search for companies
call: people-data-labs.get-company-search
outputParameters:
- type: object
mapping: $.
- path: /ip/enrich
name: get-ip-enrich
operations:
- method: GET
name: get-ip-enrich
description: IP enrichment
call: people-data-labs.get-ip-enrich
outputParameters:
- type: object
mapping: $.
- path: /job_posting/search
name: get-job-posting-search
operations:
- method: GET
name: get-job-posting-search
description: Search job postings
call: people-data-labs.get-job-posting-search
outputParameters:
- type: object
mapping: $.
- path: /autocomplete
name: get-autocomplete
operations:
- method: GET
name: get-autocomplete
description: Autocomplete suggestions
call: people-data-labs.get-autocomplete
outputParameters:
- type: object
mapping: $.
- type: mcp
port: 9090
namespace: people-data-labs-mcp
transport: http
description: MCP adapter for People Data Labs API for AI agent use.
tools:
- name: get-person-enrich
description: Enrich a person profile
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-person-enrich
with:
email: tools.email
phone: tools.phone
profile: tools.profile
first_name: tools.first_name
last_name: tools.last_name
company: tools.company
min_likelihood: tools.min_likelihood
inputParameters:
- name: email
type: string
description: email
- name: phone
type: string
description: phone
- name: profile
type: string
description: profile
- name: first_name
type: string
description: first_name
- name: last_name
type: string
description: last_name
- name: company
type: string
description: company
- name: min_likelihood
type: integer
description: min_likelihood
outputParameters:
- type: object
mapping: $.
- name: get-person-search
description: Search for person profiles
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-person-search
with:
sql: tools.sql
query: tools.query
size: tools.size
from: tools.from
inputParameters:
- name: sql
type: string
description: sql
- name: query
type: string
description: query
- name: size
type: integer
description: size
- name: from
type: integer
description: from
outputParameters:
- type: object
mapping: $.
- name: get-person-identify
description: Identify a person
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-person-identify
with:
email: tools.email
phone: tools.phone
first_name: tools.first_name
last_name: tools.last_name
inputParameters:
- name: email
type: string
description: email
- name: phone
type: string
description: phone
- name: first_name
type: string
description: first_name
- name: last_name
type: string
description: last_name
outputParameters:
- type: object
mapping: $.
- name: post-person-bulk
description: Bulk person enrichment
hints:
readOnly: false
destructive: false
idempotent: false
call: people-data-labs.post-person-bulk
outputParameters:
- type: object
mapping: $.
- name: get-company-enrich
description: Enrich a company profile
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-company-enrich
with:
name: tools.name
website: tools.website
profile: tools.profile
ticker: tools.ticker
location: tools.location
inputParameters:
- name: name
type: string
description: name
- name: website
type: string
description: website
- name: profile
type: string
description: profile
- name: ticker
type: string
description: ticker
- name: location
type: string
description: location
outputParameters:
- type: object
mapping: $.
- name: get-company-search
description: Search for companies
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-company-search
with:
sql: tools.sql
query: tools.query
size: tools.size
inputParameters:
- name: sql
type: string
description: sql
- name: query
type: string
description: query
- name: size
type: integer
description: size
outputParameters:
- type: object
mapping: $.
- name: get-ip-enrich
description: IP enrichment
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-ip-enrich
with:
ip: tools.ip
inputParameters:
- name: ip
type: string
description: ip
required: true
outputParameters:
- type: object
mapping: $.
- name: get-job-posting-search
description: Search job postings
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-job-posting-search
with:
sql: tools.sql
query: tools.query
size: tools.size
inputParameters:
- name: sql
type: string
description: sql
- name: query
type: string
description: query
- name: size
type: integer
description: size
outputParameters:
- type: object
mapping: $.
- name: get-autocomplete
description: Autocomplete suggestions
hints:
readOnly: true
destructive: false
idempotent: true
call: people-data-labs.get-autocomplete
with:
field: tools.field
text: tools.text
size: tools.size
inputParameters:
- name: field
type: string
description: field
required: true
- name: text
type: string
description: text
- name: size
type: integer
description: size
outputParameters:
- type: object
mapping: $.
binds:
- namespace: env
keys:
PEOPLE_DATA_LABS_TOKEN: PEOPLE_DATA_LABS_TOKEN