Skip to main content

Top Holdings

Retrieve the top holdings and their allocations for a specific mutual fund across multiple periods.

GET/3.0/funds/top-holdings

Description

This endpoint returns the top holdings of a mutual fund with their percentage allocations over multiple periods. It provides historical data showing how the fund's portfolio composition has changed over time.

Request

Authentication

  • Type: Bearer Token
  • Required: Yes

Parameters

NameTypeRequiredDescriptionExample
fund_idstringYesThe unique identifier of the mutual fund.4BFD

Response

Success Response (200)

{
"status": "ok",
"message": "",
"data": {
"fund_id": "4BFD",
"created": "2022-05-18T06:08:53.634Z",
"modified": "2022-09-06T10:30:38.148Z",
"frequency": "quarterly",
"periods": [
{
"id": "",
"label": "Jul 2022",
"date": "2022-07-31"
},
{
"id": "",
"label": "Jun 2022",
"date": "2022-06-30"
},
{
"id": "",
"label": "May 2022",
"date": "2022-05-31"
}
],
"rows": [
{
"key": null,
"percent": true,
"label": "MARI",
"unit": "",
"heading": false,
"values": [
8.28,
8.38,
0
]
},
{
"key": null,
"percent": true,
"label": "UBL",
"unit": "",
"heading": false,
"values": [
7.27,
7.35,
0
]
}
]
}
}

Response Fields

FieldTypeDescription
fund_idstringFund identifier
createdstringData creation timestamp (ISO 8601 format)
modifiedstringLast modification timestamp (ISO 8601 format)
frequencystringReporting frequency (e.g., "quarterly")
periodsarrayArray of time periods with holdings data - View
rowsarrayArray of holding records - View

Period Fields (periods[])

FieldTypeDescription
idstringPeriod identifier
labelstringHuman-readable period label (e.g., "Jul 2022")
datestringPeriod end date (YYYY-MM-DD)

Row Fields (rows[])

FieldTypeDescription
keystringHolding key identifier (null if not applicable)
percentbooleanWhether values represent percentages
labelstringSecurity name/symbol (e.g., "MARI", "UBL")
unitstringUnit of measurement (empty for percentages)
headingbooleanWhether this is a heading row
valuesarrayArray of allocation values for each period (percentage or 0 if not held)

Error Responses

For detailed Common Error responses, see the Error Handling.

No Fund ID Provided (200)

{
"status": "error",
"message": "No `fund_id` specified"
}

Examples

Get Fund Top Holdings Data

curl -X GET "https://csapis.com/3.0/funds/top-holdings?fund_id=4BFD" \
-H "Authorization: Bearer YOUR_API_TOKEN"

Use Cases

  • Portfolio Composition Analysis: Understand the fund's top holdings and their weightings
  • Historical Tracking: Monitor changes in fund allocations over multiple periods
  • Investment Research: Compare holding strategies across different mutual funds
  • Risk Analysis: Identify key positions and concentration risks
  • Rebalancing Decisions: Track how portfolio weights have changed over time