Scopes: network, lists, tracked
Every endpoint built on "who followed what" answers for one set of accounts. You pick the set with scope:
scope | Whose follows | Who can use it |
|---|---|---|
tracked (default) | The accounts you track | Every API key |
network | The whole Frontrun network: every investor, scout, operator and lab account we track, and the startups they discovered | Paid Pro and Enterprise accounts |
list:<id> | One of your own lists, with its sectors | Account API keys |
Leave scope out and nothing changes from before: you get your tracked accounts.
# What the whole network followed today
curl "https://frontrun.vc/v1/feed?scope=network&since=24h" \
-H "X-API-Key: your_api_key"
# What your "AI seed investors" list is converging on this week
curl "https://frontrun.vc/v1/convergence?scope=list:3f9c...&since=7d" \
-H "X-API-Key: your_api_key"Endpoints that take scope
/v1/feed, /v1/convergence, /v1/trending, /v1/follows/new, /v1/follows/enriched, /v1/sectors, /v1/discover, /v1/vc/:handle/activity, /v1/vc/:handle/similar and /v1/search.
/v1/search also takes scope=catalog, its keyword search over your company catalog. See GET /v1/search.
Lists
A list is a named set of accounts you trust. It's the same list you see as a tab on Home and can turn into a report in the app. Create and edit lists with the Lists endpoints, or in the app. Both are the same list.
A list carries feed settings, and they apply when you query it:
sectors: only companies in these sectors. This applies on/v1/feed,/v1/follows/enrichedand/v1/discover, on top of anysectoryou pass.min_tracking: the defaultthresholdon/v1/convergence, so a list that wants "3+ of my accounts" gets that without passing it.feed: "network": the list covers the whole network instead of its members. Querying it needs the same plan asscope=network.
?list=<id> is shorthand for ?scope=list:<id>.
The response says which scope answered
Network and list answers carry a scope block:
{
"events": [ ... ],
"scope": {
"mode": "list",
"list": { "id": "3f9c...", "name": "AI seed investors", "feed": "accounts", "sectors": ["AI"], "max_followers": null, "min_tracking": 2 }
}
}Cursors (next_cursor) are bound to the scope they were issued for. A cursor from a tracked call can't continue a network call.
Errors
| Status | error_code | Meaning |
|---|---|---|
| 400 | invalid_scope | scope is not tracked, network or list:<id> |
| 403 | network_scope_requires_pro | scope=network (or a list with feed: "network") needs a paid Pro or Enterprise plan. Trials and Starter can query their tracked accounts and their own lists |
| 403 | lists_need_account_key | Lists belong to a Frontrun account. Standalone keys have none |
| 404 | list_not_found | No list with that id on your account. GET /v1/lists shows yours |
Pricing
A scoped call costs what the endpoint costs; scope doesn't change the price. See Pricing.