Returns Form N-MFP3 monthly money-market fund reports — one record per (fund series, month): fund category (Government / Prime / Single State…), net assets, shares outstanding, weighted average maturity (wam_days) and life (wal_days), the fund's DAILY daily/weekly liquid-asset percentages for the month (verbatim fractions of 1 — the money-market stress series), monthly gross subscriptions/redemptions ON N-MFP3 ONLY, and stable-NAV posture

Returns Form N-MFP3 monthly money-market fund reports — one record per (fund series, month): fund category (Government / Prime / Single State…), net assets, shares outstanding, weighted average maturity (wam_days) and life (wal_days), the fund's DAILY daily/weekly liquid-asset percentages for the month (verbatim fractions of 1 — the money-market stress series), monthly gross subscriptions/redemptions ON N-MFP3 ONLY, and stable-NAV posture. ⚠ MONTHLY FLOWS ARE NOT ON EVERY RECORD. gross_subscriptions_month / gross_redemptions_month are filed per SHARE CLASS on N-MFP3 and are served as the sum across a filing's classes. N-MFP2 and N-MFP do not ask for monthly flows at all (N-MFP2 reports weekly), so those rows carry null — the source's silence, not ours. Read flows_basis to tell them apart: "monthly_sum_of_classes" or "not_filed_monthly". form_type says which form the record came from. ⚠ A SUM COVERS ONLY THE CLASSES THAT REPORTED. flows_classes_reporting_subscriptions / _redemptions say how many did; compare each against total_share_classes, which is how many EXIST. The two counts are separate because a class can report one figure and omit the other. WHERE THOSE FIELDS ARE ABSENT, COVERAGE IS NOT RECORDED — that is NOT a statement that the sum is complete. Rows written before 2026-09-11 predate the fields and are not backfilled for them. Use this when the user asks about: money-market fund assets or flows, fund liquidity levels, WAM positioning as a rates signal, prime-vs- government fund dynamics, or a specific fund family's money funds. The adviser_file_number (801-…) joins get_investment_advisers for the manager's full ADV profile; registrant cik joins other EDGAR datasets. Each fund files monthly — filter series_id + sort report_date asc to read one fund's history; filter by report_date (since/until) for a cross-fund month snapshot. Coverage: 2010-11→present across all THREE form generations, with per-era cadence differences kept verbatim: N-MFP3 records (2024-06→) carry DAILY liquidity/shadow-NAV/yield series with real dates; N-MFP2 records (2016-10→2024-06) carry WEEKLY Friday points labeled with the source's own fridayWeek1..5 keys in the date field (the filing reports week numbers, not dates — never fabricated); original N-MFP records (2010-11→2016-10) carry single month-end shadow-NAV + yield points and NO liquidity percentages (that reporting began with the 2014 reforms). series_name is empty before 2024 (not in the older XML). The per-security portfolio schedule and per-class yields live in the filing XML — follow source_url (v1.1 scope). Pure-publisher posture: the fund's reported numbers as filed, parsed by KeyVex — no derived stress scores; liquidity thresholds are for agents to apply.

get/v1/money-market-funds

Request

  • Base URL: https://api.keyvex.com
  • URL: https://api.keyvex.com/v1/money-market-funds
  • Auth: API key in header x-api-key

Query parameters

accession_numberstring

Direct lookup by EDGAR accession number.

cikstring

Registrant CIK (any zero-padding).

series_idstring

EDGAR series ID (e.g. 'S000096464') — one fund's monthly history.

fund_namestring

Case-insensitive substring against registrant or series name.

fund_categorystring

Verbatim N-MFP category: 'Government', 'Prime', 'Single State', 'Other Tax Exempt', …

is_retail_fundboolean

Filter to retail (true) / institutional (false) funds.

sincestring

report_date lower bound (YYYY-MM-DD inclusive).

untilstring

report_date upper bound (YYYY-MM-DD inclusive).

sort_by'report_date' | 'net_assets'

Default report_date (newest month first).

sort_order'asc' | 'desc'

Default desc.

limitinteger

Maximum records. Default 50, max 500.

Response

JSON envelope: { results: [...], count, has_more }.

Changes

No recorded changes to this operation across all 1 revision of this API.