Free Mutual Fund Data API
Compare free mutual fund APIs by NAV, history, holdings, region, authentication, and limits—then test a real JSON request.
TL;DR
A callable mutual fund REST API with clear coverage, stable identifiers, documented limits, and JSON responses.
Some sources need no key; others offer a free tier. Always verify quotas, licensing, attribution, and commercial-use terms.
India-focused APIs commonly expose daily NAV history. U.S. sources may emphasize SEC filings, identifiers, and holdings.
Request one known fund, inspect dates and identifiers, then confirm pagination, errors, freshness, and rate limits.
What a free mutual fund data API should cover
The exact keyword hides several distinct data needs. Define the minimum dataset before choosing a provider: current NAV, historical NAV, fund metadata, portfolio holdings, fees, risk metrics, or regulatory filings. No single free source is guaranteed to cover every region and field.
Mutual fund records should be centered on the legal fund and share class, not a display name alone. Retail, institutional, accumulating, distributing, hedged, and currency-denominated classes can follow the same portfolio while having different NAV, expenses, minimums, sales loads, eligibility, and investor cash flows.
Latest and historical mutual fund NAV API
Check valuation date, update schedule, currency, adjusted values, missing-day behavior, and whether inactive schemes remain queryable.
Mutual fund holdings API free coverage
Holdings are usually less frequent than NAV. Verify reporting period, point-in-time availability, security identifiers, weights, and filing source.
Fund identity and regional scope
Scheme codes, tickers, CUSIPs, ISINs, share classes, and fund-family identifiers are not interchangeable. Match the API to the market your application serves.
Fees, loads, minimums, and eligibility
Separate expense ratio, management fee, front- or back-end load, redemption fee, platform fee, minimum initial and subsequent investment, investor type, and waiver period. A single “fee” field cannot represent the full cost contract.
Distributions and total-return history
Preserve income and capital-gains distribution types, ex and payment dates, currency, and reinvestment method. Price or NAV change alone can understate investor return when distributions are paid.
Fund status and predecessor history
Capture launch, closure to new investors, merger, liquidation, renamed classes, and predecessor or successor IDs. Historical research needs inactive funds and the date each status became knowable.
Free mutual fund data API sources to evaluate
Treat this as a regional shortlist, not a universal ranking. Test one active class, one inactive or merged scheme, one distribution date, one class with a load or minimum, and one holdings report. Compare identifier resolution, NAV and publication dates, currency, status, pagination, corrections, and whether the source is reporting the legal class you requested.
| Source | Coverage | Access | Verify first |
|---|---|---|---|
| MFapi.in | Indian schemes, search, latest NAV, and NAV history. | REST/JSON; documentation says no API key. | Rate limits, caching, AMFI scheme codes. |
| MFData.in | Indian NAV, holdings, sectors, ratios, and analytics. | Open REST API with published per-IP limits. | Endpoint-specific quotas and field provenance. |
| SEC EDGAR APIs | U.S. filings and structured submission data; not a ready-made daily NAV feed. | Official JSON APIs without authentication keys. | Form coverage, identifiers, parsing, fair-access policy. |
| Commercial free tiers | May add U.S./global profiles, holdings, prices, or normalized identifiers. | Usually signup, API key, and monthly quota. | Licensing, redistribution, historical depth, overage price. |
Choose the dataset by mutual fund use case
A source can be excellent for daily NAV and still be unsuitable for portfolio research. Define the decision the application must support, then require the fields and dates that make that decision reproducible.
Require the exact share class, valuation date, publication time, currency, fund status, and a documented rule for weekends and holidays. Do not label a daily NAV as a live market price.
Require the reporting period, publication date, security identifiers, portfolio weights, cash treatment, derivatives coverage, and an explicit “unknown” state for undisclosed positions.
Keep official NAV, income distributions, capital-gains distributions, fees, and reinvestment assumptions separate. A return series is only comparable when its adjustment method is stated.
Return evidence with every answer: fund and class IDs, source date, retrieval time, currency, revision status, and the endpoint used. The agent should abstain when the requested class cannot be resolved.
Suppose a distributing share class closes at a NAV of $20.00, pays a $0.50 distribution, and reports $19.60 on the next valuation date. The raw NAV change is −2.0%, but an investor who received or reinvested the distribution has an approximate one-period return of ($19.60 + $0.50) / $20.00 − 1 = +0.5%. A second accumulating class of the same portfolio may retain the income and show a different NAV path. The API therefore needs a class identifier and distribution record; fund name plus NAV is not enough.
Mutual fund API Python example and validation steps
1. Test a documented fund identifier
Start with one scheme code from the provider’s own documentation. A minimal Python request is requests.get("https://api.mfapi.in/mf/125497/latest", timeout=20); call raise_for_status() before reading JSON.
2. Validate the response, not just HTTP 200
Check the fund name, identifier, NAV date, numeric types, timezone assumptions, empty histories, pagination, and error shape. Treat a successful transport as different from valid financial data.
3. Cache daily data and record provenance
Mutual fund NAV is normally periodic rather than tick-level. Store retrieval time, provider, endpoint, source date, and raw response so later calculations remain explainable.
4. Re-check terms before production
Free access can change. Confirm current limits, permitted use, attribution, redistribution, service status, and whether your workload needs a paid fallback.
5. Normalize the share-class contract
Store legal fund ID, class ID, scheme code, currency, distribution policy, hedging, fee schedule, minimums, investor eligibility, status, and effective dates separately. Do not inherit attributes from a sibling class without source evidence.
6. Reconcile NAV, distributions, and total return
Check NAV continuity around distributions, mergers, and class events. Build a separate total-return series with documented reinvestment assumptions and keep it distinct from the official NAV history.
7. Preserve first-known and revised records
Keep valuation, publication, processed, and retrieval times plus revision IDs. If a NAV or holding is corrected, store both versions so historical analysis cannot use the correction before it was available.
How QVeris helps connect mutual fund data capabilities
QVeris does not manufacture mutual fund records or replace the provider’s license. It helps developers and agents discover available capabilities, inspect their interfaces, and connect the selected external tool through a consistent workflow.
- Open Financial Modeling Prep provider details in QVeris to inspect relevant financial-data capabilities.
- Inspect fund and class identifiers, regional coverage, dataset types, effective and publication dates, revisions, authentication, and provider documentation before connecting a tool.
- Require the exact share class, currency, dataset, date range, fee or distribution definition, history policy, and evidence fields in each request.
- Keep source names, raw identifiers, timestamps, and validation results with every output; QVeris connectivity does not validate investment suitability.
FAQ
Yes. Current examples include India-focused no-key APIs and official SEC filing APIs. Coverage, limits, licensing, and readiness for daily NAV or holdings differ.
MFapi.in documents no-key access for Indian scheme search and NAV history. SEC data APIs also require no key, but serve regulatory submissions rather than a normalized daily NAV feed.
Choose a region-appropriate provider, find its scheme identifier, call the documented history endpoint, then validate dates, currency, gaps, pagination, and update frequency.
Sometimes. MFData.in publishes Indian holdings endpoints, while U.S. holdings can originate in SEC filings or commercial free tiers. Reporting periods and licenses vary.
Use an HTTP client such as Requests, set a timeout, raise on non-success status, parse JSON, validate the schema, and cache results according to the provider’s update schedule.
Different share classes can have different currencies, fees, loads, distribution policies, hedging, and eligibility. Resolve the legal class ID and valuation date before treating values as duplicates.
No. NAV is normally an official periodic valuation, often daily, and its publication may follow the valuation time. Preserve valuation and publication dates rather than presenting request time as market freshness.
Keep official NAV and distribution records separate, then calculate total return with an explicit reinvestment convention. Comparing NAV changes alone can omit income and capital-gains payments.
