Getting started

How do I search a fund by name and get its ISIN?

GET /api/v1/search?q=msci world returns matching share classes with ISIN, issuer, currency, distribution policy and category. Free and not counted; covers funds already loaded.Updated 12 September 2026 · by FundFacts API

Short answer

Call GET https://fundfactsapi.com/api/v1/search?q=<name>&limit=10 with your API key. Each result carries isin, name, issuer, currency, assetClass, shareClass, income (accumulating or distributing), category and dataAsOf, so you can pick the exact share class before spending a request on the full payload. Search is free and not counted. It covers funds that have been loaded into the store; a brand-new ISIN is found by ISIN, not by name.

The call

bash
curl -s "https://fundfactsapi.com/api/v1/search?q=msci%20world&limit=5" -H "Authorization: Bearer $FUNDFACTS_API_KEY"
json
{
"results": [
{ "isin": "IE00B4L5Y983", "name": "iShares Core MSCI World UCITS ETF", "issuer": "iShares", "currency": "USD", "assetClass": "Equities", "shareClass": "USD Acc", "income": "Accumulating", "category": "Global Equity", "dataAsOf": "2026-09-01" }
]
}

q matches on name, issuer and ISIN prefix; two characters minimum. Results are ordered by relevance.

Picking the right share class

One fund often has a dozen share classes: accumulating and distributing, several currencies, hedged and unhedged, retail and institutional. The search result's currency, shareClass and income fields let you choose before you call /funds/{isin}, which is where the request is counted. Share classes explained covers the naming conventions.

Scope

Search runs over the store, so it finds funds that someone has loaded. Large UCITS ETF ranges and popular funds are there; a niche fund nobody has requested is not, until you look it up by ISIN once. The ISIN is printed on every factsheet, KID and broker page.

In the SDKs and MCP

ff.search("msci world") in the JavaScript and Python clients, and the search_funds tool on the MCP server, call the same endpoint.

Verify it yourself

The demo endpoint returns the live payload for a fund that is already in the store, without a key. Everything on this page can be checked against it.
bash
curl -s https://fundfactsapi.com/api/v1/demo/funds/IE00B4L5Y983 | jq '{name, asOf: .data.dataAsOf, ter: .data.headlineMetrics.ter, risk: .data.riskRating, top: .data.topHoldings[:3]}'

Terms used on this page

Frequently asked questions

Can I search by ticker or WKN?

Search matches names, issuers and ISIN prefixes. Tickers and WKNs are not indexed; the name usually gets you there in one step, and the glossary explains how the identifiers map.

Which ISINs work?

Any share class of a UCITS fund, ETF, money-market fund or open-end fund whose management company publishes a product page, factsheet and KID. Each share class has its own ISIN and is looked up on its own. Stocks, bonds and indices are not funds and return 404 fund_not_found.

Try it on your own ISINs

One request returns key facts, holdings, risk and performance as JSON. Free plan, no card.