> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rangler.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Funds and holdings fields

> Definitions, types, allowed values, and defaults for funds and holdings.

Use this reference with the endpoint documentation. A required field must be present; a nullable field can still contain `null`. Missing data does not mean zero. See [Field guide](/field-guide) for unit and status conventions.

### `GET /v1/funds/{fund_id}/events`

| Parameter | Location | Type | Presence | Meaning |
| - | - | - | - | - |
| `fund_id` | path | string (uuid) | required | Filter or identify a fund using its stable Rangler identifier. |
| `cursor` | query | string or null | optional | Seek cursor over the event freshness timestamp `coalesce(source_published_at, occurred_at, created_at)` plus event id. |
| `type` | query | array of string or null | optional | Filter by the endpoint's event or disclosure category. Repeat the parameter where an array is accepted. |
| `from` | query | string (date-time) or null | optional | Inclusive lower bound on the event freshness timestamp `coalesce(source_published_at, occurred_at, created_at)`. |
| `to` | query | string (date-time) or null | optional | Inclusive upper bound on the event freshness timestamp `coalesce(source_published_at, occurred_at, created_at)`. |
| `limit` | query | integer | optional | Maximum number of records to return in this page; the schema gives the allowed range. Default: `25`. |

### `GET /v1/funds`

| Parameter | Location | Type | Presence | Meaning |
| - | - | - | - | - |
| `provider` | query | string or null | optional | Filter by provider slug |
| `q` | query | string or null | optional | Search by fund name or slug |
| `limit` | query | integer | optional | Maximum number of records to return in this page; the schema gives the allowed range. Default: `100`. |
| `currency` | query | string | optional | AUM display currency Allowed values: `native`, `NGN`, `USD`. Default: `"native"`. |
| `country_code` | query | string or null | optional | Filter by ISO 3166-1 alpha-2 market country code |

### `GET /v1/funds/{fund_id}`

| Parameter | Location | Type | Presence | Meaning |
| - | - | - | - | - |
| `fund_id` | path | string (uuid) | required | Filter or identify a fund using its stable Rangler identifier. |
| `currency` | query | string | optional | AUM display currency Allowed values: `native`, `NGN`, `USD`. Default: `"native"`. |

### `GET /v1/funds/{fund_id}/snapshots`

| Parameter | Location | Type | Presence | Meaning |
| - | - | - | - | - |
| `fund_id` | path | string (uuid) | required | Filter or identify a fund using its stable Rangler identifier. |
| `limit` | query | integer | optional | Maximum number of records to return in this page; the schema gives the allowed range. Default: `24`. |
| `currency` | query | string | optional | AUM display currency Allowed values: `native`, `NGN`, `USD`. Default: `"native"`. |

<a id="fund-holding-company-read" />

## Fund holding company

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `id` | string (uuid) | required | Stable Rangler identifier for this record. Use the value exactly as returned. |
| `ticker` | string | required | Exchange trading symbol when available. A ticker is not a substitute for the stable company ID. |
| `name` | string | required | Display name of the identified resource. |
| `logo_url` | string or null | optional | URL of the resource's logo when available. |

<a id="fund-holding-read" />

## Fund holding

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `name` | string | required | Display name of the identified resource. |
| `weight` | number or null | optional | Portfolio allocation in percentage points: 25 means 25%. |
| `holding_type` | string | required | Holding classification: company for a matched issuer, instrument for an identified instrument, or other. |
| `company` | [Fund holding company](/fields/funds#fund-holding-company-read) or null | optional | Company identity or details associated with this record. |

<a id="fund-list-read" />

## Fund list

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `id` | string (uuid) | required | Stable Rangler identifier for this record. Use the value exactly as returned. |
| `provider` | string | required | Stable fund-manager or provider key. |
| `provider_display_name` | string or null | optional | Human-readable name of the fund manager or provider. |
| `provider_website_url` | string or null | optional | Website URL of the fund manager or provider. |
| `provider_logo_url` | string or null | optional | Logo URL of the fund manager or provider. |
| `logo_url` | string or null | optional | URL of the resource's logo when available. |
| `slug` | string | required | URL-friendly Rangler fund identifier. |
| `name` | string | required | Display name of the identified resource. |
| `ticker` | string or null | optional | Exchange trading symbol when available. A ticker is not a substitute for the stable company ID. |
| `exchange` | string or null | optional | Exchange or trading venue code, such as NGX or NASD. |
| `company_id` | string (uuid) or null | optional | Stable Rangler company identifier. |
| `labels` | array of string or null | optional | Display labels attached to the fund. |
| `category` | string or null | optional | Investment category assigned to the fund. |
| `base_currency` | string or null | optional | Primary currency in which the fund is denominated. |
| `country_code` | string | optional | Two-letter ISO 3166-1 country code identifying the market, such as NG. Default: `"NG"`. |
| `is_active` | boolean | required | Whether the fund record is marked active in Rangler's directory. |
| `created_at` | string (date-time) or null | optional | Timestamp when Rangler created this record; not the source publication time. |
| `latest_snapshot` | [Fund list snapshot](/fields/funds#fund-list-snapshot-read) or null | optional | Most recent available fund disclosure or valuation snapshot. |
| `latest_holdings_snapshot` | [Fund list snapshot](/fields/funds#fund-list-snapshot-read) or null | optional | Latest snapshot with holdings; it can differ from latest\_snapshot. |

<a id="fund-list-snapshot-read" />

## Fund list snapshot

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `id` | string (uuid) | required | Stable Rangler identifier for this record. Use the value exactly as returned. |
| `fund_id` | string (uuid) | required | Stable Rangler fund identifier. |
| `as_of_date` | string (date) | required | Calendar date to which these observations or values apply. |
| `factsheet_month` | string (date) or null | optional | Month represented by the factsheet, encoded as a date when known. |
| `factsheet_title` | string | required | Title of the fund factsheet or disclosure. |
| `factsheet_url` | string | required | URL of the fund factsheet or disclosure document. |
| `source_post_url` | string or null | optional | URL of the provider's post announcing the disclosure. |
| `source_period_month` | string (date) or null | optional | Reporting month identified in the source disclosure. |
| `source_document_title` | string | required | Title of the source document. |
| `source_document_url` | string | required | URL of the source document supporting the snapshot. |
| `source_page_url` | string or null | optional | Provider page linking to the source document. |
| `source_published_at` | string (date-time) or null | optional | Publication timestamp reported for the underlying source. |
| `price` | number or null | optional | Reported fund unit price or NAV per unit in price\_currency. |
| `price_currency` | string or null | optional | Currency in which the associated price is expressed. |
| `aum` | number or null | optional | Assets under management in base units of aum\_currency after any available conversion. |
| `aum_currency` | string or null | optional | Currency of aum. |
| `native_aum` | number or null | optional | Original source-reported assets under management in native\_aum\_currency. |
| `native_aum_currency` | string or null | optional | Original currency of the source-reported assets under management. |
| `fx_rate_applied` | number or null | optional | Exchange-rate multiplier applied to native\_aum when converting aum. |
| `fx_rate_date` | string (date) or null | optional | Date of the exchange-rate observation used for the amount conversion. |
| `aum_conversion_status` | string or null | optional | Outcome of AUM conversion. native preserves a source amount, same\_currency requires no conversion, converted uses FX, and missing/unsupported values identify why conversion was unavailable. Allowed values: `native`, `same_currency`, `converted`, `missing_value`, `missing_currency`, `missing_target_currency`, `missing_fx`, `unsupported_currency`. |
| `asset_value_kind` | string or null | optional | Kind of disclosed asset value, distinguishing AUM from other valuation concepts. |
| `asset_value_label` | string or null | optional | Source label used for the disclosed asset value. |
| `month_return_pct` | number or null | optional | Source-reported monthly return in percentage points: 5 means 5%. |
| `ytd_return_pct` | number or null | optional | Source-reported year-to-date return in percentage points: 5 means 5%. |
| `annual_returns` | map of number or null | optional | Annual returns keyed by year, in percentage points: 5 means 5%. |
| `net_yield_pct` | number or null | optional | Source-reported net yield in percentage points: 5 means 5%. |
| `aum_change_abs` | number or null | optional | Absolute AUM change from the previous monthly comparison snapshot, in aum\_currency. |
| `aum_change_pct` | number or null | optional | AUM change from the previous monthly comparison snapshot in percentage points. |
| `aum_change_yoy_abs` | number or null | optional | Absolute AUM change from the prior-year comparison snapshot, in aum\_currency. |
| `aum_change_yoy_pct` | number or null | optional | Year-over-year AUM change in percentage points. |
| `price_change_abs` | number or null | optional | Absolute unit-price change from the previous monthly comparison snapshot, in price\_currency. |
| `price_change_pct` | number or null | optional | Unit-price change from the previous monthly comparison snapshot in percentage points. |
| `price_change_yoy_abs` | number or null | optional | Absolute unit-price change from the prior-year comparison snapshot, in price\_currency. |
| `price_change_yoy_pct` | number or null | optional | Year-over-year unit-price change in percentage points. |
| `net_yield_change_pct_points` | number or null | optional | Difference between current and previous monthly net yield, in percentage points. |
| `net_yield_change_yoy_pct_points` | number or null | optional | Difference between current and prior-year net yield, in percentage points. |

<a id="fund-read" />

## Fund

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `id` | string (uuid) | required | Stable Rangler identifier for this record. Use the value exactly as returned. |
| `provider` | string | required | Stable fund-manager or provider key. |
| `provider_display_name` | string or null | optional | Human-readable name of the fund manager or provider. |
| `provider_website_url` | string or null | optional | Website URL of the fund manager or provider. |
| `provider_logo_url` | string or null | optional | Logo URL of the fund manager or provider. |
| `logo_url` | string or null | optional | URL of the resource's logo when available. |
| `slug` | string | required | URL-friendly Rangler fund identifier. |
| `name` | string | required | Display name of the identified resource. |
| `ticker` | string or null | optional | Exchange trading symbol when available. A ticker is not a substitute for the stable company ID. |
| `exchange` | string or null | optional | Exchange or trading venue code, such as NGX or NASD. |
| `company_id` | string (uuid) or null | optional | Stable Rangler company identifier. |
| `labels` | array of string or null | optional | Display labels attached to the fund. |
| `category` | string or null | optional | Investment category assigned to the fund. |
| `base_currency` | string or null | optional | Primary currency in which the fund is denominated. |
| `country_code` | string | optional | Two-letter ISO 3166-1 country code identifying the market, such as NG. Default: `"NG"`. |
| `is_active` | boolean | required | Whether the fund record is marked active in Rangler's directory. |
| `created_at` | string (date-time) or null | optional | Timestamp when Rangler created this record; not the source publication time. |
| `latest_snapshot` | [Fund snapshot](/fields/funds#fund-snapshot-read) or null | optional | Most recent available fund disclosure or valuation snapshot. |
| `latest_holdings_snapshot` | [Fund snapshot](/fields/funds#fund-snapshot-read) or null | optional | Latest snapshot with holdings; it can differ from latest\_snapshot. |

<a id="fund-snapshot-read" />

## Fund snapshot

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `id` | string (uuid) | required | Stable Rangler identifier for this record. Use the value exactly as returned. |
| `fund_id` | string (uuid) | required | Stable Rangler fund identifier. |
| `as_of_date` | string (date) | required | Calendar date to which these observations or values apply. |
| `factsheet_month` | string (date) or null | optional | Month represented by the factsheet, encoded as a date when known. |
| `factsheet_title` | string | required | Title of the fund factsheet or disclosure. |
| `factsheet_url` | string | required | URL of the fund factsheet or disclosure document. |
| `source_post_url` | string or null | optional | URL of the provider's post announcing the disclosure. |
| `source_period_month` | string (date) or null | optional | Reporting month identified in the source disclosure. |
| `source_document_title` | string | required | Title of the source document. |
| `source_document_url` | string | required | URL of the source document supporting the snapshot. |
| `source_page_url` | string or null | optional | Provider page linking to the source document. |
| `source_published_at` | string (date-time) or null | optional | Publication timestamp reported for the underlying source. |
| `price` | number or null | optional | Reported fund unit price or NAV per unit in price\_currency. |
| `price_currency` | string or null | optional | Currency in which the associated price is expressed. |
| `aum` | number or null | optional | Assets under management in base units of aum\_currency after any available conversion. |
| `aum_currency` | string or null | optional | Currency of aum. |
| `native_aum` | number or null | optional | Original source-reported assets under management in native\_aum\_currency. |
| `native_aum_currency` | string or null | optional | Original currency of the source-reported assets under management. |
| `fx_rate_applied` | number or null | optional | Exchange-rate multiplier applied to native\_aum when converting aum. |
| `fx_rate_date` | string (date) or null | optional | Date of the exchange-rate observation used for the amount conversion. |
| `aum_conversion_status` | string or null | optional | Outcome of AUM conversion. native preserves a source amount, same\_currency requires no conversion, converted uses FX, and missing/unsupported values identify why conversion was unavailable. Allowed values: `native`, `same_currency`, `converted`, `missing_value`, `missing_currency`, `missing_target_currency`, `missing_fx`, `unsupported_currency`. |
| `asset_value_kind` | string or null | optional | Kind of disclosed asset value, distinguishing AUM from other valuation concepts. |
| `asset_value_label` | string or null | optional | Source label used for the disclosed asset value. |
| `month_return_pct` | number or null | optional | Source-reported monthly return in percentage points: 5 means 5%. |
| `ytd_return_pct` | number or null | optional | Source-reported year-to-date return in percentage points: 5 means 5%. |
| `annual_returns` | map of number or null | optional | Annual returns keyed by year, in percentage points: 5 means 5%. |
| `performance_history` | object or null | optional | Additional source-reported performance history. Keys depend on the disclosure; do not assume a fixed shape. |
| `source_metrics` | object or null | optional | Additional source-reported metrics. Keys and units depend on the disclosure. |
| `net_yield_pct` | number or null | optional | Source-reported net yield in percentage points: 5 means 5%. |
| `aum_change_abs` | number or null | optional | Absolute AUM change from the previous monthly comparison snapshot, in aum\_currency. |
| `aum_change_pct` | number or null | optional | AUM change from the previous monthly comparison snapshot in percentage points. |
| `aum_change_yoy_abs` | number or null | optional | Absolute AUM change from the prior-year comparison snapshot, in aum\_currency. |
| `aum_change_yoy_pct` | number or null | optional | Year-over-year AUM change in percentage points. |
| `price_change_abs` | number or null | optional | Absolute unit-price change from the previous monthly comparison snapshot, in price\_currency. |
| `price_change_pct` | number or null | optional | Unit-price change from the previous monthly comparison snapshot in percentage points. |
| `price_change_yoy_abs` | number or null | optional | Absolute unit-price change from the prior-year comparison snapshot, in price\_currency. |
| `price_change_yoy_pct` | number or null | optional | Year-over-year unit-price change in percentage points. |
| `net_yield_change_pct_points` | number or null | optional | Difference between current and previous monthly net yield, in percentage points. |
| `net_yield_change_yoy_pct_points` | number or null | optional | Difference between current and prior-year net yield, in percentage points. |
| `top_holdings` | array of [Fund holding](/fields/funds#fund-holding-read) or null | optional | Disclosed principal holdings, their weights, and matched company identities when available. |

<a id="fund-snapshots-page" />

## Fund snapshots page

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `data` | array of [Fund snapshot](/fields/funds#fund-snapshot-read) | required | Returned records or observations. The item schema defines each element's fields. |
| `next_cursor` | string or null | optional | Opaque cursor for the next page. Pass it unchanged as cursor; null means no next page. |

<a id="funds-page" />

## Funds page

| Field | Type | Presence | Meaning |
| - | - | - | - |
| `data` | array of [Fund list](/fields/funds#fund-list-read) | required | Returned records or observations. The item schema defines each element's fields. |
| `next_cursor` | string or null | optional | Opaque cursor for the next page. Pass it unchanged as cursor; null means no next page. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.