Search companies by name, sector, funding and business signals
View all Crunchbase Company & Investment Data endpoints →Discover companies with optional query-string filters. query is a company-name prefix, while description filters text contained in the company description. Use category, category_group and location for sector and geography; company_type, operating_status and ipo_status for business status; employee_count for one or more comma-separated headcount bands; and founded_after, founded_before or closed_after for date boundaries. Founder, investor, funding-stage, latest-round, investor-focus, stock-exchange, hub-tag, funding-total, activity-count and Growth Score or Heat Score filters further narrow the search. Date inputs use YYYY-MM-DD; total-funding bounds are in USD. Every parameter is optional. page defaults to 1 and accepts integers 1-100. sort defaults to rank. The documentation states that founded, last_funding and name sorting return one page; rank, score and count sorts support deeper paging. The successful live probe for query=stripe and page=1 returned HTTP 200 with count=82, current_page=1, per_page=15, total_pages=6, sort=rank and 15 items. The observed envelope also contains next and previous navigation references. A deliberately nonexistent name returned HTTP 200 with count=0, items=[], total_pages=0 and next=previous=null. Treat that as a valid no-match result, not a missing-company error or a reason to repeat unchanged requests. Observed company items contain id, uuid, name, link, image, short_description, website and aliases; founded_on, closed_on, operating_status, ipo_status, employee_count and revenue_range; categories and category_groups containing id/name entries; and a nullable location object with city, region, country, continent, ids and groups. Ranking and activity fields include rank, rank_company, rank_delta_90d, growth_score, heat_score, contacts_count, exits_count, investments_count and diversity_spotlight_investments_count. Funding fields include funding_total, equity_funding_total, funding_stage, last_funding_type and last_funding_at. Relationship fields include investors, founders and acquirer; observed founder entries expose id, uuid, name, type and link, while an observed acquirer object also includes image. Other observed fields are investor_type, investor_stage, went_public_on, delisted_on, stock_exchange and stock_symbol. Empty investors arrays in this probe do not establish a populated investor-entry schema. Funding amounts and several company, market and date fields were null in the live result; aliases, location and acquirer can also be null. Preserve unknown values rather than converting them to zero or an inferred business status. Only the name-prefix search and no-match behavior were live-probed here. The other filters, allowed values and sort restrictions are documented capabilities, not individually verified filter outcomes; returned counts are not a guarantee of complete market coverage.
API Features
Live API Demo
🔒 Sign in to try it live
Log in to call this API with your own API key. New accounts get 100 free credits — no card required.
Log in / Sign upNo active API key found. Create one in your Dashboard, then reload this page. Dashboard →
/api/project/crunchbase/search-companies API Response (JSON)
{} curl -X GET 'https://api.opendata-api.com/api/project/crunchbase/search-companies?key=<API_KEY>&page=1&sort=rank'
Query Result
Use Cases
- Create a startup sourcing shortlist for a selected industry and location, then refine it with funding stage and employee-count bands.
- Find companies associated with a known founder or investor before selecting the correct organization for account enrichment.
- Build a company discovery interface that shows a result count, navigates available pages and renders zero matches as an intentional empty state.
- Screen account-research candidates using documented funding, news-article, listed-employee or contact-count thresholds without assuming those contacts are returned.
- Compare company momentum candidates using Growth Score or Heat Score filters while retaining null financial and date values in downstream analysis.
- Let analysts deliberately relax restrictive company filters after a no-match response instead of automatically repeating the same search.
Frequently asked questions
Does query perform a general full-text search?
No. The documented query behavior is a company-name prefix match. To require text within a company description, use the separate description filter. The live prefix probe returned multiple candidate organizations, so select the intended company by its identifiers rather than the query text alone.
How can I filter a startup shortlist by industry, geography or funding?
Use category or category_group for industry, location for geography, and the documented funding_stage, last_funding_type, funding-date and USD funding-total filters for financing criteria. Industry and location inputs accept names, permalinks or UUIDs; their lookup operations can help identify values. Only the prefix search was live-verified, not every filter combination.
How many companies are returned per page?
The supplied successful probe returned per_page=15, count=82 and total_pages=6, with 15 items on page 1. page is documented as 1-100 and defaults to 1. Use returned pagination metadata rather than treating the first page or the allowed page range as a complete export.
Can I paginate every sort order in the same way?
No. The documentation states that founded, last_funding and name sorting return one page, while rank, score and count sorts support deeper paging. sort defaults to rank. The live probe verified rank on page 1 but did not test those other sorting modes.
What does an empty search response mean?
The no-match probe returned HTTP 200 with count=0, total_pages=0, items=[] and null navigation references. Render an empty result and let the user change filters. This differs from requesting details for an unknown company and does not justify an unchanged automatic retry.
Are funding amounts, dates and investor lists always populated?
No. Funding amounts and many date or company-status fields were null in the observed results, and investors arrays were empty. Preserve null values as unknown; an empty observed investor array does not document the structure of populated investor entries or prove a company has no investors.
What do the employee and contact minimum filters provide?
min_employees_listed and min_contacts are documented minimum-count filters. They do not turn the search result into an employee directory or a verified contact dataset; the observed items contain company metadata and may include contacts_count.