Skip to main content
The Company Search API finds companies in the CompanyEnrich dataset and returns a full company record for each match. One endpoint, POST /v2/companies/search, supports three ways to search.

Search modes

Filters work with both of the other modes. Semantic and lookalike search cannot be used in the same request.

Filters

Every filter, with matching rules and accepted values.

Examples

Ready-to-run queries in cURL, four SDKs, and the CLI.
This request finds SaaS companies in the United States with 51 to 500 employees. You need an API key, which you can create at app.companyenrich.com/access-keys.
The response holds the matching companies and a cursor for the next page. This example is shortened and shows a fictional company. See the company schema for every field.

Endpoints

All of them take the same filter, semantic, and lookalike fields, so you can count or preview a query before you pay for it.

Response fields

Page through results

Search uses cursor pagination. Numbered pages are not supported.
  • Omit cursor on the first request. To get the next page, send the same query with the nextCursor from the previous response.
  • Keep the query unchanged while you page.
  • A cursor expires 24 hours after the first page.
  • pageSize accepts 1 to 100.
The SDKs follow cursors for you: searchAll in the JavaScript and PHP SDKs, search_all in the Python and Ruby SDKs, and --all or --limit in the CLI. See Fetch every result. For large result sets, use an export. It pages through the search in the background and gives you one file to download. See Export a large search to CSV.

Add more data with expand

A search returns the standard company profile. The expand parameter adds paid data to every company on the page. The company schema lists the fields each expansion returns.

What a search costs

  • You pay per company returned: 1 credit for a filter search, 2 for a semantic search, and 5 for a lookalike search, plus 1 for each expansion.
  • You pay for every company on a page you fetch, even if you only use the first few. Set pageSize close to the number of results you need.
  • A search that returns no results costs one result’s base price.
  • Count and preview requests are free.
For example, a semantic search that returns 25 companies with the technologies expansion costs 25 × (2 + 1) = 75 credits. See Credits for every price.

Limits

Common questions

How do I test a query without spending credits?

Send the same query to the count endpoint. It returns how many companies match and costs nothing. If your plan includes previews, the preview endpoint also returns up to 25 company summaries for free. No. A request can contain semantic or lookalike, not both. Either one can be combined with filter.

Why did my semantic search apply filters I did not send?

By default, a semantic search reads attributes such as location and size from your query and applies them. The response’s interpretation field shows what it inferred. Set semantic.autoFilter to false to turn this off. See Semantic search options.

How do I get more than 100 companies?

Request the next page with nextCursor, or let an SDK’s searchAll method do it. For thousands of results, use an export.

Does an empty result cost credits?

Yes. A search that returns nothing costs one result’s base price: 1 credit for a filter search, 2 for a semantic search, and 5 for a lookalike search. Count the matches first to avoid this.

How do I search every company without a filter?

Send an empty object, {}, as the request body.

Company Search API filters

Every filter, with matching rules and accepted values.

Company Search API examples

Ready-to-run queries for common jobs.

Company schema

Every field in a company record.

API reference

The full request and response specification, with a playground.