RECENT FUNDING
  1. Recent Funding
  2. API Docs

Recent Funding API

Reference for the read-only Recent Funding API. It serves recently funded startups, funding rounds with a source link for every amount, and aggregate stats. No key required.

Versionv1
Base URLhttps://recentfunding.com
Updated

The Recent Funding API serves the same data as the Recent Funding app. It is read-only, returns JSON, and needs no key. The machine-readable spec is openapi.json (OpenAPI 3.1). The parameter and field tables on this page are generated from that spec. For a walkthrough, see Using the Recent Funding API.

Quick start

# The five newest companies
curl "https://recentfunding.com/api/v1/companies?limit=5"

# Seed-stage AI agent companies, largest latest round first
curl "https://recentfunding.com/api/v1/companies?stage=seed&industry=ai-agents&sort=raise"

# One company and all its rounds
curl "https://recentfunding.com/api/v1/companies/shepherd"

# Crypto rounds announced since September 1, 2026
curl "https://recentfunding.com/api/v1/rounds?crypto=true&since=2026-09-01"

# Counts by stage, industry, and source
curl "https://recentfunding.com/api/v1/stats"

# Crypto companies ranked by capital raised in 2026, each round with its source
curl "https://recentfunding.com/api/v1/leaderboard?metric=raised_ytd&year=2026"
const res = await fetch("https://recentfunding.com/api/v1/companies?accelerator=yc&limit=50");
const { companies, next_offset } = await res.json();

Endpoints

GET /api/v1/companies

Lists active companies, newest first by default. amount_usd, min_raise, and sort=raise all refer to the company's latest round.

ParameterValuesDefaultDescription
limitinteger 1–2000100Page size.
offsetinteger 0–10000000Rows to skip. Use the previous response's next_offset.
stagestringCompany stage, e.g. pre-seed, seed, series-a, series-b+, stealth, unknown.
industrystringIndustry slug, e.g. ai, ai-agents, infra-devtools, defi. See /api/v1/stats for the current list.
cryptotrue falsetrue for crypto companies only, false to exclude them.
acceleratoryc speedrun yzi pioneer alliance finc orange outlier pnp csx colosseum techstars antler ef 500 skydeck pear seedcamp era solana-incubator base-batches codebase chainlink-build esp mvb nitro monad-madness sui-hydropower superteam-usa superteam-black hypurr encode longhashx protocol-camp cv-labs-stellar cardano-cap xrpl founders-forge hedera-incubator arbitrum-mentorship anyBacked by an accelerator, detected from investor names and from the name or description (for example "(YC S26)"). any matches every listed accelerator plus investors whose names contain "accelerator" or "incubator".
qstringCase-insensitive substring search over name, industry, subcategory, sector, description, and investor names.
min_raisestringMinimum amount of the latest round, in USD (plain digits, e.g. 5000000). Companies with no known amount are excluded.
sortnewest oldest raise announced name team_size active_devs smart_follows days_earlynewestnewest (first seen, default), oldest, raise (largest latest round first, unknown last), announced (latest round date, unknown last), name (A to Z), team_size, active_devs (by active_devs_90d), smart_follows, days_early (each largest first, unknown last).

Returns {"companies": [Company], "count": n, "next_offset": n | null}.

GET /api/v1/companies/{slug}

Returns one company and every funding round on record for it, newest first. An unknown slug, or a company that is no longer active, returns a 404.

ParameterValuesDefaultDescription
slug (path)stringThe company's slug from a list response.

Returns {"company": Company, "rounds": [CompanyRound]}.

GET /api/v1/rounds

Lists funding rounds of active companies that have a known amount, most recently announced first. Rounds without a date come last.

ParameterValuesDefaultDescription
limitinteger 1–500100Page size.
offsetinteger 0–10000000Rows to skip. Use the previous response's next_offset.
sincestringOnly rounds announced on or after this date.
stagestringRound stage, e.g. pre-seed, seed, series-a, series-b+, unknown.
min_amountstringMinimum round amount in USD (plain digits).
cryptotrue falsetrue for crypto companies only, false to exclude them.

Returns {"rounds": [Round], "count": n, "next_offset": n | null}.

GET /api/v1/stats

Returns counts computed from the same rows /api/v1/companies returns. It takes no parameters.

Returns {"companies", "with_amount", "crypto", "latest_first_seen_at", "by_stage", "by_industry", "by_source"}. Each by_* field is an array of {"key", "count"}, largest first.

GET /api/v1/leaderboard

Ranks companies on one metric, highest first. There is no combined score: each metric is its own list, and only companies with a value and a source link for that metric are ranked. sample_size counts all of them, however many limit returns. Ties share a rank (1, 2, 2, 4).

MetricValueSource link on each entry
raised_ytdSum of the company's rounds announced in year (to today for the current year), as a decimal string in USDEach round in rounds has its own source_url
smart_followsFrontrun VC's count of tracked investor and founder accounts following the company on X; new_follows_7d when reportedThe Frontrun VC post, or Frontrun VC's site
active_devsactive_devs_90d: distinct human commit authors in the last 90 dayshttps://github.com/{github_org}
team_sizePeople on the company's own team pageteam_source_url

raised_ytd counts only rounds that have an amount and a source URL. unsourced_rounds_excluded reports how many rounds in the period were left out for lacking one. smart_follows, active_devs and team_size are current values with no history, so they accept only the current year. Crypto companies are ranked by default; pass crypto=any for all companies.

ParameterValuesDefaultDescription
metricraised_ytd smart_follows active_devs team_sizeraised_ytd: capital raised in the year. smart_follows: Frontrun VC smart-account follows. active_devs: GitHub commit authors in the last 90 days. team_size: people on the company's team page.
yearinteger 2000–20262026Calendar year for raised_ytd (2000 to the current year). Other metrics accept only the current year.
limitinteger 1–50025Rows to return, highest first.
cryptotrue false anytruetrue (default) ranks crypto companies only, false only the others, any all companies.

Returns {"metric", "year", "period": {"from", "to"}, "crypto", "description", "sample_size", "count", "entries": [LeaderboardEntry]}.

curl "https://recentfunding.com/api/v1/leaderboard?metric=active_devs&limit=10"
{"rank": 1, "slug": "cryptomines", "name": "CryptoMines", "value": 35, "source_url": "https://github.com/base", "source_label": "GitHub: base", "github_org": "base"}

Check the source before you read a value as the company's own. This example's developer count comes from the Base network's GitHub organization, not from a CryptoMines repository. The leaderboard has no token prices: none of the free price APIs we reviewed allows passing derived prices on through another API. Crypto startup leaderboard: 2026 year to date walks through each list and its caveats.

GET /api/vc (legacy)

The unversioned endpoint the Recent Funding app uses. It stays unchanged: it accepts limit (up to 2000), offset, stage, and industry, clamps out-of-range values instead of rejecting them, and returns plain-string errors. Use /api/v1/companies for new work.

Crypto signals

Every company carries three groups of signals beyond funding. They are null when unknown, and coverage is still small, especially for crypto. The counts below are from the blog's data snapshot of September 26, 2026, which has 553 crypto companies.

FieldMeaningCompanies with a value (crypto)
flagged_atEarliest date Frontrun VC flagged the company812 (14)
days_earlyFrontrun VC: days the company was flagged before its raise became public112 (4)
smart_followsFrontrun VC: tracked investors and founders following the company on X742 (13)
new_follows_7dFrontrun VC: new follows from those accounts in the last 7 days15 (1)
trending_rankFrontrun VC: position in its trending list (1 is the top)15 (1)
team_sizePeople listed on the company's own team page, counted from distinct LinkedIn profile links48 (48)
team_source_urlThe page team_size was counted on48 (48)
active_devs_90dDistinct human commit authors in the last 90 days across the GitHub org's five most recently pushed repos101 (101)
github_orgThe GitHub organization or user those commits were read from101 (101)

Frontrun values are reported as Frontrun publishes them. Team and developer counts come from an enrichment script that runs on crypto companies with a website. It stores only counts, never names, and excludes bot commit authors.

Four sorts on /api/v1/companies use these fields. Each puts the largest value first and companies without a value last:

SortOrders by
days_earlydays_early
smart_followssmart_follows
team_sizeteam_size
active_devsactive_devs_90d

There is no filter for "has a value", so stop reading at the first null. new_follows_7d and trending_rank are returned but not sortable.

# Crypto companies Frontrun flagged longest before their raise
curl "https://recentfunding.com/api/v1/companies?crypto=true&sort=days_early&limit=20"

# All companies by smart follows
curl "https://recentfunding.com/api/v1/companies?sort=smart_follows&limit=50"

# Crypto companies by team page count, then by GitHub activity
curl "https://recentfunding.com/api/v1/companies?crypto=true&sort=team_size&limit=25"
curl "https://recentfunding.com/api/v1/companies?crypto=true&sort=active_devs&limit=25"

If you display these numbers, link team counts to team_source_url and developer counts to https://github.com/{github_org}. Background and full lists: Frontrun stealth builders, Team size and developer activity at crypto startups, and The crypto startup API.

Pagination

List endpoints use offset pagination. Every page includes next_offset. Pass it back as offset to get the next page, and stop when it is null.

curl "https://recentfunding.com/api/v1/companies?limit=500&offset=0"
curl "https://recentfunding.com/api/v1/companies?limit=500&offset=500"

limit goes up to 2000 for companies and 500 for rounds. New companies appear at the top of the default newest sort, so rows can shift between requests. For a stable export, use sort=oldest or page through quickly.

Errors

Errors use standard HTTP statuses and one JSON shape:

{"error": {"status": 400, "code": "invalid_parameter", "message": "\"sort\" must be one of: newest, oldest, raise, announced, name.", "param": "sort"}}
StatusCodeWhen
400invalid_parameterA value is out of range, has the wrong format, or a parameter is repeated
400unknown_parameterA parameter the endpoint does not accept, such as a typo like stag
404not_foundUnknown slug or endpoint
405method_not_allowedAny method other than GET, HEAD, or OPTIONS
503unavailableThe database is temporarily unreachable; retry with a backoff

param names the offending parameter when there is one. Error responses are never cached.

Field reference

Company

Returned by /api/v1/companies, /api/v1/companies/{slug}, and the legacy /api/vc.

FieldTypeDescription
slugstringStable identifier; use it with /api/v1/companies/{slug}.
namestring
stagestringpre-seed, seed, series-a, series-b+, stealth, or unknown.
industrystring | nullIndustry slug, e.g. ai-agents.
subcategorystring | null
sectorstring | null
descriptionstring | null
cryptoboolean
first_seen_atstring (date-time)When Recent Funding first discovered the company.
websitestring | null
x_handlestring | nullPrimary X (Twitter) handle, without @.
followersinteger | nullX follower count at the last enrichment.
logostring | nullLogo image URL.
amount_usdstring | nullLatest round amount in USD as a decimal string (e.g. "1700000.00"); null when unknown.
announced_atstring | null (date-time)Latest round date (midnight UTC).
raise_source_urlstring | nullWhere the latest round's amount came from: the enrichment article, else the scan's source page.
raise_publisherstring | nullPublisher of the enrichment article, when enriched.
raise_providerstring | nullHow the amount was found: scan (source listing), google-news, website, or agent-review. Null when there is no amount.
sourcesstring[]Discovery sources, e.g. frontrun-startupdb, dropstab, coincarp.
source_linksobjectSource name to the page where it listed the company.
investorsstring[]
flaggedbooleanA source flagged the company before a round was announced.
flagged_atstring | null (date)Earliest date a source (Frontrun VC) flagged the company.
x_created_atstring | null (date)X account creation date.
domain_created_atstring | null (date)Website domain registration date.
team_sizeinteger | nullPeople listed on the company's own team/about page (distinct LinkedIn profile links). Estimate; see team_source_url.
team_source_urlstring | nullPage the team_size count came from.
active_devs_90dinteger | nullDistinct human commit authors in the last 90 days across the GitHub org's five most recently pushed repos.
github_orgstring | nullGitHub organization or user linked from the company's site.
smart_followsinteger | nullFrontrun VC: number of tracked smart accounts (investors, founders) following the company's X account.
days_earlyinteger | nullFrontrun VC: days the company was flagged before its raise became public.
new_follows_7dinteger | nullFrontrun VC: new smart-account follows in the last 7 days.
trending_rankinteger | nullFrontrun VC: rank in its trending list, when present (1 = top).

CompanyRound

Each item in rounds from /api/v1/companies/{slug}.

FieldTypeDescription
stagestring
amount_usdstring | nullDecimal string in USD; null when undisclosed or unknown.
announced_atstring | null (date-time)
source_urlstring | null
source_publisherstring | null
source_providerstring | null

Round

Each item in rounds from /api/v1/rounds.

FieldTypeDescription
slugstringThe company's slug.
namestringThe company's name.
industrystring | null
cryptoboolean
stagestringThe round's stage.
amount_usdstringDecimal string in USD.
announced_atstring | null (date-time)
source_urlstring | nullWhere the amount came from.
source_publisherstring | null
source_providerstringscan, google-news, website, or agent-review.
investorsstring[]Investors linked to this round.

Stats

FieldTypeDescription
companiesintegerActive companies.
with_amountintegerCompanies whose latest round has a known amount.
cryptointeger
latest_first_seen_atstring | null (date-time)
by_stageCount[]Largest first.
by_industryCount[]
by_sourceCount[]A company found by several sources counts once per source.

LeaderboardEntry

Each item in entries from /api/v1/leaderboard. Fields marked with a metric appear only for that metric.

FieldTypeDescription
rankinteger1 is the highest. Ties share a rank.
slugstring
namestring
logostring | null
websitestring | null
x_handlestring | null
industrystring | null
stagestring | nullThe company's stage.
valueinteger | stringThe metric. For raised_ytd a decimal string in USD; otherwise an integer.
source_urlstringNot on raised_ytd. Where the value came from: the Frontrun VC post or site, the GitHub org, or the team page.
source_labelstringNot on raised_ytd. A short name for source_url.
new_follows_7dinteger | nullsmart_follows only: new follows from tracked accounts in the last 7 days, when Frontrun VC reports it.
github_orgstringactive_devs only: the GitHub organization or user counted.
round_countintegerraised_ytd only: rounds in the total.
roundsCompanyRound[]raised_ytd only: the rounds summed, oldest first, each with its source_url.

Caching and CORS

Rate limits and fair use

The API has no key and no hard rate limit today. Please keep it that way for everyone:

Any future limits will be documented on this page.

Data provenance

Recent Funding discovers companies by scanning startup and crypto fundraising sources: Frontrun VC, Crypto-Fundraising.info, Dropstab, and CoinCarp. It fills in missing amounts with an enrichment pipeline that reads company websites and news headlines where the company is the subject of the raise. Records found to be wrong are corrected in review, and every change keeps an evidence trail. How Recent Funding sources and verifies funding data covers the full method.

What this means for you:

If you publish figures from the API, please link each amount to its source, as Recent Funding does.