REST API reference
60,745 funded companies and 83,046 funding rounds covering rounds from 2020-02-02 to 2026-08-21, refreshed weekly. Base URL https://fundediq.co/api/v1. Machine-readable schema at /openapi.json.
Authentication
Every request carries an API key in the Authorization header. Create one in your account . It needs a Pro subscription, it is shown once, and it starts with fiq_sk_.
curl https://fundediq.co/api/v1/account \
-H "Authorization: Bearer $FUNDEDIQ_API_KEY" - A key is never read from a query string. Query strings reach CDN logs, referrer headers and browser history, and this one is a credential.
-
X-API-Keyis accepted as an alternative, for clients that only let you name a header and a value. - Revoking a key stops it working on its very next request. Revoked and unknown keys return the same error, deliberately.
-
Rate limit: 60 requests per minute per key. A 429 carries
Retry-After.
Credits
Pro includes 2,000 credits a month, shared with
the web app and its exports. They do not roll over. Every response carries X-Credits-Charged and X-Credits-Balance, so a client never has to guess what a call cost.
- Search: 1 credit per call, whether it returns one row or 100. Ask for a big page rather than many small ones.
- A search that matches nothing is free.
- Unlock: 1 credit per company, and 0 for a company already unlocked in the current billing period, including one unlocked in the web app.
- Filters and account are free, so an agent can read the vocabulary and check its own balance without spending anything.
/account Free Account and credit balance
Plan, subscription status, remaining credits, when the credit period resets, and what each call costs. Call it before a large batch instead of discovering the balance by running out.
Cost: Free
curl https://fundediq.co/api/v1/account \
-H "Authorization: Bearer $FUNDEDIQ_API_KEY" {
"data": {
"email": "you@example.com",
"plan": "pro",
"status": "active",
"onTrial": false,
"credits": {
"total": 2000,
"used": 61,
"remaining": 1939
},
"periodEnd": "2026-09-17T00:00:00+00:00",
"trialEnd": null,
"endsAt": null,
"rates": {
"search": 1,
"unlockPerCompany": 1,
"filters": 0,
"account": 0
}
}
} /filters Free Filter values
Every value the industry, country, city, round-type and employee-band filters accept, with the number of companies behind each. Filters match exact strings, so read them here rather than guessing: a guessed spelling returns an empty result that looks exactly like a real one.
Cost: Free
curl https://fundediq.co/api/v1/filters \
-H "Authorization: Bearer $FUNDEDIQ_API_KEY" {
"data": {
"industries": [
{
"value": "Artificial Intelligence, Machine Learning",
"companyCount": 4812
},
{
"value": "SaaS",
"companyCount": 3990
}
],
"countries": [
{
"value": "United States",
"companyCount": 31204
}
],
"cities": [
{
"value": "San Francisco",
"companyCount": 4771
}
],
"rounds": [
{
"value": "Seed",
"companyCount": 18033
}
],
"sizes": [
{
"value": "11-50",
"companyCount": 21447
}
]
}
} /companies 1 credit Search companies
Filter the database and get company profiles back, with the latest round and counts of how many investors and founder contacts each company has. Those counts are what let an agent decide what is worth unlocking before it spends anything.
Cost: 1 credit per call, whatever the page size. A search that matches nothing is free.
| Parameter | Type | Description |
|---|---|---|
| q | string | Keyword search over company name and description. logistics |
| industries | string[] | Exact industry values. Repeat the parameter for several. Values may themselves contain commas, so they are never comma-split. industries=Logistics&industries=SaaS |
| countries | string[] | Exact country values. countries=United States |
| cities | string[] | Exact city values. cities=London |
| rounds | string[] | Latest round type. rounds=Series A |
| sizes | string[] | Employee band. sizes=11-50 |
| dateFrom | date | Earliest latest-round date (YYYY-MM-DD). 2026-08-01 |
| dateTo | date | Latest latest-round date (YYYY-MM-DD). 2026-08-31 |
| amountMin | integer | Minimum total raised, in whole US dollars. 5000000 |
| amountMax | integer | Maximum total raised, in whole US dollars. 50000000 |
| foundedFrom | integer | Founded in this year or later. 2020 |
| hasContacts | boolean | Only companies with at least one founder contact on file. true |
| hasInvestors | boolean | Only companies with at least one named investor on file. true |
| sort | enum | recent (default), oldest, amount_desc, total_desc, company_asc. total_desc |
| page | integer | 1-based page number. 1 |
| pageSize | integer | Rows per page, up to 100. Default 50. A call costs the same at 1 row as at 100, so ask for more rows rather than more pages. 100 |
| includeFacets | boolean | Also return value counts per filter dimension. false |
curl -G https://fundediq.co/api/v1/companies \
-H "Authorization: Bearer $FUNDEDIQ_API_KEY" \
--data-urlencode "countries=United States" \
--data-urlencode "dateFrom=2026-08-01" \
--data-urlencode "hasContacts=true" \
--data-urlencode "pageSize=100" {
"data": [
{
"domain": "northwind.io",
"company": "Northwind",
"description": "Freight routing for mid-market shippers.",
"industry": "Logistics",
"country": "United States",
"state": "California",
"city": "San Francisco",
"employeeRange": "11-50",
"foundedYear": 2021,
"totalRaisedUsd": 18500000,
"roundCount": 2,
"latestRound": {
"date": "2026-08-17",
"type": "Series A",
"amountUsd": 14000000
},
"investorCount": 3,
"contactCount": 2,
"url": "https://fundediq.co/northwind-northwind-io-funding/",
"locked": [
"investors",
"contacts",
"rounds",
"linkedin",
"monthlyVisits",
"jobOpenings",
"itSpendUsd"
]
}
],
"meta": {
"total": 1284,
"page": 1,
"pageSize": 100,
"returned": 100,
"hasMore": true,
"credits": {
"charged": 1,
"balance": 1938
}
}
}
The same filters can be sent as a JSON body with
POST /companies
, which is easier when a value contains a comma.
/companies/unlock 1 credit Unlock full records
Investor names, every funding round with its announcement URL, founders and executives with emails and LinkedIn, company LinkedIn, monthly traffic, open roles and IT spend, for up to 100 companies in one call. A company already unlocked in the current billing period is free, including one unlocked in the web app.
Cost: 1 credit per company. 0 for a company already unlocked this period.
| Parameter | Type | Description |
|---|---|---|
| domains | string[] | Up to 100 company domains, as returned in the `domain` field of a search result. A full URL is accepted and normalised to its host. ["northwind.io", "https://www.acme.com/pricing"] |
curl -X POST https://fundediq.co/api/v1/companies/unlock \
-H "Authorization: Bearer $FUNDEDIQ_API_KEY" \
-H "Content-Type: application/json" \
-d '{"domains": ["northwind.io"]}' {
"data": [
{
"domain": "northwind.io",
"company": "Northwind",
"description": "Freight routing for mid-market shippers.",
"industry": "Logistics",
"country": "United States",
"state": "California",
"city": "San Francisco",
"employeeRange": "11-50",
"foundedYear": 2021,
"totalRaisedUsd": 18500000,
"roundCount": 2,
"latestRound": {
"date": "2026-08-17",
"type": "Series A",
"amountUsd": 14000000
},
"investorCount": 3,
"contactCount": 2,
"url": "https://fundediq.co/northwind-northwind-io-funding/",
"investors": [
"Union Square Ventures",
"Bessemer",
"Craft"
],
"rounds": [
{
"date": "2026-08-17",
"type": "Series A",
"amountUsd": 14000000,
"announcementUrl": "https://www.crunchbase.com/funding_round/example"
},
{
"date": "2024-03-05",
"type": "Seed",
"amountUsd": 4500000,
"announcementUrl": null
}
],
"contacts": [
{
"name": "Dana",
"title": "Co-founder & CEO",
"email": "dana@northwind.io",
"emailConfidence": "verified",
"linkedin": "https://www.linkedin.com/in/example"
}
],
"linkedin": "https://www.linkedin.com/company/example",
"monthlyVisits": 41200,
"monthlyVisitsGrowthPct": 12.4,
"jobOpenings": 6,
"itSpendUsd": null
}
],
"meta": {
"requested": 1,
"unlocked": 1,
"notFound": [],
"credits": {
"charged": 1,
"alreadyHeld": 0,
"balance": 1937
}
}
} Two things that bite
Repeat a parameter for a list; never comma-separate. 47 of the 150 industry values contain a comma (“Artificial Intelligence, Machine Learning”),
as does one country. Splitting on commas would turn a valid filter into two that match nothing,
and an empty result looks exactly like a real one. Write ?industries=A&industries=B.
Amounts are whole US dollars, everywhere. amountMin=5000000 is five million, and totalRaisedUsd comes back in the same unit. Dates are ISO YYYY-MM-DD, and domain is the identifier that joins every endpoint together.
Errors
Every failure is { "error": { "code": "…", "message": "…" } }. Branch on code; show message. Nothing is ever charged for a request that failed.
| Status | Code | What happened, and what to do |
|---|---|---|
| 401 | missing_api_key | No `Authorization: Bearer` header (and no `X-API-Key`). Send the key as a header. It is never read from the query string, which would put a credential in CDN logs and referrers. |
| 401 | invalid_api_key | The key does not exist, or has been revoked. Create a new one in your account. Revoked and unknown keys are deliberately indistinguishable. |
| 403 | pro_required | The key belongs to an Alerts account. The API and MCP server are Pro features. |
| 403 | no_subscription | The subscription behind this key has lapsed. Restart it from the account screen; the same key resumes working. |
| 402 | insufficient_credits | The call costs more credits than the balance. Nothing was charged. The body carries `needed` and `balance`. Credits reset monthly; `GET /account` says when. |
| 404 | not_found | None of the domains sent to `/companies/unlock` are in the dataset. Nothing was charged. Use the `domain` value from a search result rather than one you constructed. |
| 400 | too_many_domains | More than 100 domains in one unlock call. Split the batch. Nothing was charged. |
| 429 | rate_limited | More than 60 requests in a minute on one key. Wait the number of seconds in the `Retry-After` header. The limit is per key, so a second key does not raise it. |
Prefer not to write a client?
The same four calls are exposed as MCP tools at https://fundediq.co/api/mcp, so Claude, Cursor or your own agent can use them with no code. Up to 100 companies
per unlock, same meter, same data. Set it up in a minute.
Get a key
The API needs Pro: 2,000 credits a month, a 14-day trial, and calls enabled from the first day.
See pricing