openapi: 3.2.0 info: title: Refdata Service Fund Holding API version: 1.0.0 description: API for accessing reference data internally. tags: - name: FundHolding paths: /v1/fund/holdings/snapshot: get: summary: Get Fund Holdings Snapshot description: 'Returns all fund holdings across all funds as NDJSON. Use the filter parameter to narrow results and the fields parameter to select which fields are returned. When the filter targets the cache key field with an "in" operator, the server performs direct cache lookups instead of scanning all records. Additional filters in the same request are applied to the narrowed set.' operationId: getFundHoldingsSnapshot tags: - FundHolding parameters: - $ref: '#/components/parameters/SnapshotFields' - $ref: '#/components/parameters/SnapshotFilter' responses: '200': description: Successful response (NDJSON stream) content: application/x-ndjson: schema: $ref: '#/components/schemas/FundHolding' '400': description: Invalid filter expression content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' /v1/fund/holdings/{id}: get: summary: Get Fund Holdings description: 'Returns holdings for a single fund by ISIN. If the identifier is not an ISIN, the service attempts to auto-detect the symbol type and resolve it to the underlying ISIN.' operationId: getFundHoldings tags: - FundHolding parameters: - name: id in: path required: true description: 'Fund identifier. ISINs are looked up directly; other formats (e.g., CUSIP) are auto-detected and resolved.' schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/FundHoldingResponse' '404': description: Not found content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' components: schemas: FundHoldingResponse: type: object properties: isin: type: string portfolio_date: type: - string - 'null' format: date-time holdings_count: type: integer holdings: type: array items: $ref: '#/components/schemas/FundHolding' required: - isin - holdings_count - holdings FundHolding: type: object properties: fund_isin: type: - string - 'null' fund_cusip: type: - string - 'null' fund_symbol: type: - string - 'null' portfolio_date: type: - string - 'null' format: date holding_security_name: type: - string - 'null' holding_symbol: type: - string - 'null' holding_cusip: type: - string - 'null' holding_isin: type: - string - 'null' holding_country_code: type: - string - 'null' holding_currency_code: type: - string - 'null' holding_detail_type_id: type: - string - 'null' holding_detail_type: type: - string - 'null' holding_weighting: type: - number - 'null' format: double holding_market_value: type: - number - 'null' format: double holding_number_of_shares: type: - number - 'null' format: double holding_duration: type: - number - 'null' format: double ErrorResponse: type: object properties: error: type: string required: - error parameters: SnapshotFilter: name: filter in: query required: false description: 'JSON filter expression. Supported operators: equal_to, not_equal_to, greater_than, greater_than_or_equal_to, less_than, less_than_or_equal_to, in, not_in, is_null, includes, not_includes, starts_with, ends_with. Logical combinators: and, or, not.' schema: type: string example: '{"isin":{"in":["US0378331005","US5949181045"]}}' SnapshotFields: name: fields in: query required: false description: Comma-separated list of fields to include in the response schema: type: string example: isin,cusip,issuer x-provenance: method: searched source: https://docs.moment.com/reference harvested: '2026-10-14' tool: harvest-readme-openapi.py note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored. assembled_from: - https://docs.moment.com/reference/getequitybyid-1.md - https://docs.moment.com/reference/getequitybyid.md - https://docs.moment.com/reference/getequitysnapshot-1.md - https://docs.moment.com/reference/getequitysnapshot.md - https://docs.moment.com/reference/getfixedincomebyid-1.md - https://docs.moment.com/reference/getfixedincomebyid.md - https://docs.moment.com/reference/getfixedincomesnapshot-1.md - https://docs.moment.com/reference/getfixedincomesnapshot.md - https://docs.moment.com/reference/getfundbyid-1.md - https://docs.moment.com/reference/getfundbyid.md - https://docs.moment.com/reference/getfundholdings-1.md - https://docs.moment.com/reference/getfundholdings.md - https://docs.moment.com/reference/getfundholdingssnapshot-1.md - https://docs.moment.com/reference/getfundholdingssnapshot.md - https://docs.moment.com/reference/getfundsnapshot-1.md - https://docs.moment.com/reference/getfundsnapshot.md - https://docs.moment.com/reference/gethealth-3.md - https://docs.moment.com/reference/gethealth.md - https://docs.moment.com/reference/getsecuritybyid-1.md - https://docs.moment.com/reference/getsecuritybyid.md - https://docs.moment.com/reference/getsecuritysnapshot-1.md - https://docs.moment.com/reference/getsecuritysnapshot.md - https://docs.moment.com/reference/postfixedincomeanalytics-1.md - https://docs.moment.com/reference/postfixedincomeanalytics.md - https://docs.moment.com/reference/postsecurityresolve.md merge: pages: 25 deduped: 67 conflicts_kept_first: 17