Skip to main content
Most list endpoints in the MKK API accept a common set of query parameters that let you narrow results by fund, time period, section, or free-text search. Understanding how these parameters compose — and how pagination works — will help you write precise queries rather than fetching and filtering data client-side.

Common filter parameters

Using fund_code vs fund_id

Both fund_code and fund_id identify the same fund, but fund_code is a human-readable string (e.g. OJB) while fund_id is an opaque integer. Use fund_code when you are working interactively or constructing URLs by hand — it is stable across environments and easier to read in logs.
When both parameters are present, fund_code takes precedence.

Filtering by period

The period parameter performs a prefix match on the period string stored for each document or value. This means you can filter at any level of granularity — year, quarter, or full period string.
Period strings are stored as-is from the MKK disclosure data. Common formats include YYYY, YYYY-QN, and YYYY-MM. Pass the prefix that matches the granularity you need.

Text search with the q parameter

Use the q parameter on the /documents, /sections, and /line-items endpoints to search by label or text content. The search is case-insensitive and matches partial strings.

Filtering line item values by section and slug

On /line-item-values (and its alias /key-values), use section_id to restrict results to a specific section of a document, and line_item_slug to retrieve values for a specific line item across all documents or periods.
You can also combine label with other filters to match values by their display label:

Filtering portfolio entries

Use /portfolio-entries with fund_code, period, and section to find holdings for a given fund and period.

Pagination

All list endpoints return a total field alongside the data array. Use limit and offset together to page through results.
A typical paginated response looks like this:
The outer array field name matches the resource (funds, documents, line_items, portfolio_entries, etc.). Use total to determine how many pages exist: ceil(total / limit). Keep incrementing offset by limit until offset >= total. Per-endpoint limits

Paginating embedded portfolio in fund detail

When using include_portfolio=true on GET /funds/{fundId}, the embedded portfolio list is paginated with its own portfolio_limit and portfolio_offset parameters — separate from the top-level limit and offset.
The response includes a portfolio_entry_count field at the fund level indicating the full count of portfolio entries for that fund, and portfolio_limit/portfolio_offset reflecting the pagination applied to the embedded array.