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 stocks endpoints aggregate portfolio entry data at the security level, letting you see which funds hold a given stock, how market values have changed over time, and how portfolio weights have trended across reporting periods. Each security is identified by a URL-safe key derived from its name and ISIN. You can retrieve the key from the stocks listing and use it to fetch the full holder and history detail for any security.

Endpoints

MethodPathDescription
GET/stocksList and search securities held across fund portfolios
GET/stocks/{stockKey}Retrieve holder list and history for a specific security
Base URL: https://mkk-roan.vercel.app/api

GET /stocks

Returns a paginated list of securities aggregated from portfolio holdings across all funds and documents.

Query parameters

q
string
Free-text search against security names, ISIN codes, and issuer names. Returns securities whose name, ISIN, or issuer contains the query string.
limit
integer
default:"50"
Maximum number of securities to return. Accepts values from 1 to 1000.
offset
integer
default:"0"
Number of results to skip. Use with limit to paginate through large result sets.

Response schema

total
integer
required
Total number of securities matching the query.
limit
integer
required
Effective limit applied.
offset
integer
required
Effective offset applied.
stocks
StockSummary[]
required
Array of security summary objects.

Example requests

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

Example response

200
{
  "total": 3847,
  "limit": 50,
  "offset": 0,
  "stocks": [
    {
      "key": "turkiye-cumhuriyeti-15032026-tr0000000001",
      "security": "TURKIYE CUMHURIYETI 15.03.2026",
      "isin": "TR0000000001",
      "issuer": "Hazine ve Maliye Bakanlığı",
      "sections": ["Devlet İç Borçlanma Senetleri"],
      "entry_count": 2840,
      "document_count": 1240,
      "fund_count": 87,
      "latest_holder_count": 34,
      "latest_market_value": 4821000000.0,
      "average_weight": 0.047,
      "max_weight": 0.182,
      "latest_period": "2024-01"
    }
  ]
}

GET /stocks/

Returns full detail for a single security, including the current list of funds holding it and a time-series history of its aggregate market value and portfolio weight across all reporting periods.
The stockKey is a URL-safe slug generated from the security’s name and ISIN. Retrieve it from the key field in GET /stocks results.

Path parameters

stockKey
string
required
The URL-safe key for the security (e.g., turkiye-cumhuriyeti-15032026-tr0000000001). Available from the key field in GET /stocks.

Query parameters

limit
integer
default:"100"
Maximum number of fund holders to return in the holders array.

Response schema

stock
StockSummary
required
Full summary object for the security. See the StockSummary schema above.
holders
StockHolding[]
required
List of funds currently holding this security, with per-fund position details.
holder_limit
integer
required
The effective limit applied to the holders array.
holder_total
integer
required
Total number of holders, regardless of the applied limit.
history
StockHistoryPoint[]
required
Time-series data showing aggregate market value and portfolio weight trends across all reporting periods in which this security appears.

Error responses

StatusDescription
404No security with the given stockKey exists.

Example requests

curl "https://mkk-roan.vercel.app/api/stocks/turkiye-cumhuriyeti-15032026-tr0000000001"

Example response

200
{
  "stock": {
    "key": "turkiye-cumhuriyeti-15032026-tr0000000001",
    "security": "TURKIYE CUMHURIYETI 15.03.2026",
    "isin": "TR0000000001",
    "issuer": "Hazine ve Maliye Bakanlığı",
    "sections": ["Devlet İç Borçlanma Senetleri"],
    "entry_count": 2840,
    "document_count": 1240,
    "fund_count": 87,
    "latest_holder_count": 34,
    "latest_market_value": 4821000000.0,
    "average_weight": 0.047,
    "max_weight": 0.182,
    "latest_period": "2024-01"
  },
  "holders": [
    {
      "fund_code": "OJB",
      "fund_title": "Oyak Jinsi Bono Fonu",
      "document_id": 1042,
      "disclosure_index": "2023-TR-00012345",
      "file_name": "OJB_202306.pdf",
      "period": "2023-06",
      "report_date": "2023-07-04",
      "pdf_url": "https://mkk.org.tr/...",
      "kap_file_url": "https://kap.org.tr/file/...",
      "kap_url": "https://kap.org.tr/disclosure/...",
      "section": "Devlet İç Borçlanma Senetleri",
      "security": "TURKIYE CUMHURIYETI 15.03.2026",
      "isin": "TR0000000001",
      "issuer": "Hazine ve Maliye Bakanlığı",
      "currency": "TRY",
      "entries_count": 1,
      "market_value": "9.875.000",
      "numeric_market_value": 9875000.0,
      "nominal_value": "10.000.000",
      "numeric_nominal_value": 10000000.0,
      "portfolio_weight": 0.042,
      "weight_source": "computed"
    }
  ],
  "holder_limit": 100,
  "holder_total": 34,
  "history": [
    {
      "period": "2024-01",
      "report_date": "2024-02-02",
      "disclosure_index": "2024-TR-00001234",
      "fund_count": 34,
      "document_count": 34,
      "market_value": 4821000000.0,
      "average_weight": 0.047,
      "max_weight": 0.182
    },
    {
      "period": "2023-12",
      "report_date": "2024-01-03",
      "disclosure_index": "2024-TR-00000812",
      "fund_count": 36,
      "document_count": 36,
      "market_value": 4590000000.0,
      "average_weight": 0.044,
      "max_weight": 0.176
    }
  ]
}
404
{
  "error": "Stock not found",
  "key": "unknown-security-key"
}