Data API v3

Build with PrivCo data

Identify, search and enrich private companies from your own code with a JSON REST API, or skip the code and ask PrivCo from Claude, ChatGPT and Microsoft Copilot Studio.

Two ways in

Use PrivCo data from your AI assistant with no code, or build on it with the API

No code

AI integration

Ask questions in Claude, ChatGPT or Microsoft Copilot Studio and get answers sourced from PrivCo. Sign in with your PrivCo login; there is no key to manage.

  • Included with List Builder (100 company profiles/month) and Power (500 company profiles/month)
  • Company search, profiles, financials, funding, M&A and people
  • Set up in a few minutes
How AI integration works

Code

Data API v3

A JSON REST API for your CRM, models, dashboards and data pipelines. Identify companies, screen the database and pull profiles and financials.

  • Available with the Power plan, through our sales team
  • 17 endpoints, API-key authentication
  • OpenAPI file for Postman, Insomnia or code generators
See the quickstart

Quickstart

Four calls from a company name to financials and a target list. Any HTTP client works; there is no SDK to install.

Base URL https://api.privco.com/v3

Auth send your key in the x-api-key header on every request.

  1. 1
    GET /match

    Turn a company name (or website) into a PrivCo profile id.

  2. 2
    GET /profile

    Open the profile: description, location, industry, latest revenue, valuation, funding.

  3. 3
    GET /revenue_financials

    Revenue by year. Each figure says whether it is reported or a PrivCo estimate.

  4. 4
    POST /company_search

    Screen the database by industry, location, revenue, growth, funding and ownership.

Keep the key server-side, in an environment variable or secret manager, never in browser code. A newly issued key can take a minute or two to become active.

export PRIVCO_API_KEY="your-api-key"

# 1. Find the company's PrivCo id
curl -H "x-api-key: $PRIVCO_API_KEY" \
  "https://api.privco.com/v3/match?name=Stripe"
#    -> data[0].profile_id (44612) and data[0].profile_type

# 2. Open its profile
curl -H "x-api-key: $PRIVCO_API_KEY" \
  "https://api.privco.com/v3/profile/company/44612"

# 3. Revenue by year (is_estimated marks PrivCo estimates)
curl -H "x-api-key: $PRIVCO_API_KEY" \
  "https://api.privco.com/v3/revenue_financials/company/44612"

# 4. Screen for similar companies
curl -X POST -H "x-api-key: $PRIVCO_API_KEY" \
  -H "Content-Type: application/json" \
  "https://api.privco.com/v3/company_search" -d '{
  "filters": {
    "industry": {"selection": [73]},
    "location": {"selection": [{"type": "state", "value": "California"}]},
    "revenue": {"min": 10000000, "max": 100000000},
    "classification": {"privateOnly": true}
  },
  "sorting": {"field": "revenue", "order": "desc"},
  "page": 1
}'

Endpoint reference

All 17 endpoints. {type} is company or investor; {id} is the profile id from /match, /identification/company or a search.

Identify · Turn what you know into a PrivCo id

EndpointWhat it returnsCost
GET/match/{name} · /match?website={domain}
Companies and investors by name, or by website domain. 20 per page.Does not use unique profiles
POST/identification/company
Best match from any mix of name, url, address, phone, country/state and LinkedIn, with a match strength.0.1 point per lookup that returns a match; no match is free

Search · Screen the database

EndpointWhat it returnsCost
POST/company_search
Companies by industry, keyword, location, revenue, employees, growth, funding, valuation and ownership.1 point per page with results; empty searches are free
POST/funding_search
Funding rounds by type, size, date, industry, location and investor type.1 point per page with results; empty searches are free
POST/deal_search
M&A deals by date, size, buyer/seller/target industry, PE backing and location.1 point per page with results; empty searches are free
POST/people_search
People by name, title, seniority and department, plus the company filters.1 point per page with results; empty searches are free
GET/industry_pics?query= · /industry_keyword?query=
The industry and keyword ids that the search filters take.Does not use unique profiles

Detail · Everything about one company or investor

EndpointWhat it returnsCost
GET/profile/{type}/{id} · /general_profile/{type}/{id}
The full profile: description, address, website, industry, latest revenue (with latest_revenues_is_estimated), valuation and funding.1 unique profile per company per period; repeat opens of the same company don't count again
GET/revenue_financials/{type}/{id}
Revenue by year; each figure carries is_estimated.1 unique profile per company per period; repeat opens of the same company don't count again; also uses the finance allowance
GET/financials/{type}/{id}
Every financial line by year: revenue, EBITDA, valuation multiples, employees. Filter with ?title= and ?year=.1 unique profile per company per period; repeat opens of the same company don't count again; also uses the finance allowance
GET/vc_deals/{type}/{id}
Funding rounds with amounts, valuations and investors, newest first.1 point per call
GET/ma_deals/{type}/{id}
M&A history, with the profile's role (buyer, seller, target).1 point per call
GET/people/{type}/{id}
Founders, executives, board members and investors linked to the profile.1 unique profile per company per period; repeat opens of the same company don't count again

Contacts · Reveal one person

EndpointWhat it returnsCost
GET/company_contact/{hash} · /investor_contact/{hash}
Business email, phone numbers, LinkedIn and titles for a hash returned by /people_search.Counted against your plan's allowances

Account · Know where you stand

EndpointWhat it returnsCost
GET/usage
Each allowance: period, quota, used and remaining, plus your subscription dates.Free

Allowances usually reset monthly. /match, the four searches and the industry look-ups never use your unique-profile allowance, so you can identify and screen freely, then open only the profiles you need. Full request and response schemas are in the OpenAPI file.

Errors and limits

What each status means and what to do about it

StatusMeaning
200 / 201Success. Searches (POST) answer 201. Results are in data, paging in meta.
400Invalid request. error.message names the field and lists the allowed values.
401The key has no API subscription, or the endpoint is not in your plan.
403Code quota_exceeded: an allowance is used up; the body says which one and the date it resets. Code subscription_expired: the API subscription is outside its term. A bare {"message":"Forbidden"}: the x-api-key header is missing or not recognised. A new key can take a minute or two to become active.
429Requests are rate-limited; a 429 response means slow down and retry with backoff.
500Server error; retry with backoff.

Good to know

  • Searches return 100 results per page, and pages 1 to 100 can be retrieved (10,000 results). Narrow the filters to collect a larger set.
  • Funding and deal date filters take Unix seconds.
  • Unknown keys in a search body are ignored, so a misspelled filter returns unfiltered results. Compare meta.total_results with and without a new filter.
  • An unknown profile id returns 200 with name: null. Check data.name before treating a response as a real company.
  • Estimates are labelled: is_estimated on each financial figure and latest_revenues_is_estimated on profiles say whether a value was reported or estimated by PrivCo.
  • Reporting a problem? Include the requestId from the error body.

Check your allowances (free to call)

curl -H "x-api-key: $PRIVCO_API_KEY" \ "https://api.privco.com/v3/usage"

Use your API key with AI tools

The same key runs PrivCo's open-source MCP server, so any MCP client on your machine gets the 17 PrivCo tools

Local MCP server (npm)

Add this to your MCP client's configuration (Claude Desktop, Cursor and others). It runs privco-data-mcp with Node.js 18 or later and calls the API with your key.

{
  "mcpServers": {
    "privco": {
      "command": "npx",
      "args": ["-y", "privco-data-mcp"],
      "env": { "PRIVCO_API_KEY": "your-api-key" }
    }
  }
}

Claude Code plugin

Installs the MCP server together with a PrivCo search skill. Claude Code asks for your API key when you enable the plugin and keeps it in your system keychain.

/plugin marketplace add privco/privco-claude-plugin
/plugin install privco-data@privco

No API key? List Builder and Power include the hosted PrivCo connector for Claude, ChatGPT and Microsoft Copilot Studio. You sign in with your PrivCo login. See AI integration.

Use PrivCo inside your AI assistant

The PrivCo connector brings company search, profiles, financials, funding, M&A and people into Claude, ChatGPT and Microsoft Copilot Studio

Connector URL

https://mcp.privco.com/mcp

Claude.ai & Claude Desktop

PrivCo is in Claude's connector directory: Settings → Connectors → Browse connectors, search "PrivCo", then sign in with your PrivCo login.

Setup guide

Claude Code

Run `claude mcp add --transport http privco https://mcp.privco.com/mcp`, then `/mcp` to sign in.

Setup guide

ChatGPT

Enable Developer mode (Settings → Apps & Connectors → Advanced), create a connector with the server URL, and sign in.

Setup guide

Microsoft Copilot Studio

Add a tool → Model Context Protocol → enter the server URL, choose OAuth 2.0 Dynamic discovery, sign in with your PrivCo login, then add the tool to your agent.

Setup guide
Claude + PrivCo

You: Which private fintech companies in New York grew revenue fastest, and how are they funded?

Claude → PrivCo connector:
  company_search  {industry, state, growth}
  profile        {top candidates}
  vc_deals       {rounds + investors}

Answer: a ranked list with revenue, growth, latest rounds and investors, sourced from PrivCo.

17 tools across the research workflow: identification, search, profiles, financials, funding, M&A and contacts. Included with List Builder and Power plans. Sign in with your PrivCo login.

How AI integration works

Your data, your account. The connector signs you in with OAuth, so there is no key to copy around. Usage counts against your PrivCo plan's allowances, and your conversations are not used for anything beyond serving your request. See our Privacy Policy. Developers with an API key can also run the MCP server locally.

API v3 developer guide (PDF)

The full reference in one document: quickstart, how the data is keyed, all 17 endpoints, search filters and paging, monthly allowances, and errors.

Download PDF

OpenAPI specification

OpenAPI 3.0 file for all 17 endpoints, with request bodies and filter schemas. Import it into Postman, Insomnia or a code generator.

Download JSON

API Use Cases

What teams build with the PrivCo API

Deal Sourcing & Pipeline Management
Automate deal flow by integrating PrivCo data directly into your CRM or deal management platform.
  • Identify acquisition targets matching specific criteria
  • Track portfolio companies and competitors
  • Monitor funding activity in target sectors
Risk & Compliance
Streamline due diligence and ongoing monitoring with programmatic access to company data.
  • Automated KYC and background checks
  • Ownership structure verification
  • Financial health monitoring
Market Intelligence
Build custom dashboards and reports using PrivCo data integrated with your internal systems.
  • Industry trend analysis and reporting
  • Competitive landscape monitoring
  • Market sizing and segmentation
Sales & Business Development
Enrich your prospect data and identify high-value opportunities at scale.
  • Lead scoring and prioritization
  • Account-based marketing campaigns
  • Territory planning and analysis

Ready to build?

API access comes with the Power plan. Talk to our team about your use case and volumes.

Contact usCompare plans