This endpoint is a POST endpoint, instead of GET - a deviation from the REST APIs standards we’re following because of the complex arguments it accepts, which would be too hard to express through query parameters. Results are ordered by each lead’s id field in ascending order (or by contact when distinct_contacts is true) so clients can paginate chronologically by reusing the cursor returned in next_starting_after. Leads created on or after October 15, 2025 respect this chronological ordering; older records may appear out of sequence when sorted by ID.
Requires one of the following scopes: leads:read, leads:all, all:read, all:all
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
A search string to search the leads against - can be First Name, Last Name, or Email
"John Doe"
Filter criteria for leads. For custom lead labels, use the interest_status field.
"FILTER_VAL_CONTACTED"
Campaign ID to filter leads
"019cc043-d74d-7eae-885a-00dbd6697052"
List ID to filter leads
"019cc043-d74d-7eae-885a-00dcbf3b1304"
Whether the lead is in a campaign
true
Whether the lead is in a list
true
Array of lead IDs to include
Array of lead IDs to exclude
Array of emails the leads needs to have
The number of items to return
1 <= x <= 10010
Forward pagination cursor. When distinct_contacts is false, provide the id value from the last lead of the previous page; when true, provide the lead's email.
"019cc043-e397-7dfa-a912-4ff0a05e5fe9"
Array of organization user IDs to filter leads
Smart view ID to filter leads
"019cc043-e397-7dfa-a912-4ff20fd50b7d"
Whether the lead is a website visitor
true
Whether to return distinct contacts
true
Enrichment status to filter leads
1, -1, 11, -2 1
ESG code to filter leads
0, 1, 2, 3, 4, all, none "1"