Database
POST
/database/people/search

Search the people database by named filters. At least one filter is required; unknown filter keys are rejected. Array filters match any of their values; text filters are fuzzy. Every result returned consumes workspace AI credits. Paginate by passing the returned nextCursor back as cursor (filters must stay identical between pages).

Authorization

bearerAuth
AuthorizationBearer <token>

An API key created under Settings → API & Webhooks.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/database/people/search" \  -H "Content-Type: application/json" \  -d '{    "filters": {      "titles": [        "CTO",        "VP Engineering"      ],      "countries": [        "United States"      ],      "headcountRanges": [        "51-200",        "201-500"      ]    },    "limit": 25  }'
{  "data": [    {      "id": 0,      "name": "string",      "firstName": "string",      "lastName": "string",      "headline": "string",      "title": "string",      "location": "string",      "country": "string",      "picture": "string",      "linkedinUrl": "string",      "company": {        "name": "string",        "title": "string",        "domain": "string",        "linkedinUrl": "string",        "companyId": 0,        "headcount": 0,        "headcountRange": "string",        "industries": [          "string"        ],        "startDate": "string",        "endDate": "string"      },      "pastCompanies": [        "string"      ],      "education": [        {          "school": "string",          "degree": "string",          "field": "string"        }      ],      "contact": {        "hasBusinessEmail": true,        "hasPersonalEmail": true,        "hasPhone": true      },      "yearsOfExperience": 0,      "saved": true    }  ],  "paging": {    "nextCursor": "string",    "totalCount": 0  }}