API documentation
Everything you need to turn an ISIN into a structured fund factsheet: seven endpoints, bearer authentication, predictable JSON, and a monthly request allowance.Updated October 1, 2026At a glance
curl --max-time 300 https://fundfactsapi.com/api/v1/funds/IE00B4L5Y983 \-H "Authorization: Bearer ffk_your_api_key"
The response is one JSON document: identity and key facts, TER, the SRRI risk indicator, a rule-based profile (category, risk band, concentration, region and sector tilt), top holdings, sector / country / asset-allocation breakdowns, calendar and annualised returns, a monthly performance series, volatility, Sharpe ratio and max drawdown — read from the documents the fund house publishes and refreshed every 24 hours.
Endpoints
Base URL https://fundfactsapi.com/api/v1. Full details on the endpoints page; the machine-readable version is /openapi.json.
| Endpoint | What it does | Requests |
|---|---|---|
GET /funds/{isin} | Structured factsheet for one ISIN. | 1 |
POST /funds | Batch lookup, up to the plan's batch size per call. | 1 per fund found |
GET /search | Name, issuer or ISIN-prefix search over loaded funds. | free |
GET /resolve | ISIN of an exchange ticker: CSPX on London, VWCE on Xetra (LSE, SIX, Xetra, Euronext). | free |
GET /coverage | Whether up to 100 ISINs are covered, before spending a request. | free |
POST /portfolio | Weighted look-through across funds (Starter+). | 1 per position |
GET /overlap | Holdings overlap between two or more funds (Starter+). | 1 per ISIN |
GET /changes | Change feed: tracked fields that moved between refreshes (Scale+). | free |
GET /webhooks | Signed POSTs when a fund changes; manage endpoints (Scale+). | free |
GET /export | Every matching fund as NDJSON, optionally gzipped (Scale+). | 1 per call |
POST /extract | Turn any KID / KIID / factsheet PDF into the same JSON shape (Pro+). | 5 per document |
POST /factsheets | A one-page factsheet as HTML or PDF, saved with keyless share and embed links. | 1 (HTML) · 2 (PDF) |
GET /me | Plan and quota for the calling key. | free |
GET /demo/funds/{isin} | Keyless read of an already-loaded fund (30/min per IP). | none, no key |
GET /scpi/{idOrIsin} | Structured data for one French SCPI (slug, ISIN or name). | 1 |
GET /scpi | Name, manager or ISIN search over the SCPI universe. | free |
Pages
Plans
Free $0 — 5 lookups / month · Starter $9.99/month — 60 requests / month · Pro $49/month — 1,000 requests / month · Scale $249/month — 10,000 requests / month · Enterprise metered at $0.01 per request. One request per fund found; search is free. Details under requests & rate limits and on the pricing page.