POST /v2/search/companies) lets you find companies matching precise criteria.
Use it to:
- Build ABM target lists from scratch
- Identify ICP-matching accounts by industry, size, and geography
- Power dynamic prospecting workflows without static lists
How It Works
You send aPOST request with a company object containing your filters. All filters are optional and combined with AND logic. Within each filter, multiple values use OR logic.
The API returns a paginated list of company profiles matching your criteria.
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
company | object | Yes | Filter object. All nested fields are optional and combined with AND logic. |
max_results | integer | No | Number of companies to return. Default: 10. Max: 25. |
cursor | string | No | Pagination cursor from a previous response. Pass to get the next page. |
Company Filter Fields
| Field | Type | Description | Example |
|---|---|---|---|
keywords.include | array | Keywords that must appear in the company profile | ["SaaS", "B2B"] |
keywords.exclude | array | Keywords to exclude | ["agency", "consulting"] |
industry.include | array | Industry names (must use normalized values) | ["Software Development"] |
hq.country_code | array | HQ country codes (2-letter ISO, e.g., "US") | ["FR", "DE"] |
employee_range | array | Employee count ranges | ["51-200", "201-500"] |
Example Request
Find SaaS companies with 51-500 employees headquartered in France or Germany:Response Schema
| Field | Type | Description |
|---|---|---|
results_length | integer | Number of results in this page. |
cursor | string | Pass this value in the next request to get the following page. null if no more results. |
results[].name | string | Company name. |
results[].linkedin_url | string | Company LinkedIn URL. Use this as input for Waterfall ICP, Employee Finder, and Company Enrichment endpoints. |
results[].website | string | Company website domain. |
results[].industry | string | Normalized industry name. |
results[].employee_count | integer | Approximate employee count. |
results[].hq | object | Headquarters location (city, country, country_code). |
Pagination
The API supports cursor-based pagination. Each response includes acursor field. Pass it in the next request to get the following page.
cursor is null in the response, you’ve reached the last page.
Recommended Workflow
Use Company Search as the first step in your ABM pipeline:Find ICP-matching companies
Use Company Search to build a list of target accounts matching your ICP filters.
Extract LinkedIn URLs
The
linkedin_url field in the response is your key for all downstream enrichment.Find decision-makers
Pass each
linkedin_url to the Waterfall ICP Search to find the right contacts.
