curl --request POST \
--url https://api.airscale.io/v1/company-lookalikes \
--max-time 100 \
--header "Authorization: Bearer $AIRSCALE_API_KEY" \
--header "Content-Type: application/json" \
--data '{"domains":["example.com"],"limit":10}'const url = 'https://api.airscale.io/v1/company-lookalikes';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({domains: ['example.com']})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));import requests
url = "https://api.airscale.io/v1/company-lookalikes"
payload = { "domains": ["example.com"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)Company lookalikes
Find companies similar to your reference domains. Rate limit: 15 requests per rolling minute per workspace. Maximum 5 active searches per workspace.
curl --request POST \
--url https://api.airscale.io/v1/company-lookalikes \
--max-time 100 \
--header "Authorization: Bearer $AIRSCALE_API_KEY" \
--header "Content-Type: application/json" \
--data '{"domains":["example.com"],"limit":10}'const url = 'https://api.airscale.io/v1/company-lookalikes';
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({domains: ['example.com']})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));import requests
url = "https://api.airscale.io/v1/company-lookalikes"
payload = { "domains": ["example.com"] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)limit × 0.5 credits and refunds the unused amount afterward. Zero results cost zero credits. Each workspace can start 15 searches per rolling minute and have 5 active searches at a time.Reference domains and result limits
Send 1–10 company websites indomains. Domains and website URLs are normalized and deduplicated. LinkedIn URLs and IP addresses are not accepted. Reference companies and domains listed in exclude.domains are omitted from results.
limit defaults to 2,000 and applies to the entire response:
| Distinct reference domains | Maximum total results |
|---|---|
| 1 | 2,000 |
| 2 | 4,000 |
| 3–10 | 5,000 |
limit: 5000 request at most 5,000 unique companies in total. Results are deduplicated across references and may be fewer than requested. All results are returned in a single response.
Filters
Useinclude and exclude to filter by country, city, and employee size. Country filters accept country names or ISO alpha-2 codes. A location filter that cannot be resolved can return 422.
Each country or city list accepts up to 100 values. Supported size bands are 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, and 10001+. Use exclude.domains to omit up to 900 company websites.
Use founded.min and founded.max for founding-year bounds from 1000 through 9999; the minimum cannot exceed the maximum.
Company fields
The response containsstatus, total_results, credits_used, data, and warnings. Every company in data includes all of these fields:
| Field | Meaning |
|---|---|
domain | Normalized company domain. |
name | Company name; falls back to the domain when missing. |
description | Company description. |
employee_count | String, commonly an employee range rather than an exact headcount. |
country, city | Company location. |
founded_year | Integer founding year, or null. |
linkedin_url | LinkedIn company profile URL. |
relevance_score | Number or null; not a confidence percentage or guaranteed to be between 0 and 1. |
matched_domains | Normalized reference domains that matched this company. |
warnings for any reference companies that could not be searched. No matches returns an empty data array and costs zero credits.
Credits
A request withlimit: 10 requires 5 available credits; limit: 5000 requires 2,500. Insufficient available credits returns 402. The final charge is based on the unique companies returned, and credits_used reports that amount.
Timing and errors
Allow at least 100 seconds for your client timeout. If a search times out, try fewer reference companies or a lower result limit. A rate or concurrency limit returns429. Wait for the number of seconds in Retry-After when present. See Rate limits.
Next step
Use Find people to search for roles at matching companies, or Find companies to search using firmographic filters instead of reference domains.Authorizations
Use an Airscale workspace API key. Never expose the key in client-side code.
Body
Reference company websites, normalized to domains and deduplicated. Accepts domains or website URLs, not LinkedIn URLs or IP addresses. Reference companies are excluded from results.
1 - 10 elements1 - 2048Total unique results across all references, not per domain. Maximum min(5000, 2000 × distinct normalized reference domains): 2000 for one, 4000 for two, 5000 for three through ten. Searches may return fewer results.
1 <= x <= 5000Optional company filters to include.
Show child attributes
Show child attributes
Optional company filters and domains to exclude.
Show child attributes
Show child attributes
Optional founding-year bounds. min cannot exceed max.
Show child attributes
Show child attributes
Response
Completed search. Companies are unique by domain. Partial reference failures can return remaining results with warnings. Empty results cost zero credits.
"success"Number of companies in data.
0 <= x <= 5000Actual charge: total_results × 0.5 credits.
0 <= x <= 25005000Show child attributes
Show child attributes
Partial reference failures or omitted invalid websites. Empty when no warnings occurred.