Skip to main content

Documentation Index

Fetch the complete documentation index at: https://demircancelebi.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

The funds endpoints let you browse the complete set of investment funds in the MKK dataset and drill into the full history of any single fund. Each fund is identified by its fund_code (for example, OJB), which you use as the path parameter when fetching fund details.

Endpoints

MethodPathDescription
GET/fundsList all funds with summary statistics
GET/funds/{fundId}Retrieve full detail for a single fund
Base URL: https://mkk-roan.vercel.app/api

GET /funds

Returns a list of every fund in the database, each with document counts, period ranges, and line item statistics.
The fundId path parameter used in GET /funds/{fundId} is the fund’s fund_code value (e.g., OJB), not a numeric database ID.

Response schema

funds
FundSummary[]
required
Array of fund summary objects.

Example request

curl https://mkk-roan.vercel.app/api/funds

Example response

200
{
  "funds": [
    {
      "id": "fund_01",
      "fund_code": "OJB",
      "fund_title": "Oyak Jinsi Bono Fonu",
      "document_count": 48,
      "period_count": 48,
      "line_item_count": 87,
      "first_period": "2020-01",
      "last_period": "2024-01"
    },
    {
      "id": "fund_02",
      "fund_code": "AKB",
      "fund_title": "Akbank Bono Fonu",
      "document_count": 36,
      "period_count": 36,
      "line_item_count": 74,
      "first_period": "2021-01",
      "last_period": "2024-01"
    }
  ]
}

GET /funds/

Returns comprehensive detail for a single fund, including its documents, line items, sections, and optionally its extracted values and portfolio holdings.

Path parameters

fundId
string
required
The fund code (e.g., OJB). This corresponds to the fund_code field returned by GET /funds.

Query parameters

include_values
string
When set to a truthy value (1, true, yes, or on), each line item in the line_items array will include its extracted values array. Omit this parameter to keep responses smaller when you only need metadata.
include_portfolio
string
When set to a truthy value (1, true, yes, or on), the response includes the portfolio_entries array with normalized holdings data for this fund.
portfolio_limit
integer
default:"500"
Maximum number of portfolio entries to return. Accepts values from 1 to 5000.
portfolio_offset
integer
default:"0"
Number of portfolio entries to skip before returning results. Use with portfolio_limit to paginate through large portfolios.

Response schema

FundDetail extends FundSummary with the following additional fields:
id
string
required
Internal database identifier.
fund_code
string
required
Short alphanumeric fund code.
fund_title
string
required
Full fund name.
document_count
integer
required
Number of parsed documents.
period_count
integer
required
Number of distinct reporting periods.
line_item_count
integer
required
Number of unique line items.
first_period
string
required
Earliest reporting period (YYYY-MM).
last_period
string
required
Most recent reporting period (YYYY-MM).
portfolio_entry_count
integer
required
Total number of normalized portfolio entries for this fund across all documents.
documents
DocumentSummary[]
required
Array of document summaries for every disclosure belonging to this fund. See the Documents reference for the full DocumentSummary schema.
line_items
LineItem[]
required
Array of canonical line items observed in this fund’s documents. When include_values=true, each item includes a nested values array.
sections
SectionSummary[]
required
Canonical sections that appear in this fund’s documents.
portfolio_sections
string[]
required
List of distinct portfolio section labels found in this fund’s portfolio data.
portfolio_limit
integer
required
The effective portfolio_limit applied to this response.
portfolio_offset
integer
required
The effective portfolio_offset applied to this response.
portfolio_entries
PortfolioEntry[]
required
Normalized portfolio entries. Populated only when include_portfolio is truthy. See the Portfolio reference for the full PortfolioEntry schema.

Error responses

StatusDescription
404No fund with the given fundId (fund code) exists.

Example requests

curl https://mkk-roan.vercel.app/api/funds

Example response

200
{
  "id": "fund_01",
  "fund_code": "OJB",
  "fund_title": "Oyak Jinsi Bono Fonu",
  "document_count": 48,
  "period_count": 48,
  "line_item_count": 87,
  "first_period": "2020-01",
  "last_period": "2024-01",
  "portfolio_entry_count": 14320,
  "portfolio_sections": ["Devlet İç Borçlanma Senetleri", "Özel Sektör Tahvilleri"],
  "portfolio_limit": 500,
  "portfolio_offset": 0,
  "documents": [...],
  "line_items": [...],
  "sections": [...],
  "portfolio_entries": []
}
404
{
  "error": "Fund not found",
  "fund_code": "UNKNOWN"
}