v1

latestOpenAPI 3.1.0Proprietary2026-07-265759203.4 KB
Search

Search Query

Run a search query. Provide exactly one query source: simple_filters, filters, parsed_query, or search_id. For pagination, pass cursor alone.

post/search/query

Headers

x-api-keystring nullable

Request body

simple_filtersobject nullable

MongoDB-style filters; the API translates them to DSL.

filtersobject nullable

Raw OpenSearch DSL filters.

parsed_queryobject nullable

Structured filter set returned by a previous search.

search_idstring nullable

Search history ID returned by a previous search. Replays only the query shape; pass exclusions again on this request if they should apply.

querystring nullable

Natural-language query. Mutually exclusive with simple_filters / filters / parsed_query / search_id. People-mode only.

cursorstring nullable

Opaque pagination cursor returned by a previous response.

mode'people' | 'company'

Search mode; inferred from DB when using search_id.

page_sizeinteger

Maximum number of results per page (1-100). Pages may contain fewer rows while more results remain (e.g. with exclusion filtering); rely on has_more/next_cursor, never on page fullness.

max_resultsinteger

Maximum number of results to return across pages.

exclude_public_idsstring[] nullable

People-mode inline identifiers to exclude from results, applied as a post-filter. Accepts LinkedIn public IDs or profile URLs. For company searches, use exclude_entity_ids. Max 1000.

exclude_entity_idsstring[] nullable

Inline identifiers to exclude from results, applied as a post-filter. People mode: LinkedIn public IDs or profile URLs. Company mode: numeric LinkedIn company IDs, company URLs/slugs, or exact website domains (values that resolve to no or multiple companies are ignored). Max 1000.

exclude_list_idsstring[] nullable

Saved exclusion-list IDs to apply as a post-filter. Each list's entity type must match the search mode (person lists for people searches, company lists for company searches). Max 5 (10 for organizations with extended exclusion limits).

location_expansion_enabledboolean

Expand the parsed location filter to nearby areas via PostGIS radius. People-mode query branch only.

location_expansion_radius_milesinteger

Radius (miles) for PostGIS location expansion. Ignored when expansion is disabled.

Response

Successful Response

search_idstring nullable

Search history ID returned by a previous search. Replays only the query shape; pass exclusions again on this request if they should apply.

resource_handle_idstring

Legacy export handle. Empty for company direct-filter mode.

csv_download_urlstring nullable

Signed URL to download results as CSV.

json_download_urlstring nullable

Signed URL to download results as JSON.

next_cursorstring nullable

Cursor to fetch the next page; null when exhausted.

cursor_expires_in_secondsinteger nullable

Seconds until next_cursor expires.

request_duration_msinteger nullable

Server-side request duration in milliseconds.

has_moreboolean

True when another page is available via next_cursor. Always continue via the cursor; a short or empty page does NOT mean the results are exhausted.

page_sizeinteger nullable

Maximum number of results per page (1-100). Pages may contain fewer rows while more results remain (e.g. with exclusion filtering); rely on has_more/next_cursor, never on page fullness.

page_countinteger nullable

Number of results in this response page. May be less than page_size (down to 0) while has_more is true, e.g. when exclusion filtering is active.

page_numberinteger nullable

1-based page number (company pagination).

total_pagesinteger nullable

Final total page count; omitted while has_more is true.

max_pagesinteger nullable

Upper bound on pages based on max_results and page_size.

remaining_resultsinteger nullable

Rows still available under max_results after this page.

download_expires_in_secondsinteger nullable

Seconds until the download URLs expire.

total_resultsinteger required

Rows returned so far (cumulative for company pagination).

total_availableinteger nullable

Total OpenSearch matches across pages (capped at 50000); people-mode only. Pre-exclusion: exclusion filtering does not reduce this count.

exported_countinteger

Legacy export count; always 0 for company direct-filter mode.

resultsobject[]

Rows returned for the current page.

parsed_queryobject nullable

Structured filter set echoed back; round-trippable into a follow-up request.

natural_language_querystring nullable

Original natural-language query echoed verbatim, if any.