Endpoint essentials
YOUR_API_KEY in each example with your actual API key. All
requests require the x-api-version: 2025-11-01 header.Request body
search fields
Find companies by what they do
Use ranked search when your criteria describe a product, capability, or business model that does not map cleanly to a filter field. This request combines a natural-language query with a hard country filter.hybrid for most discovery queries. Use lexical when literal wording matters,
or semantic when conceptual similarity matters more than shared keywords.
Match literal keywords
Uselexical mode when the exact words in the query matter. This mode uses
keyword retrieval without semantic vector matching.
Find conceptually similar companies
Usesemantic mode when companies may describe the same capability with
different terminology. This mode uses embedding similarity without keyword
retrieval.
Response body
Ranked pagination
Ranked search supports pagination inhybrid, lexical, and semantic modes.
Set limit to the number of results you want per page, from 1 to 100. Pass
next_cursor back as cursor to continue beyond the first 100 results.
A ranked search exposes at most 1,000 candidate positions, not an exhaustive
list of every matching company. The first 100 candidates are reranked. Later
results use retrieval ranking without another reranking pass.
Keep the same search, filters, and x-api-version on subsequent requests.
You can change limit and authorized fields. Cursors expire 20 minutes after
the initial search; paging does not extend that time. If a cursor expires or
becomes invalid, restart without cursor.
Continue until next_cursor is null, even if a page is short or empty.
Company records can change between pages. See the
pagination reference for details.
Rate limits and credits
0.03 credits per result, plus a
per-result charge for each premium group you filter on or receive: taxonomy
0.1; followers, headcount, funding, hiring, software reviews
and maps 0.2; technographics 1 on the filter side
only. Filtering and receiving bill separately, and sorting is free. Premium
groups are returned when you name them in fields, or when your
plan includes them at no charge, so a plain request costs the base price. A
request with no results does not consume credits. The full table is under
Premium fields in search. For
your own prices, open the Pricing tab in the
dashboard or call /account/endpoints.- Rate limit: 30 requests per minute.
Examples
or/nested logic, well-funded-by-country, recently founded.Pagination & sorting
Reference
Your first search: find a company by domain
The simplest search finds a company by its exact primary domain. You pass a single filter with the= operator.
Understanding the response
Every search response has three fields:companies: an array of matching company records. Each record containscrustdata_company_idand the fields you requested infields.next_cursor— a pagination token. Pass it in the next request to get the next page.nullmeans there are no more pages.total_countis alwaysnullfor ranked search. For filter-only search, it reports the matching count when available.
How to interpret results
next_cursorisnull: You have reached the last page. No more results.total_countisnull: Ranked searches do not report a total. Filter-only totals can also be unavailable. Usenext_cursorto decide whether to continue.- Empty
companiesarray: On a ranked continuation, records may have changed or no longer match. Continue ifnext_cursoris present. If it isnull, the search has ended.
Controlling which fields come back
Thefields parameter lets you pick exactly which fields to include. This keeps your responses small and focused. If you omit fields, the API returns all available fields for each company.
Each company always includes crustdata_company_id, even when you do not request it. Every field you request is in the response. If a company has no data for a field, its value is null. If a requested group has no data, the whole group is null, even when you asked for one of its sub-fields. For example, a company with no maps data returns {"crustdata_company_id": 1128887, "maps": null} for "fields": ["maps"].
Combine filters with and
Real searches need more than one criterion. Wrap multiple conditions inside an op: "and" group to require all of them.
This search finds software development companies headquartered in the USA, sorted by headcount (largest first).
filters object, you now have a group with op: "and" and a conditions array. Every condition must match for a company to be included.
For or and nested logic, or for finding well-funded or recently founded
companies, see the Examples below. To walk through
large result sets, see
Pagination and sorting.
Examples
Worked recipes you can copy, paste, and adapt. Each example is a full working request. For the core walkthrough (first search, combining filters withand),
see the sections above. For the operator list, field catalog, and validation
rules, see Search reference.
Continue a ranked search with a cursor
Continue a ranked search with a cursor
next_cursor into cursor. The cursor
strings below are placeholders; company IDs are from the live validation.next_cursor is null. Keep the query,
mode, filters, and API version unchanged. Replaying the same cursor preserves
candidate order while the search session remains valid.Find companies with hybrid search and a hard filter
Find companies with hybrid search and a hard filter
hybrid mode for broad discovery across keywords and concepts. Add a
structured filter when part of your criteria must match exactly.This request finds AI infrastructure companies focused on model deployment and
monitoring, then restricts the candidates to companies in the USA.Find companies with lexical keyword search
Find companies with lexical keyword search
lexical mode when the words in your query matter more than conceptual
similarity. This request looks for company descriptions that match a set of
MLOps terms.Find conceptually similar companies with semantic search
Find conceptually similar companies with semantic search
semantic mode when relevant companies may describe the same capability
with different words. This request finds platforms that help engineering teams
observe and troubleshoot distributed systems.Use or and nested logic
Use or and nested logic
op: "or" when a company should match any condition. You can also nest and/or groups for complex queries.This search finds companies that are either in the software development
industry or have over $5M in total investment, AND are headquartered in the
USA.and requires both conditions: the inner or matches either
software development companies or well-funded companies, and the outer
condition restricts to US-headquartered companies.Find well-funded companies in a country
Find well-funded companies in a country
Filter by revenue and latest funding details
Filter by revenue and latest funding details
funding.investors contains known investors across the company’s funding
history. Combining it with funding.last_* filters means the company has
that investor and its latest round matches the other conditions. It does
not mean that investor participated in the latest round.Find recently founded companies
Find recently founded companies
> and < on numeric or date fields. This search finds companies founded after 2020, sorted by headcount.Find companies by team size in a function
Find companies by team size in a function
roles.distribution.<function> to find companies by the number of employees in a specific function — for example, companies with a large engineering team. Combine it with an industry or location filter to narrow the result.Find high-growth mid-size companies
Find high-growth mid-size companies
headcount.growth_percent.6m to find companies whose 6-month headcount growth exceeds a threshold. The same shape applies to .1m, .3m, .12m and to headcount.growth_absolute.* for absolute employee deltas./company/search returns the growth map under period keys 1m, 3m,
6m, 12m. The same underlying data is also returned by
/company/enrich, but with
different keys (mom, qoq, six_months, yoy, two_years).Find a company's competitors
Find a company's competitors
crustdata_company_id to competitors.company_ids (or
its domains to competitors.websites) to pull the companies Crustdata tracks
as its competitors. Here, competitors of OpenAI (631466).Find companies backed by a specific investor
Find companies backed by a specific investor
funding.investors to find every company an investor has backed.
This search finds Sequoia Capital portfolio companies, sorted by total funding.funding.investors in fields to
see the company’s all-time investor list. This field does not identify
participants in a specific funding round.Find educational institutions in a country
Find educational institutions in a country
basic_info.company_type with an industry and a country filter — a
common first step in alumni or talent-flow workflows. This search finds UK
universities, ranked by headcount.Find companies by HQ country
Find companies by HQ country
locations.country with a full country name, such as Canada, or
an ISO 3166-1 alpha-3 code, such as CAN. Both forms return the same
companies. This search finds companies with headquarters in Canada and more
than 100 employees."Canada", for either filter form. See Normalized location facets.Search within a radius of headquarters
Search within a radius of headquarters
geo_distance filter finds companies whose headquarters is within a
specific distance of a point. Apply it to the locations.headquarters field.This search finds companies with more than 100 employees headquartered within
50 km of Palo Alto.value is an object whose centre is given as either a location
string (geocoded server-side) or an explicit lat_lng pair (which skips
geocoding). If both are supplied, lat_lng wins. distance is required and
must be positive; unit is optional and defaults to km (also accepts mi,
miles, m, meters, ft, feet). See the
geo_distance reference
for the full value-object table.Search by explicit coordinates
Uselat_lng when you already have coordinates (for example, from a map
picker) or you want to skip the geocoding step. The example below finds
companies headquartered within 25 miles of latitude 37.4419, longitude
-122.143 (Palo Alto).Exclude a geographic radius
Exclude a geographic radius
geo_exclude filter is the inverse of geo_distance — it removes
companies headquartered inside the radius and keeps everyone else. Use it
to carve out a metro you already cover, or to target companies outside a
region.This search finds companies that are not headquartered within 100 km of
London.geo_exclude accepts the same value object as geo_distance (location or
lat_lng, a required distance, and an optional unit), so you can also
exclude a radius around explicit coordinates.Search inside a polygon
Search inside a polygon
geo_polygon filter finds companies whose headquarters falls inside a
polygon you describe with coordinates. Reach for it when a circle is the wrong
shape for the area you care about, such as a sales territory or a metro
boundary traced on a map. Apply it to the locations.headquarters field.This search finds companies with more than 100 employees headquartered inside
a triangle covering the San Francisco peninsula.value is an object with a single points key: a list of [lat, lng]
pairs, at least 3 distinct points and at most 1,000. The polygon closes itself,
so you do not need to repeat the first point. Coordinates are used as given and
are not geocoded. See the
geo_polygon reference
for the value-object table and the 400 cases.Find companies by follower count and growth
Find companies by follower count and growth
followers.count and followers.six_months_growth_percent to find
companies with a large, fast-growing audience.followers.count is sortable; the follower-growth fields are filterable but not sortable.Look up companies by domain
Look up companies by domain
basic_info.primary_domain with the
in operator to resolve known domains in a single call.Fetch specific companies by Crustdata ID
Fetch specific companies by Crustdata ID
crustdata_company_id values (from a previous search or
Identify call), fetch those exact records with the in operator. This is the
most deterministic way to pull specific companies.Find recently IPO'd or acquired companies
Find recently IPO'd or acquired companies
revenue.public_markets.ipo_date to find companies that went public in a
date window, or revenue.acquisition_status to find acquired companies.Companies that IPO’d in 2020–2021 (1,000+ employees):revenue.acquisition_status matches the lowercase value "acquired".Find companies by recent funding round
Find companies by recent funding round
funding.last_round_type with funding.last_fundraise_date to find
companies that recently raised a specific round. This search finds companies
whose latest round was Series A/B/C and closed on or after 2024-01-01.series_a, series_b). Use => / =< for date ranges — >= and <= are not supported.Find companies by category and market
Find companies by category and market
taxonomy.categories and basic_info.markets for fine-grained
segmentation. This search finds AI companies in the software-development
industry, ranked by headcount.Find companies by NAICS or SIC code
Find companies by NAICS or SIC code
taxonomy.primary_naics_detail.naics_code to find companies in one
NAICS industry. Name taxonomy.primary_naics_detail and
taxonomy.sic_detail_list in fields to get the classification back with
each result. This search finds the largest US companies under NAICS 541511,
Custom Computer Programming Services.taxonomy group also returns both objects, and they have no price of
their own. To match on a SIC code instead, filter on
taxonomy.sic_detail_list.sic_code. Two sic_code conditions under and
match a company whose list holds both codes, even in different entries.
Most companies carry no NAICS or SIC classification and return null for
both. See the
NAICS and SIC note in the
search reference.Find companies by type and fuzzy name match
Find companies by type and fuzzy name match
(.) fuzzy operator on basic_info.name to match name variants and
tolerate typos, combined with a basic_info.company_type filter. This search
finds privately held companies with “robotics” in the name.(.) is fuzzy (tolerates typos, ignores word order); use [.] for exact token matching.What to do next
- Paginate and sort — see Pagination and sorting to walk through all matching companies.
- Look up operators and fields — see Search reference for operators, searchable fields, response fields, validation, and errors.
- Enrich a company — use Company Enrich to get a detailed profile for a known company.
- Discover filter values — use Company Autocomplete to find valid values for industries, categories, and countries before building search filters.

