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.

Run with Naftiko PeopleDataLabsAPI

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

people-data-labs-capability.yaml Raw ↑
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