Skip to main content
POST
Find people
Search for people using person, role, current-company, and past-experience filters, then page through the matching lead records.
The Search and Count people operations share a limit of 6 requests per second per workspace. Search costs 0.1 credits per returned lead; empty result pages are not charged. Count accepts the same query for free.
Search returns at most 100 leads per request. When next_cursor is not null, send it unchanged as cursor with the same query. Do not derive or edit cursor contents. After a 429, wait for the next second and retry with bounded exponential backoff. Failed searches do not return charged leads. For temporary 502 or 503 responses, use a limited number of retries with increasing delays; contact support if errors persist.

Count matching people

Use POST https://api.airscale.io/v1/find-people/count to estimate this audience before retrieving leads. Send the same query object and Bearer authorization as Find people, with Content-Type: application/json. Omit size and cursor: Count has no pagination fields. Count is free. It neither reserves nor debits credits and returns only total, the number of matching people. It shares the search rate limit above; after a 429, retry with bounded backoff.
Count request
Count response

Combining past-experience filters

All past-experience filters apply to the same prior role. For example, combining pastJobTitle.include: ["Engineer"] with pastCompanyName.include: ["Example Company"] finds people who worked as an engineer at that company. It does not match someone who was an engineer at another company and held a different role at Example Company. pastCompany.location accepts country names and ISO alpha-2 country codes, just like location and currentCompany.location.

Lead fields

leads contains public person records. The following fields are common, not a guarantee that every field is present or non-null. Preserve additional public fields your integration needs and tolerate missing values. Use next_cursor from the response envelope for pagination. Do not construct a cursor from a lead’s fields.

Next step

Use the same query to retrieve the counted audience, Find companies to discover organizations, or Rate limits before adding concurrency.

Authorizations

Authorization
string
header
required

Use an Airscale workspace API key. Never expose the key in client-side code.

Body

application/json

Provide at least one supported query filter. Search pagination accepts a page size from 1 to 100 and an optional opaque cursor.

query
object
required
size
default:100

A page size from 1 through 100 supplied as an integer JSON number or one of the equivalent canonical decimal strings. OpenAPI intentionally uses canonical decimal strings even though runtime Number() accepts additional JS-coercible spellings.

Required range: 1 <= x <= 100
cursor
string

An opaque value returned as next_cursor by the preceding page. Send it unchanged.

Minimum string length: 1

Response

A page of matching public lead records.

total
number
required
leads
object[]
required
next_cursor
string | null
required