Use case
Exclusions keep known records out of search results — existing customers, accounts your sales team is already working, seed profiles that shouldn’t appear in lookalike results, or people and companies that should never be contacted. The API searches first, then removes excluded records before returning results. Matching behavior is unchanged.Errors
For error responses (400, 403, 422, etc.), see Handling Errors.Choosing an approach
Supported endpoints
Inline exclusions
Inline exclusions apply only to the request that sends them.People
Useexclude_entity_ids. In people mode it accepts LinkedIn public IDs or LinkedIn profile URLs:
Companies
Company searches useexclude_entity_ids:
- Numeric LinkedIn company IDs
- LinkedIn company URLs
- LinkedIn company slugs
- Exact website domains
Saved exclusion lists
Saved lists are reusable, organization-scoped suppression lists. Each list has anentity_type of person or company; a person list can only be used in people search, and a company list only in company search.
Creating a list is asynchronous. A successful request returns 202 Accepted with the list id and status: "pending":
GET /search/exclusion-lists/{list_id} and use the list only after status is ready.
Create from inline IDs
Usesource.type = "entity_ids" for both people and companies.
People:
Create from a CSV upload
Upload the CSV first to get aresource_handle_id, then create the list:
id_column is optional if the API can detect the right column. Recognized column names:
Create from a completed search
Usesource.type = "search_id" to turn a completed search into a reusable list. The source search mode must match the list entity_type: a people search produces a person list, a company search a company list.
source can carry its own exclusions, so the list is built from the search results minus another list:
Using a saved list in search
Pass the list ID inexclude_list_ids:
Limits
Pagination
Send exclusions only on the first/search/query request. Cursor requests must send only cursor — no exclude_*, mode, query, or page_size.
First page:
page_size — even zero rows while has_more is still true. Keep paging until next_cursor is null.
Don’t rely on
total_available to size pagination or count how many records were excluded. Page until next_cursor is null to retrieve every eligible row.Deep search
POST /search/start-deep-search accepts the same exclusion fields: exclude_entity_ids and exclude_list_ids.
output_mode: "csv", Sixtyfour applies exclusions before producing the CSV.
For output_mode: "query_only", the returned search_id stores the query, not your exclusions — send them again when browsing:
- Call
POST /search/start-deep-searchand save the returnedtask_id. - Poll
GET /search/status/{task_id}until the search iscompleted. - Read
search_idfrom the completed status response. - Call
POST /search/querywith thatsearch_idand any exclusions to apply.