The goal
Replace a long investor list with a research queue
Most fundraising searches begin with investor labels and geography. Portfolio evidence is stronger: it shows who has already backed companies in a related market.
The result is not an automated recommendation. It is a ranked starting point for checking thesis, conflicts, fund status, partner ownership, and warm introductions.
Why an investor list endpoint?
The output is a set of investor records with portfolio evidence. Use GET /data/investors, then ask Dealroom to calculate a match count for the selected tags and location.
python -m venv .venv
source .venv/bin/activate
pip install requests python-dotenv
Store DEALROOM_CLIENT_ID and DEALROOM_CLIENT_SECRET in a local .env file. Keep that file out of version control.
Use portfolio history as evidence
Two query parameters add a portfolio match count to every investor record. When both are present, the count reflects investments matching the selected tags and portfolio location.
| Parameter | Role in the shortlist |
|---|---|
| portfolio_count_tag | Counts portfolio companies carrying the selected Dealroom tags |
| portfolio_count_location | Restricts the counted portfolio evidence to the selected location |
| portfolio_match_count | Sorts investors by that evidence count when used as a sort key |
| investor_rank | Provides a stable secondary order when match counts tie |
Keep the count visible. A user should be able to distinguish a firm with repeated market experience from one with a single adjacent investment.
Remove investors that cannot fit the round
Portfolio relevance alone can surface inactive investors or firms whose normal check size misses the target. Add a filter before ranking.
investor_filter = (
"and(last_investor_round_date[gte]:2024,"
"min_deal_size[lte]:25000000,"
"max_deal_size[gte]:5000000)"
)
The two deal-size conditions test range overlap. The investor's minimum must not exceed your ceiling, and its maximum must reach your floor.
Rank by evidence, then inspect context
Request the match count and preserve the server ordering. The response also carries investment stages, deal sizes, recent activity, investor type, and headline portfolio metrics.
response = client.get(
"/data/investors",
{
**query,
"filter": investor_filter,
"sort": "-portfolio_match_count,investor_rank",
"limit": 12,
"include_total": "true",
"currency": "USD",
},
)
The script adds concise reasons from returned fields but never changes the API ranking. This keeps portfolio evidence separate from later human judgment.
Real output
Inspect Cerrion's investor research queue
Portfolio match counts, check-size context, and recent activity in one reviewable shortlist.
Loading the investor shortlist...
Snapshot generated from the Dealroom API. Re-run the script for current investor activity and portfolio data.
Validate fit before contacting anyone
A high portfolio match count earns an investor a place in the research queue. It does not complete the fundraising work.
- Check whether a relevant portfolio company creates a competitive conflict.
- Confirm the investor is deploying from a current fund.
- Review target ownership, reserves, geography, and lead behavior.
- Identify the partner who owns the relevant thesis.
- Use recent deals and shared relationships to plan a credible introduction.
Complete example
Download the investor-fit generator
The file includes OAuth2 authentication, bounded retries, tag validation, activity and deal-size filters, Markdown output, and structured JSON.