GET
/api/v1/search/people
10 credits
Search professional records with rich filters — name, title, company, skills, education, tenure, geography. Cursor-paginated.
Try in PlaygroundParameters
| Name | Type | Required | Description |
|---|---|---|---|
| first_name | string | no | First name (min 3 chars). |
| last_name | string | no | Last name (min 3 chars). |
| headline | string | no | Free-text headline match (min 3 chars). |
| summary | string | no | Free-text summary/about match (min 3 chars). |
| title | string | no | Job-title match (min 3 chars). (e.g. founder) |
| geo_city | string | no | City name (min 3 chars). (e.g. san francisco) |
| geo_country_code | string | no | ISO country code. (e.g. us) |
| primary_language | string | no | Profile primary language code, e.g. en. |
| is_creator | boolean | no | Only content creators. |
| is_premium | boolean | no | Only premium members. |
| organization_slugs | string | no | Comma-separated company slugs — the part after linkedin.com/company/. Company URLs and org_ ids (from companies_info / search_companies) are accepted and translated. Combine with current_only=true for people who work there NOW. (e.g. microsoft,google) |
| institution_ids | string | no | Comma-separated institution ids (inst_...). Resolve via /search/schools. |
| certifications | string | no | Certification name filter. |
| certification_authority | string | no | Certification issuing authority filter. |
| speaks_language | string | no | Spoken-language filter. |
| current_only | boolean | no | Restrict title/company matches to current positions. |
| skills | string | no | Comma-separated normalized skill names. Resolve via /g/title-skills-lookup. (e.g. python,leadership) |
| skills_match | string | no | Skill match mode. Accepted values: any (default), all. |
| skill_count_min | integer | no | Minimum number of listed skills. |
| skill_count_max | integer | no | Maximum number of listed skills. |
| last_change_within_days | integer | no | Only people with a job change in the last N days. |
| last_change_type | string | no | Job-change type. Accepted values: joined, left, title_change. |
| tenure_min_years | integer | no | Minimum tenure in current role (years). |
| tenure_max_years | integer | no | Maximum tenure in current role (years). |
| company_count_min | integer | no | Minimum number of companies in history. |
| company_count_max | integer | no | Maximum number of companies in history. |
| current_company_count_min | integer | no | Minimum number of concurrent current companies. |
| is_boomerang | boolean | no | Only people who rejoined a former employer. |
| education_level | string | no | Education level filter. |
| degree | string | no | Degree filter. |
| field_of_study | string | no | Field-of-study filter. |
| limit | integer | no | Results per page, 1-50 (default 20). |
| cursor | string | no | Opaque pagination cursor; omit for the first page. |
Example request
curl -H "X-API-Key: zq_…" \ "https://zooq.dev/api/v1/search/people?title=founder&geo_city=san+francisco&geo_country_code=us&organization_slugs=microsoft%2Cgoogle&skills=python%2Cleadership"
Example response
{
"success": true,
"statusCode": 200,
"message": "Data retrieved successfully",
"errors": null,
"data": [
{ "id": "prsn_7meo9q4v5sr2i", "url": "https://linkedin.com/in/kevinisrael", "handle": "kevinisrael", "first_name": "Kevin", "last_name": "Israel", "is_creator": true, "is_premium": true, "headline": "Technology Leadership | AI Agents | AI Assisted Software Engineering | ...", "geo": { "city": "Charlotte, North Carolina", "country": "United States", "countryCode": "us" }, "geo_city": "Charlotte, North Carolina", "geo_country_code": "us" },
{ "id": "prsn_plbcensavnv0k", "url": "https://linkedin.com/in/victor-leipnik-2515352", "handle": "victor-leipnik-2515352", "first_name": "Victor", "last_name": "Leipnik", "is_creator": false, "is_premium": false, "headline": "Co-Founder, CTO, Shodai Network", "geo_city": "Kitchener, Ontario", "geo_country_code": "ca" }
],
"pagination": { "limit": 2, "has_more": true, "next_cursor": "cur_p9otuvk86s1no" }
}Successful responses are wrapped in the standard envelope. The data field carries the actual payload; errors is null on success.
Available via MCP as search_people
Add Zooq as an MCP server to Claude Desktop or Cursor and call this tool directly from your agent. See the MCP guide.
Want to try this endpoint?
300 free credits on signup, no card required. That covers 30 calls.
Get an API key →