# PitchBook Public Profile Scraper (`khadinakbar/pitchbook-scraper`) Actor

Extract public PitchBook profile and research metadata from supplied URLs. No account, cookies, CAPTCHA solving, or third-party API is used.

- **URL**: https://apify.com/khadinakbar/pitchbook-scraper.md
- **Developed by:** [Khadin Akbar](https://apify.com/khadinakbar) (community)
- **Categories:** AI, Lead generation, MCP servers
- **Stats:** 2 total users, 1 monthly users, 33.3% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $20.00 / 1,000 public record extracteds

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## PitchBook Public Profile Scraper

Extract metadata from supplied public PitchBook profile, research, and news URLs. This actor is for investors, researchers, and operations teams that need a small structured dataset of public page titles, descriptions, canonical links, images, and dates.

It requests the public page first. If PitchBook blocks that unauthenticated request, it can query the URL identifier through Apify's Google SERP proxy and accept only an exact destination-URL match. It deliberately does **not** sign in, accept a session cookie, use credentials, solve CAPTCHAs, or bypass access controls. Subscription-only fields are outside its scope.

### What it returns

| Field | Meaning |
| --- | --- |
| `entityType` | URL-derived company, investor, fund, deal, research, news, or profile type |
| `title` | Public HTML/Open Graph title |
| `description` | Public meta/Open Graph description |
| `sourceUrl` and `canonicalUrl` | Supplied and declared public URL |
| `imageUrl`, `publishedAt` | Public page metadata when available |
| `retrievalMethod` | `direct` or `google-serp`, so downstream users know where the public metadata came from |

### Input

Provide one to 25 public URLs beginning with `https://pitchbook.com/profiles/`, `https://pitchbook.com/news/`, or `https://pitchbook.com/research/`.

```json
{
  "profileUrls": ["https://pitchbook.com/profiles/company/127635-40"],
  "maxItems": 1,
  "useApifyProxy": true,
  "useGoogleSearchFallback": true
}
````

### Outcomes and limits

The actor always writes `OUTPUT` and `RUN_SUMMARY`.

- `COMPLETE`: every processed URL yielded public metadata, directly or through an exact-match public search result.
- `PARTIAL`: at least one public record was saved, while another URL was unavailable.
- `VALID_EMPTY`: no supplied URL resolved to a public record.
- `INVALID_INPUT`: a URL was missing or outside the public PitchBook paths.
- `UPSTREAM_FAILED`: all valid supplied URLs were blocked or unavailable.

PitchBook may present a challenge or deny an unauthenticated request. The Actor does not attempt to evade that block. When enabled, it instead checks the public Google index for an exact result matching the supplied PitchBook URL; if neither route returns usable metadata, the run reports the block honestly.

### Pricing

Pay per event + usage is configured: $0.00005 per run start and $0.02 per validated public record saved. Blocked, private, invalid, and empty pages are never charged as records.

### Compliance

Use only URLs and data you are authorized to access and use. This actor is designed for public metadata; it is not a replacement for a PitchBook subscription or an approved data integration.

# Actor input Schema

## `profileUrls` (type: `array`):

Use this when you already have public PitchBook profile, research, or news URLs. Enter up to 25 HTTPS URLs such as https://pitchbook.com/profiles/company/127635-40. When direct public HTML is unavailable, the optional Google fallback can recover only publicly indexed title and description metadata. The actor rejects login, dashboard, and private subscription URLs.

## `maxItems` (type: `integer`):

Use this when limiting cost and run time. Sets the number of accepted URLs to process, from 1 to 25; default 10. It is not a search-results limit because this actor does not discover or crawl private PitchBook pages.

## `useApifyProxy` (type: `boolean`):

Use this for the initial direct request to a public PitchBook URL. The default true sends an ordinary unauthenticated request through Apify Residential proxy. It does not log in, persist cookies, solve CAPTCHAs, or circumvent access controls. Disable only when testing direct Apify-cloud access.

## `useGoogleSearchFallback` (type: `boolean`):

Use this when PitchBook blocks the direct unauthenticated request. The default true queries the exact URL identifier through Apify's Google SERP proxy and accepts only a result whose destination exactly matches the supplied URL. It returns public indexed title and description metadata, not private PitchBook fields. Disable to require direct-page extraction only.

## Actor input object example

```json
{
  "profileUrls": [
    "https://pitchbook.com/profiles/company/127635-40"
  ],
  "maxItems": 10,
  "useApifyProxy": true,
  "useGoogleSearchFallback": true
}
```

# Actor output Schema

## `records` (type: `string`):

Validated public PitchBook URL metadata saved during this run. Blocked pages create no data row.

## `output` (type: `string`):

Terminal run outcome with counts and a diagnostic message.

## `runSummary` (type: `string`):

Detailed final telemetry, including access blocks and billed event counts.

# 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 = {
    "profileUrls": [
        "https://pitchbook.com/profiles/company/127635-40"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("khadinakbar/pitchbook-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 = { "profileUrls": ["https://pitchbook.com/profiles/company/127635-40"] }

# Run the Actor and wait for it to finish
run = client.actor("khadinakbar/pitchbook-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 '{
  "profileUrls": [
    "https://pitchbook.com/profiles/company/127635-40"
  ]
}' |
apify call khadinakbar/pitchbook-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "PitchBook Public Profile Scraper",
        "description": "Extract public PitchBook profile and research metadata from supplied URLs. No account, cookies, CAPTCHA solving, or third-party API is used.",
        "version": "0.2",
        "x-build-id": "SVnWWAjQbqBgMa85Q"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/khadinakbar~pitchbook-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-khadinakbar-pitchbook-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/khadinakbar~pitchbook-scraper/runs": {
            "post": {
                "operationId": "runs-sync-khadinakbar-pitchbook-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/khadinakbar~pitchbook-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-khadinakbar-pitchbook-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",
                "properties": {
                    "profileUrls": {
                        "title": "Public PitchBook URLs",
                        "type": "array",
                        "description": "Use this when you already have public PitchBook profile, research, or news URLs. Enter up to 25 HTTPS URLs such as https://pitchbook.com/profiles/company/127635-40. When direct public HTML is unavailable, the optional Google fallback can recover only publicly indexed title and description metadata. The actor rejects login, dashboard, and private subscription URLs.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Maximum records",
                        "minimum": 1,
                        "maximum": 25,
                        "type": "integer",
                        "description": "Use this when limiting cost and run time. Sets the number of accepted URLs to process, from 1 to 25; default 10. It is not a search-results limit because this actor does not discover or crawl private PitchBook pages.",
                        "default": 10
                    },
                    "useApifyProxy": {
                        "title": "Use Apify Residential proxy",
                        "type": "boolean",
                        "description": "Use this for the initial direct request to a public PitchBook URL. The default true sends an ordinary unauthenticated request through Apify Residential proxy. It does not log in, persist cookies, solve CAPTCHAs, or circumvent access controls. Disable only when testing direct Apify-cloud access.",
                        "default": true
                    },
                    "useGoogleSearchFallback": {
                        "title": "Use public Google metadata fallback",
                        "type": "boolean",
                        "description": "Use this when PitchBook blocks the direct unauthenticated request. The default true queries the exact URL identifier through Apify's Google SERP proxy and accepts only a result whose destination exactly matches the supplied URL. It returns public indexed title and description metadata, not private PitchBook fields. Disable to require direct-page extraction only.",
                        "default": true
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
