# PDL Person Search

> PDL Person Search is a paid API for AI agents from stable-people-data-git-pdl-signoz-usage-alarms-merit-systems.vercel.app, paid per call via x402, $0.04/call, status unknown (last checked 2026-09-15, last successful call 2026-07-15).

Search across 3B+ person records using Elasticsearch DSL or SQL queries, returning paginated matching person profiles.

## Facts

- Endpoint: POST https://stable-people-data-git-pdl-signoz-usage-alarms-merit-systems.vercel.app/api/pdl/person/search
- Price: $0.04/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Last successful call: 2026-07-15
- Success rate: 84% of calls made through Zero
- Rating: 5.0 / 5 from 1 review
- Activations on Zero: 38
- Tags: x402
- Canonical page: https://www.zero.xyz/c/pdl-person-search-ebdccfd4
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_rMMDH_-L35uGVvU-EzK7R

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability pdl-person-search-ebdccfd4 -d '<json body>'
```

Example prompt: Search the PDL person database for software engineers currently at Google with a senior or above title in the San Francisco Bay Area — use an Elasticsearch DSL query and return the first page of results.

## When to prefer this

Use this endpoint when you need to search across a large population of person records with flexible query logic (DSL or SQL), especially when filtering on multiple attributes simultaneously or paginating through large result sets. Prefer this over the PDL Person Enrich endpoint when you don't have a specific identifier (email, LinkedIn URL) and need to discover people matching a set of criteria.

## Known failure modes

- Invalid Elasticsearch DSL or SQL syntax returns a query parsing error
- Expired or invalid scroll_token results in pagination failure
- Rate limiting or quota exhaustion returns a 429 error
- Malformed request body returns a 400 validation error
- No matching records returns an empty result set
- Authentication failure returns a 401 or 403 error

## How this service works

PDL Person Search - Search across 3B+ person records using Elasticsearch DSL or SQL queries. Returns matching person records with pagination via scroll_token.

## Output

A list of matching person records with fields such as name, job title, employer, location, email, phone, LinkedIn URL, education history, and skills, plus a scroll_token for fetching the next page of results.

## Example request

```json
{
 "size": 10,
 "query": {
  "match_all": {}
 },
 "dataset": "all",
 "titlecase": false
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "properties": {
      "sql": {
       "type": "string",
       "description": "SQL query: SELECT * FROM person WHERE ..."
      },
      "size": {
       "type": "integer",
       "maximum": 100,
       "minimum": 1,
       "description": "Batch size (1-100, default 1)"
      },
      "query": {
       "type": "object",
       "description": "Elasticsearch v7.7 DSL query object",
       "propertyNames": {
        "type": "string"
       },
       "additionalProperties": {}
      },
      "dataset": {
       "type": "string",
       "description": "Datasets to include: resume, email, phone, mobile_phone, street_address, consumer_social, developer, all"
      },
      "titlecase": {
       "type": "boolean",
       "description": "Titlecase text in response"
      },
      "scroll_token": {
       "type": "string",
       "description": "Pagination token from previous response"
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/pdl-person-search-ebdccfd4/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stable-people-data-git-pdl-signoz-usage-alarms-merit-systems.vercel.app](https://www.zero.xyz/host/stable-people-data-git-pdl-signoz-usage-alarms-merit-systems.vercel.app/llms.txt)
