POST /api/v1/companies/search
Search our data lake of companies using any combination of filters.
Body parameters
| Parameter | Type | Description |
|---|---|---|
query |
string | Full-text search across company name and tagline |
country |
string | HQ country, ISO 2-letter code e.g. "US" |
city |
string | HQ city name |
industry |
string | Industry label |
min_staff |
integer | Minimum employee count |
max_staff |
integer | Maximum employee count |
page |
integer | Page number (default: 1) |
per_page |
integer | Results per page (default: 10, max: 50) |
Code examples
curl -X POST "https://kooperativa.io/api/v1/companies/search" \
-H "Authorization: Bearer ik_live_..." \
-H "Content-Type: application/json" \
-d '{"industry": "Software Development", "country": "US", "min_staff": 50}'const res = await fetch("https://kooperativa.io/api/v1/companies/search", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.KOOPERATIVA_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
industry: "Software Development",
country: "US",
min_staff: 50,
}),
});
const { results, total } = await res.json();Response
{
"results": [
{
"id": "b40cd26f-...",
"company_id": "2135371",
"name": "Stripe",
"staff_count": 16904,
"hq_city": "South San Francisco",
"hq_country_code": "US",
"industries": ["Financial Services"],
"fetched_at": "2026-07-14T10:00:00Z"
}
],
"total": 3674,
"page": 1,
"per_page": 10
}