# Crunchbase Scraper (`automation-lab/crunchbase-scraper`) Actor

Extract company profiles, funding rounds, investors, and founders from Crunchbase via the official API. Requires your Crunchbase API key. Pure HTTP, 256 MB.

- **URL**: https://apify.com/automation-lab/crunchbase-scraper.md
- **Developed by:** [Stas Persiianenko](https://apify.com/automation-lab) (community)
- **Categories:** Lead generation, Automation
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Crunchbase Scraper

Extract **company profiles, funding rounds, investors, and founders** from Crunchbase via the official API. Get rich business intelligence data — funding history, employee count, HQ location, categories, and more — in structured JSON, CSV, or Excel format.

### What does Crunchbase Scraper do?

Crunchbase Scraper is a **pure HTTP actor** that connects to the official [Crunchbase API](https://www.crunchbase.com) to extract structured company data. It supports two modes:

- 🏢 **Organization lookup** — fetch full company profiles by permalink or URL (e.g. `apple`, `openai`, `tesla-motors`)
- 🔍 **Search organizations** — find companies by keyword, funding stage, location, or category

Data extracted per company:

- 📋 **Company basics** — name, description, website, founding date, operating status, company type
- 💰 **Funding data** — total funding raised, last round type and date, number of rounds, individual round details
- 👥 **People** — founders list, board members and advisors
- 🏦 **Investors** — investor names, types, and investment counts
- 📍 **Location** — city, region, country
- 🏷️ **Categories** — industry tags and category groups
- 📈 **Metrics** — Crunchbase rank, Semrush monthly visits, employee count range
- 🔗 **Social links** — LinkedIn, Twitter/X, Facebook
- 🤝 **M&A** — acquisitions and subsidiaries

> **Note:** This actor requires a valid **Crunchbase API key**. If you need to scrape Crunchbase without an API key, see the alternatives section in the FAQ.

### Who is Crunchbase Scraper for?

#### 🏭 Enterprise Sales & Revenue Teams
Sales operations teams who use Crunchbase Enterprise to build prospect lists but need to automate enrichment at scale — exporting hundreds of company records to CRM, filtering by funding stage, or monitoring new funding rounds across their pipeline. Instead of manual exports, connect directly via API and pipe structured data into Salesforce, HubSpot, or your data warehouse.

#### 📊 Investment & Market Research Analysts
VC analysts and market researchers who regularly pull company snapshots for deal flow reviews, competitive landscape reports, or LP updates. Automate the data collection that currently takes hours of manual Crunchbase browsing — run scheduled pulls for your portfolio companies and watchlists.

#### 🤖 Data Engineers & ETL Developers
Engineers building Crunchbase data pipelines who need reliable, structured JSON output — ready for dbt, BigQuery, Snowflake, or Postgres. The actor handles pagination, rate limiting, and API key auth so your pipeline doesn't have to.

#### 🧑‍💼 Startup Ecosystem Researchers
Accelerator program managers, incubators, and ecosystem analysts who track startup cohorts, monitor alumni funding milestones, or build benchmark datasets. Extract funding timelines and founding team data across hundreds of companies in a single run.

### Why use Crunchbase Scraper?

- ✅ **Official API** — uses the authorized Crunchbase API; reliable, no anti-bot risk, no failures
- ✅ **Pure HTTP** — no browser overhead, runs in 256 MB, fast execution
- ✅ **Bulk lookup** — process hundreds of companies in a single run with one API key
- ✅ **Rich funding data** — individual round details, lead investors, amounts, dates
- ✅ **Extended relationship cards** — founders, investors, board members, acquisitions (optional)
- ✅ **Search mode** — filter by keyword, funding stage, location, or category
- ✅ **Clean output** — flat JSON with no nested objects; works with Google Sheets, CSV, Excel export
- ✅ **Apify platform** — schedule runs, export to CSV/JSON/Excel, connect to 5,000+ apps via Zapier/Make
- ✅ **Rate-limit aware** — handles Crunchbase API rate limiting automatically with retries

### What data can you extract?

#### Company overview fields

| Field | Description |
|-------|-------------|
| `name` | Company display name |
| `permalink` | Crunchbase permalink (URL slug) |
| `crunchbaseUrl` | Full Crunchbase profile URL |
| `websiteUrl` | Company website URL |
| `logoUrl` | Company logo image URL |
| `shortDescription` | One-line description (up to ~200 chars) |
| `fullDescription` | Long-form description |
| `companyType` | `for_profit`, `non_profit`, `government`, `school` |
| `operatingStatus` | `active`, `closed`, `acquired`, `ipo` |
| `foundedOn` | Founding date (YYYY-MM-DD or year only) |
| `closedOn` | Closing date (if closed) |
| `ipoDate` | IPO date (if public) |
| `stockSymbol` | Stock ticker (if public) |
| `stockExchange` | Exchange name (if public) |
| `employeeCount` | Employee range (e.g. `11-50`, `501-1000`, `10001+`) |

#### Location fields

| Field | Description |
|-------|-------------|
| `city` | City name |
| `region` | State/region |
| `country` | Country name |
| `address` | Full location string |
| `postalCode` | ZIP / postal code |

#### Funding & financials

| Field | Description |
|-------|-------------|
| `totalFundingUsd` | Total capital raised in USD |
| `totalFundingCurrency` | Original currency of funding total |
| `lastFundingType` | Type of most recent round (e.g. `series_b`, `seed`) |
| `lastFundingOn` | Date of most recent funding round |
| `numFundingRounds` | Total number of funding rounds |

#### Social links

| Field | Description |
|-------|-------------|
| `linkedinUrl` | LinkedIn company page URL |
| `twitterUrl` | Twitter/X profile URL |
| `facebookUrl` | Facebook page URL |

#### Categories

| Field | Description |
|-------|-------------|
| `categories` | Industry tags (e.g. `["artificial-intelligence","saas"]`) |
| `categoryGroups` | Higher-level category groups |

#### Platform metrics

| Field | Description |
|-------|-------------|
| `crunchbaseRank` | Crunchbase company rank (lower = more prominent) |
| `semrushMonthlyVisits` | Estimated monthly website visits |
| `semrushMonthlyVisitsGrowth` | Month-over-month visits growth % |

#### Extended cards (when enabled)

| Object | Fields |
|--------|--------|
| `founders[]` | `name`, `permalink`, `title` |
| `investors[]` | `name`, `permalink`, `type`, `numberOfInvestments` |
| `fundingRounds[]` | `uuid`, `announcedOn`, `fundingType`, `moneyRaisedUsd`, `leadInvestors[]`, `numberOfInvestors` |
| `boardMembers[]` | `name`, `permalink`, `title` |
| `acquisitions[]` | `acquireeName`, `acquireePermalink`, `acquiredOn`, `priceUsd` |
| `subsidiaries[]` | List of subsidiary company names |

### How much does it cost to scrape Crunchbase?

This actor uses **pay-per-event** (PPE) pricing — you pay only for each company profile extracted.

| Tier | Per company (`company-scraped`) | Actor start (flat, once per run) |
|------|--------------------------------|----------------------------------|
| **FREE** | $0.00500 | $0.00500 |
| **BRONZE** | $0.00450 | $0.00475 |
| **SILVER** | $0.00375 | $0.00425 |
| **GOLD** | $0.00300 | $0.00375 |
| **PLATINUM** | $0.00225 | $0.00275 |
| **DIAMOND** | $0.00150 | $0.00200 |

**Real-world cost examples (FREE tier, ~$0.005/company):**

| Task | Companies | Runs | Approx. Cost |
|------|-----------|------|--------------|
| Quick profile check | 5 | 1 | ~$0.03 |
| Competitor landscape (50) | 50 | 1 | ~$0.26 |
| Portfolio monitoring (200) | 200 | 1 | ~$1.01 |
| Weekly funded startup batch | 500 | 1 | ~$2.51 |

With $5 free Apify credits, you can extract roughly **1,000+ company profiles**. Note that your Crunchbase API key costs are separate (Enterprise license from Crunchbase).

### How to scrape Crunchbase companies

1. **Go to the [Crunchbase Scraper page](https://apify.com/automation-lab/crunchbase-scraper)** on Apify Store
2. Click **Try for free**
3. In the **Authentication** section, enter your **Crunchbase API key**
4. Select your **mode**: Organization lookup or Search organizations
5. For **Organization lookup**: add permalinks or full Crunchbase URLs (one per line)
6. For **Search**: enter keywords, filters, and max results
7. Click **Start** — results appear in the Dataset tab

**Example inputs:**

Organization lookup by permalink:
```json
{
    "apiKey": "YOUR_CRUNCHBASE_API_KEY",
    "mode": "organizationLookup",
    "organizationPermalinks": ["apple", "openai", "tesla-motors", "stripe"],
    "includeCards": ["founders", "investors", "funding_rounds"],
    "maxResults": 100
}
````

Search for funded startups in a category:

```json
{
    "apiKey": "YOUR_CRUNCHBASE_API_KEY",
    "mode": "searchOrganizations",
    "searchQuery": "generative AI",
    "fundingStage": "series_a",
    "location": "San Francisco",
    "maxResults": 50,
    "includeCards": []
}
```

Search by company name (full-text):

```json
{
    "apiKey": "YOUR_CRUNCHBASE_API_KEY",
    "mode": "searchOrganizations",
    "searchQuery": "fintech payments",
    "category": "fintech",
    "maxResults": 100
}
```

### Input parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `apiKey` | string | ✅ | Your Crunchbase API key |
| `mode` | string | ✅ | `organizationLookup` or `searchOrganizations` |
| `organizationPermalinks` | array | In lookup mode | Permalinks (e.g. `apple`) or full Crunchbase URLs |
| `searchQuery` | string | No | Keyword to search in company descriptions |
| `fundingStage` | string | No | Filter by stage: `seed`, `series_a`, `series_b`, `ipo`, etc. |
| `location` | string | No | City, region, or country name |
| `category` | string | No | Category slug: `artificial-intelligence`, `saas`, `fintech`, etc. |
| `minEmployees` | number | No | Minimum employee count (uses Crunchbase ranges: 1, 11, 51, 201…) |
| `maxResults` | number | No | Max companies to extract. Default: 100. Set 0 for no limit. |
| `includeCards` | array | No | Extended data: `founders`, `investors`, `funding_rounds`, `board_members_and_advisors`, `acquisitions`, `subsidiaries` |

**Finding permalinks:** A Crunchbase permalink is the last part of the URL — `https://www.crunchbase.com/organization/PERMALINK`. You can also paste the full URL and the actor will extract the permalink automatically.

### Output example

```json
{
  "name": "OpenAI",
  "permalink": "openai",
  "crunchbaseUrl": "https://www.crunchbase.com/organization/openai",
  "websiteUrl": "https://openai.com",
  "shortDescription": "An AI research and deployment company",
  "companyType": "for_profit",
  "operatingStatus": "active",
  "foundedOn": "2015-12-11",
  "employeeCount": "1001-5000",
  "city": "San Francisco",
  "region": "California",
  "country": "United States",
  "categories": ["artificial-intelligence", "generative-ai", "machine-learning"],
  "totalFundingUsd": 11300000000,
  "lastFundingType": "series_e",
  "lastFundingOn": "2023-01-24",
  "numFundingRounds": 9,
  "linkedinUrl": "https://www.linkedin.com/company/openai",
  "twitterUrl": "https://twitter.com/OpenAI",
  "crunchbaseRank": 45,
  "founders": [
    { "name": "Sam Altman", "permalink": "sam-altman", "title": "CEO" },
    { "name": "Greg Brockman", "permalink": "greg-brockman", "title": "President" }
  ],
  "investors": [
    { "name": "Microsoft", "permalink": "microsoft", "type": "corporate_venture_capital", "numberOfInvestments": 312 }
  ],
  "fundingRounds": [
    {
      "uuid": "a62cfa81...",
      "announcedOn": "2023-01-24",
      "fundingType": "series_e",
      "moneyRaisedUsd": 10000000000,
      "leadInvestors": ["Microsoft"],
      "numberOfInvestors": 4
    }
  ],
  "scrapedAt": "2026-04-03T04:00:00.000Z"
}
```

### Tips for best results

- 🔑 **API key required** — Get your Crunchbase API key from your account settings. Enterprise and Applications license holders have full access. Legacy Basic API key holders also work.
- 📦 **Batch by permalink** — Use organization lookup mode for the most complete data. Search mode returns fewer fields per company (no cards).
- 📋 **Use cards selectively** — Each card (founders, investors, funding\_rounds) adds one extra API call per company. If you only need core data, set `includeCards` to `[]` to save time.
- 🔍 **Find the right permalink** — Navigate to any Crunchbase company page; the permalink is the URL path after `/organization/`.
- 📊 **Set maxResults low first** — Start with 10-20 companies to preview your data before running a large batch.
- ⏱️ **Rate limits** — Crunchbase API has rate limits. The actor handles retries automatically. For very large batches (1000+), consider splitting across multiple runs.

### Integrations

**Crunchbase Scraper → Google Sheets** — Monitor your prospect pipeline by scheduling weekly runs that pull funding data for target companies and push results directly to Google Sheets via Zapier or Make.

**Crunchbase Scraper → Salesforce / HubSpot** — Enrich CRM records with Crunchbase data: total funding, employee count, and latest round type. Set up a webhook to trigger Crunchbase lookups when new accounts are created.

**Crunchbase Scraper → Slack** — Set up daily alerts for funding announcements: schedule runs that pull recently-funded companies in your target segment and post a Slack summary with company name, round size, and investors.

**Crunchbase Scraper → Webhook** — Use Apify's built-in webhook support to trigger downstream processing immediately when a run completes — push to your data warehouse or trigger your enrichment pipeline.

**Crunchbase Scraper → BigQuery / Snowflake** — Feed the structured JSON output into your data warehouse for trend analysis, cohort tracking, or training ML models on company growth patterns.

### Using the Apify API

Integrate Crunchbase Scraper into any application using the Apify REST API:

#### Node.js

```javascript
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_APIFY_API_TOKEN' });

const run = await client.actor('automation-lab/crunchbase-scraper').call({
    apiKey: 'YOUR_CRUNCHBASE_API_KEY',
    mode: 'organizationLookup',
    organizationPermalinks: ['openai', 'anthropic', 'mistral-ai'],
    includeCards: ['founders', 'funding_rounds'],
    maxResults: 50,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
```

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient(token="YOUR_APIFY_API_TOKEN")

run = client.actor("automation-lab/crunchbase-scraper").call(run_input={
    "apiKey": "YOUR_CRUNCHBASE_API_KEY",
    "mode": "searchOrganizations",
    "searchQuery": "B2B SaaS",
    "fundingStage": "series_a",
    "location": "New York",
    "maxResults": 100,
})

items = client.dataset(run["defaultDatasetId"]).list_items().items
for item in items:
    print(item["name"], item["totalFundingUsd"])
```

#### cURL

```bash
## Start a run
curl -X POST \
  "https://api.apify.com/v2/acts/automation-lab~crunchbase-scraper/runs?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "YOUR_CRUNCHBASE_API_KEY",
    "mode": "organizationLookup",
    "organizationPermalinks": ["stripe", "plaid", "brex"],
    "includeCards": ["investors", "funding_rounds"],
    "maxResults": 3
  }'

## Get results (replace DATASET_ID from run response)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_APIFY_TOKEN&format=json"
```

### Use with AI agents via MCP

Crunchbase Scraper is available as a tool for AI assistants that support the [Model Context Protocol (MCP)](https://docs.apify.com/platform/integrations/mcp).

Add the Apify MCP server to your AI client — this gives you access to all Apify actors, including this one:

#### Setup for Claude Code

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/crunchbase-scraper"
```

#### Setup for Claude Desktop, Cursor, or VS Code

Add this to your MCP config file:

```json
{
    "mcpServers": {
        "apify": {
            "url": "https://mcp.apify.com?tools=automation-lab/crunchbase-scraper"
        }
    }
}
```

Your AI assistant will use OAuth to authenticate with your Apify account on first use.

#### Example prompts

Once connected, try asking your AI assistant:

- "Use automation-lab/crunchbase-scraper to get company profiles for openai, anthropic, and cohere — include funding rounds and investors"
- "Search Crunchbase for Series A fintech startups in London using the crunchbase-scraper actor"
- "Pull the latest funding data for 50 AI companies from Crunchbase and save to a dataset"

Learn more in the [Apify MCP documentation](https://docs.apify.com/platform/integrations/mcp).

### Is it legal to use Crunchbase Scraper?

Crunchbase Scraper uses the **official Crunchbase API** with your authenticated API key. This is authorized access governed by your Crunchbase API license agreement — not scraping in the traditional sense.

Data extracted is subject to your Crunchbase API terms of service. Crunchbase data is licensed, not scraped from public pages. Ensure your use case complies with your Crunchbase license agreement (Enterprise, Applications, or Basic).

We operate in accordance with applicable data protection laws. Do not use extracted data for spam, unauthorized contact, or re-distribution without proper data licensing rights from Crunchbase.

### FAQ

**Do I need a Crunchbase account to use this actor?**
Yes — you need a Crunchbase API key. This key comes with a Crunchbase Enterprise or Applications license. Crunchbase also had a free Basic API tier (discontinued for new signups, but existing keys still work). If you don't have an API key, [contact Crunchbase sales](https://about.crunchbase.com/products/data-licensing/).

**Why am I getting "authentication failed" errors?**
Your API key is invalid, expired, or incorrectly pasted. Double-check by finding your key in your Crunchbase account settings under API Keys. Make sure you're using the `user_key` from `api.crunchbase.com`, not a Crunchbase Pro subscription token.

**Why are some fields empty (null)?**
Not all companies have complete Crunchbase profiles. Smaller or newer companies often lack funding data, social links, or description. The actor returns `null` for unavailable fields rather than skipping them.

**Why did I get fewer results than my maxResults setting?**
In Search mode, Crunchbase's index may have fewer companies matching your filters than your `maxResults` target. The actor returns all available results. In Lookup mode, it skips permalinks that return no data (deleted or private companies).

**What funding stage values can I use?**
Common values: `seed`, `angel`, `series_a`, `series_b`, `series_c`, `series_d`, `series_e`, `series_f`, `venture`, `convertible_note`, `corporate_round`, `equity_crowdfunding`, `post_ipo_equity`, `post_ipo_debt`, `ipo`, `private_equity`, `debt_financing`.

**How do I find a company's Crunchbase permalink?**
Go to the company's Crunchbase page and copy the path after `/organization/`. For example, `https://www.crunchbase.com/organization/openai` has permalink `openai`.

**Can I export results to CSV or Excel?**
Yes — in the Apify dataset view, click the Export button and choose CSV, Excel, JSON, or other formats. You can also use the API to fetch results in any format.

### Other business data tools

Explore our other business intelligence scrapers on Apify Store:

- [Multi-ATS Company Jobs Scraper](https://apify.com/automation-lab/multi-ats-jobs-scraper) — scrape job listings from Greenhouse, Workday, Lever, SmartRecruiters, and Ashby
- [Google Jobs Scraper](https://apify.com/automation-lab/google-jobs-scraper) — extract job postings from Google Jobs search
- [LinkedIn Jobs Scraper](https://apify.com/automation-lab/linkedin-jobs-scraper) — scrape job listings from LinkedIn
- [G2 Reviews Scraper](https://apify.com/automation-lab/g2-reviews-scraper) — extract product reviews from G2
- [Bing Search Scraper](https://apify.com/automation-lab/bing-search-scraper) — scrape search results from Bing
- [DexScreener Scraper](https://apify.com/automation-lab/dexscreener-scraper) — extract crypto token data from DexScreener

# Actor input Schema

## `apiKey` (type: `string`):

Your Crunchbase API key (user\_key). Get it at <a href="https://www.crunchbase.com/about/crunchbase-basic" target="_blank">crunchbase.com/about/crunchbase-basic</a>. Required for all requests.

## `mode` (type: `string`):

Select what to extract. <strong>Organization lookup</strong> fetches full company profiles by permalink or URL. <strong>Search organizations</strong> finds companies matching your filters.

## `organizationPermalinks` (type: `array`):

List of Crunchbase organization permalinks (e.g. <code>apple</code>, <code>openai</code>) or full Crunchbase URLs (e.g. <code>https://www.crunchbase.com/organization/apple</code>). Used in <strong>Organization lookup</strong> mode.

## `searchQuery` (type: `string`):

Search for organizations by name or description keyword. Used in <strong>Search organizations</strong> mode. Leave empty to search without a keyword filter.

## `fundingStage` (type: `string`):

Filter organizations by funding stage. Examples: <code>seed</code>, <code>series\_a</code>, <code>series\_b</code>, <code>ipo</code>. Leave empty for all stages.

## `location` (type: `string`):

Filter by city, region, or country name. Example: <code>San Francisco</code>, <code>United States</code>, <code>London</code>.

## `category` (type: `string`):

Filter by industry category. Example: <code>artificial-intelligence</code>, <code>saas</code>, <code>fintech</code>, <code>healthcare</code>.

## `minEmployees` (type: `integer`):

Filter organizations with at least this many employees. Uses Crunchbase employee ranges (1, 11, 51, 201, 501, 1001, 5001, 10001).

## `maxResults` (type: `integer`):

Maximum number of company profiles to extract. Set to 0 for no limit. Applies to both lookup and search modes.

## `includeCards` (type: `array`):

Select which extended relationship cards to include. Each card adds extra API calls per company. <strong>founders</strong>: founding team. <strong>investors</strong>: investor list. <strong>funding\_rounds</strong>: individual round details. <strong>board\_members\_and\_advisors</strong>: board & advisors. <strong>acquisitions</strong>: acquired companies.

## Actor input object example

```json
{
  "mode": "organizationLookup",
  "organizationPermalinks": [
    "apple",
    "openai",
    "tesla-motors"
  ],
  "searchQuery": "fintech startup",
  "fundingStage": "",
  "location": "",
  "category": "",
  "minEmployees": 0,
  "maxResults": 10,
  "includeCards": [
    "founders",
    "investors",
    "funding_rounds"
  ]
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "mode": "organizationLookup",
    "organizationPermalinks": [
        "apple",
        "openai",
        "tesla-motors"
    ],
    "searchQuery": "fintech startup",
    "maxResults": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("automation-lab/crunchbase-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "mode": "organizationLookup",
    "organizationPermalinks": [
        "apple",
        "openai",
        "tesla-motors",
    ],
    "searchQuery": "fintech startup",
    "maxResults": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("automation-lab/crunchbase-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "mode": "organizationLookup",
  "organizationPermalinks": [
    "apple",
    "openai",
    "tesla-motors"
  ],
  "searchQuery": "fintech startup",
  "maxResults": 10
}' |
apify call automation-lab/crunchbase-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=automation-lab/crunchbase-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Crunchbase Scraper",
        "description": "Extract company profiles, funding rounds, investors, and founders from Crunchbase via the official API. Requires your Crunchbase API key. Pure HTTP, 256 MB.",
        "version": "0.1",
        "x-build-id": "sq5BcV7tkppqJK6s1"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/automation-lab~crunchbase-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-automation-lab-crunchbase-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/automation-lab~crunchbase-scraper/runs": {
            "post": {
                "operationId": "runs-sync-automation-lab-crunchbase-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/automation-lab~crunchbase-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-automation-lab-crunchbase-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "apiKey",
                    "mode"
                ],
                "properties": {
                    "apiKey": {
                        "title": "🔑 Crunchbase API key",
                        "type": "string",
                        "description": "Your Crunchbase API key (user_key). Get it at <a href=\"https://www.crunchbase.com/about/crunchbase-basic\" target=\"_blank\">crunchbase.com/about/crunchbase-basic</a>. Required for all requests."
                    },
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "organizationLookup",
                            "searchOrganizations"
                        ],
                        "type": "string",
                        "description": "Select what to extract. <strong>Organization lookup</strong> fetches full company profiles by permalink or URL. <strong>Search organizations</strong> finds companies matching your filters.",
                        "default": "organizationLookup"
                    },
                    "organizationPermalinks": {
                        "title": "Organization permalinks or URLs",
                        "type": "array",
                        "description": "List of Crunchbase organization permalinks (e.g. <code>apple</code>, <code>openai</code>) or full Crunchbase URLs (e.g. <code>https://www.crunchbase.com/organization/apple</code>). Used in <strong>Organization lookup</strong> mode.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "searchQuery": {
                        "title": "Search query",
                        "type": "string",
                        "description": "Search for organizations by name or description keyword. Used in <strong>Search organizations</strong> mode. Leave empty to search without a keyword filter.",
                        "default": ""
                    },
                    "fundingStage": {
                        "title": "Funding stage filter",
                        "type": "string",
                        "description": "Filter organizations by funding stage. Examples: <code>seed</code>, <code>series_a</code>, <code>series_b</code>, <code>ipo</code>. Leave empty for all stages.",
                        "default": ""
                    },
                    "location": {
                        "title": "Location filter",
                        "type": "string",
                        "description": "Filter by city, region, or country name. Example: <code>San Francisco</code>, <code>United States</code>, <code>London</code>.",
                        "default": ""
                    },
                    "category": {
                        "title": "Category filter",
                        "type": "string",
                        "description": "Filter by industry category. Example: <code>artificial-intelligence</code>, <code>saas</code>, <code>fintech</code>, <code>healthcare</code>.",
                        "default": ""
                    },
                    "minEmployees": {
                        "title": "Minimum employees",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Filter organizations with at least this many employees. Uses Crunchbase employee ranges (1, 11, 51, 201, 501, 1001, 5001, 10001).",
                        "default": 0
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of company profiles to extract. Set to 0 for no limit. Applies to both lookup and search modes.",
                        "default": 100
                    },
                    "includeCards": {
                        "title": "Include extended data cards",
                        "type": "array",
                        "description": "Select which extended relationship cards to include. Each card adds extra API calls per company. <strong>founders</strong>: founding team. <strong>investors</strong>: investor list. <strong>funding_rounds</strong>: individual round details. <strong>board_members_and_advisors</strong>: board & advisors. <strong>acquisitions</strong>: acquired companies.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "founders",
                                "investors",
                                "funding_rounds",
                                "board_members_and_advisors",
                                "acquisitions",
                                "subsidiaries"
                            ]
                        },
                        "default": [
                            "founders",
                            "investors",
                            "funding_rounds"
                        ]
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
