openapi: 3.0.1 info: version: 1.0.0 title: Authorization Tokens Accounts Fees & Expenses API description: 'Use the `oauth` endpoint to generate the secure, time-limited JSON Web Tokens (JWTs) used to authorize access to APIs and components.

To request a token, click Authorize and enter the following credentials: * Username - Your Client ID. * Password - Your Client Secret.' servers: - url: https://www.us-api.morningstar.com/token description: PROD US - url: https://www.emea-api.morningstar.com/token description: PROD EMEA - url: https://www.apac-api.morningstar.com/token description: PROD APAC security: - BasicAuth: [] tags: - name: Fees & Expenses paths: /direct-web-services/time-series/v1/fees-expenses/accounting-fee/{ids}: get: tags: - Fees & Expenses summary: Get Accounting Fee time series. description: This fee is reported in U.S. dollars and represents pricing service, financial agent, or security servicing fees as represented in the fund's annual report. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAccountingFee /direct-web-services/time-series/v1/fees-expenses/administrator-fee/{ids}: get: tags: - Fees & Expenses summary: Get Administrator Fee time series. description: The amount that the fund spent on administration costs during the last fiscal year, as reported in the most recent annual report. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAdministratorFee /direct-web-services/time-series/v1/fees-expenses/advisor-fee/{ids}: get: tags: - Fees & Expenses summary: Get Advisor Fee time series. description: This fee represents the amount charged by manager(s) as represented in the fund's annual report. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAdvisorFee /direct-web-services/time-series/v1/fees-expenses/annual-ongoing-charge-excluding-performance-fee/{ids}: get: tags: - Fees & Expenses summary: Get Annual Ongoing Charge Excluding Performance Fee time series. description: The costs expected to pay as a Hong Kong-based investor from one year to the next, which encompasses the fund's professional fees, management fees, audit fees and custody fees , but excludes performance fees. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAnnualOngoingChargeExcludingPerformanceFee /direct-web-services/time-series/v1/fees-expenses/annual-ongoing-charge-including-performance-fee/{ids}: get: tags: - Fees & Expenses summary: Get Annual Ongoing Charge Including Performance Fee time series. description: The costs expected to pay as a Hong Kong-based investor from one year to the next, which encompasses the fund's professional fees, management fees, audit fees and custody fees and performance fees. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAnnualOngoingChargeIncludingPerformanceFee /direct-web-services/time-series/v1/fees-expenses/annual-report-adjusted-expense-ratio/{ids}: get: tags: - Fees & Expenses summary: Get Annual Report Adjusted Expense Ratio time series. description: '' parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAnnualReportAdjustedExpenseRatio /direct-web-services/time-series/v1/fees-expenses/annual-report-management-expense-ratio-mer/{ids}: get: tags: - Fees & Expenses summary: Get Annual Report Management Expense Ratio (MER) time series. description: The percentage of a fund's average net assets paid out each year to cover the fixed costs of managing the fund as stated in the fund's Annual Report and Semi-annual Report. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAnnualReportManagementExpenseRatioMer /direct-web-services/time-series/v1/fees-expenses/annual-report-ongoing-charge/{ids}: get: tags: - Fees & Expenses summary: Get Annual Report Ongoing Charge (OGC) time series. description: Ongoing charge (OGC), which is required to publish in Key Investor Information Document (KIID) for EU UCITS fund since 1st July 2012, has also been required to publish in Annual Report for some countries. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesAnnualReportOngoingCharge /direct-web-services/time-series/v1/fees-expenses/borrowing-costs-actual/{ids}: get: tags: - Fees & Expenses summary: Get Borrowing Costs Actual time series. description: The amount charged by the fund related to borrowing costs during the previous year. The cost is expressed as a percentage of the average net assets of the fund. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesBorrowingCostsActual /direct-web-services/time-series/v1/fees-expenses/borrowing-costs-estimated/{ids}: get: tags: - Fees & Expenses summary: Get Borrowing Costs Estimated time series. description: The amount that may be charged by the fund related to borrowing costs for the year ahead. The cost is expressed as a percentage of the average net assets of the fund. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesBorrowingCostsEstimated /direct-web-services/time-series/v1/fees-expenses/distribution-fee-percentage-of-nav-actual/{ids}: get: tags: - Fees & Expenses summary: Get Distribution Fee Percentage Of NAV Actual time series. description: The actual amount charged to the fund for the marketing and distribution services received during the fiscal year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesDistributionFeePercentageOfNavActual /direct-web-services/time-series/v1/fees-expenses/distribution-fee-percentage-of-nav-estimated/{ids}: get: tags: - Fees & Expenses summary: Get Distribution Fee Percentage Of NAV Estimated time series. description: The amount charged to the fund for the marketing and distribution services received during the fiscal year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesDistributionFeePercentageOfNavEstimated /direct-web-services/time-series/v1/fees-expenses/entry-cost-acquired-actual/{ids}: get: tags: - Fees & Expenses summary: Get Entry Cost Acquired Actual time series. description: The actual entry costs charged that were acquired to the fund (i.e. the fees received were added to the portfolio assets not paid as an inducement to the distributor). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesEntryCostAcquiredActual /direct-web-services/time-series/v1/fees-expenses/indirect-costs-closed-ended-actual-uk/{ids}: get: tags: - Fees & Expenses summary: Get Indirect Costs Closed Ended Actual UK time series. description: The fee paid relating to underlying closed-ended funds for a fund investing in other underlying funds, as reported in the European MiFID template (EMT). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesIndirectCostsClosedEndedActualUk /direct-web-services/time-series/v1/fees-expenses/indirect-costs-closed-ended-estimated-uk/{ids}: get: tags: - Fees & Expenses summary: Get Indirect Costs Closed Ended Estimated UK time series. description: The estimated charge relating to underlying closed-ended funds for a fund investing in other underlying funds, as reported in the European MiFID template (EMT). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesIndirectCostsClosedEndedEstimatedUk /direct-web-services/time-series/v1/fees-expenses/indirect-costs-open-ended-actual-uk/{ids}: get: tags: - Fees & Expenses summary: Get Indirect Costs Open Ended Actual UK time series. description: The fee paid relating to underlying open-ended funds for a fund investing in other underlying fund, as reported in the European MiFID template (EMT). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesIndirectCostsOpenEndedActualUk /direct-web-services/time-series/v1/fees-expenses/indirect-costs-open-ended-estimated-uk/{ids}: get: tags: - Fees & Expenses summary: Get Indirect Costs Open Ended Estimated UK time series. description: The estimated charge relating to underlying open-ended funds for a fund investing in other underlying funds, as reported in the European MiFID template (EMT). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesIndirectCostsOpenEndedEstimatedUk /direct-web-services/time-series/v1/fees-expenses/management-fee-ex-distribution-fees-actual/{ids}: get: tags: - Fees & Expenses summary: Get Management Fee Ex Distribution Fees Actual time series. description: The amount charged to the fund for its management, including investment services but excluding distribution fees, during the prior fiscal year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesManagementFeeExDistributionFeesActual /direct-web-services/time-series/v1/fees-expenses/management-fee-ex-distribution-fees-estimated/{ids}: get: tags: - Fees & Expenses summary: Get Management Fee Ex Distribution Fees Estimated time series. description: The amount that the fund estimates will be charged for its management, including investment services but excluding distribution fees, during the following fiscal year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesManagementFeeExDistributionFeesEstimated /direct-web-services/time-series/v1/fees-expenses/maximum-entry-cost-acquired/{ids}: get: tags: - Fees & Expenses summary: Get Maximum Entry Cost Acquired time series. description: The maximum sales charge or one-time deduction from an initial investment made into the fund that is paid into the fund's assets expressed as a percentage. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesMaximumEntryCostAcquired /direct-web-services/time-series/v1/fees-expenses/maximum-entry-cost-base-currency/{ids}: get: tags: - Fees & Expenses summary: Get Maximum Entry Cost Base Currency time series. description: The maximum amount that can be charged to an investor when buying units or shares in the fund. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesMaximumEntryCostBaseCurrency /direct-web-services/time-series/v1/fees-expenses/maximum-entry-cost-percentage/{ids}: get: tags: - Fees & Expenses summary: Get Maximum Entry Cost Percentage time series. description: The maximum amount that can be charged to an investor when buying units or shares in the fund. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesMaximumEntryCostPercentage /direct-web-services/time-series/v1/fees-expenses/maximum-exit-cost-acquired/{ids}: get: tags: - Fees & Expenses summary: Get Maximum Exit Cost Acquired time series. description: The maximum exit charge or one-time deduction, on redemptions, paid into the fund's assets expressed as a percentage. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesMaximumExitCostAcquired /direct-web-services/time-series/v1/fees-expenses/maximum-exit-fee-base-currency/{ids}: get: tags: - Fees & Expenses summary: Get Maximum Exit Fee Base Currency time series. description: The maximum amount that can be charged to an investor when selling units or shares in the fund. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesMaximumExitFeeBaseCurrency /direct-web-services/time-series/v1/fees-expenses/maximum-exit-fee-percentage/{ids}: get: tags: - Fees & Expenses summary: Get Maximum Exit Fee Percentage time series. description: The maximum amount that can be charged to an investor when selling units or shares in the fund. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesMaximumExitFeePercentage /direct-web-services/time-series/v1/fees-expenses/model-representative-cost/{ids}: get: tags: - Fees & Expenses summary: Get Model Representative Cost time series. description: The Model Representative Cost is a comparative figure for the cost of implementing each model portfolio. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesModelRepresentativeCost /direct-web-services/time-series/v1/fees-expenses/ongoing-charge-ex-perf-fee/{ids}: get: tags: - Fees & Expenses summary: Get Ongoing Charge Ex Perf Fee time series. description: TER exlcuding perfprmance fee as at specified FYE date. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesOngoingChargeExPerfFee /direct-web-services/time-series/v1/fees-expenses/ongoing-charge-inc-perf-fee/{ids}: get: tags: - Fees & Expenses summary: Get Ongoing Charge Inc Perf Fee time series. description: '' parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesOngoingChargeIncPerfFee /direct-web-services/time-series/v1/fees-expenses/ongoing-cost-actual/{ids}: get: tags: - Fees & Expenses summary: Get Ongoing Cost Actual time series. description: The amount actually charged to the fund for re-occurring fees during the last fiscal year. The ongoing charge includes adviser, administration, custodian, legal and any other fees that will typically not vary from year to year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesOngoingCostActual /direct-web-services/time-series/v1/fees-expenses/ongoing-cost-estimated/{ids}: get: tags: - Fees & Expenses summary: Get Ongoing Cost Estimated time series. description: The amount that may be charged by the fund for re-occurring fees during the fiscal year. The ongoing charge will include adviser, administration, custodian, legal and any other fees that will typically not vary from year to year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesOngoingCostEstimated /direct-web-services/time-series/v1/fees-expenses/other-fee/{ids}: get: tags: - Fees & Expenses summary: Get Other Fee time series. description: The amount the fund spent on miscellaneous fees during the last fiscal year, as reported in the most recent annual report. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesOtherFee /direct-web-services/time-series/v1/fees-expenses/other-fee-amount-cn/{ids}: get: tags: - Fees & Expenses summary: Get Other Fee Amount Cn time series. description: '' parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesOtherFeeAmountCn /direct-web-services/time-series/v1/fees-expenses/performance-fee-actual/{ids}: get: tags: - Fees & Expenses summary: Get Performance Fee Actual time series. description: A payment awarded to a fund manager if certain performance targets are attained during the prior fiscal year. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesPerformanceFeeActual /direct-web-services/time-series/v1/fees-expenses/performance-fee-estimated/{ids}: get: tags: - Fees & Expenses summary: Get Performance Fee Estimated time series. description: A fee that may be charged if the fund exceeds certain performance targets in a set period of time. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesPerformanceFeeEstimated /direct-web-services/time-series/v1/fees-expenses/prospective-acquired-fund-expense/{ids}: get: tags: - Fees & Expenses summary: Get Prospective Acquired Fund Expense time series. description: A comparative measure of the cost of implementing the portfolio. The Prospective Acquired Fund Expense is the asset weighted average of underlying registered investment product fees. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesProspectiveAcquiredFundExpense /direct-web-services/time-series/v1/fees-expenses/prospectus-adjusted-expense-ratio/{ids}: get: tags: - Fees & Expenses summary: Get Prospectus Adjusted Expense Ratio time series. description: The Prospectus Adjusted Operating Expense Ratio is the percentage of fund assets paid for operating expenses and management fees. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesProspectusAdjustedExpenseRatio /direct-web-services/time-series/v1/fees-expenses/real-assets-costs-actual-uk/{ids}: get: tags: - Fees & Expenses summary: Get Real Assets Costs Actual UK time series. description: The fee paid for holding, managing, operating, and maintaining real assets such as real estate and infrastructure, as reported in the European MiFID template (EMT). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesRealAssetsCostsActualUk /direct-web-services/time-series/v1/fees-expenses/real-assets-costs-estimated-uk/{ids}: get: tags: - Fees & Expenses summary: Get Real Assets Costs Estimated UK time series. description: The estimated costs of holding, managing, operating, and maintaining real assets such as real estate and infrastructure, as reported in the European MiFID template (EMT). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesRealAssetsCostsEstimatedUk /direct-web-services/time-series/v1/fees-expenses/total-expense-survey/{ids}: get: tags: - Fees & Expenses summary: Get Total Expense Survey time series. description: The measure of total expense happened in the course of fund management, mainly including fund management fee, fund custodian fee, trading fee, interest cost etc. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTotalExpenseSurvey /direct-web-services/time-series/v1/fees-expenses/trading-expense/{ids}: get: tags: - Fees & Expenses summary: Get Trading Expense time series. description: The expenses incurred during fund transaction. It basically includes stamp duty, trading commission and so on. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTradingExpense /direct-web-services/time-series/v1/fees-expenses/transaction-costs-actual-uk/{ids}: get: tags: - Fees & Expenses summary: Get Transaction Costs Actual UK time series. description: The fee paid by the fund due to the acquisition and disposal of investments, as per UK Financial Conduct Authority (FCA) guidelines for the UK version of the Key Information Document (KID). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTransactionCostsActualUk /direct-web-services/time-series/v1/fees-expenses/transaction-costs-estimated-uk/{ids}: get: tags: - Fees & Expenses summary: Get Transaction Costs Estimated UK time series. description: The estimated charge for the fund that may be incurred as result of the acquisition and disposal of investments, as per UK Financial Conduct Authority (FCA) guidelines for the UK version of the Key Information Document (KID). parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - daily type: string default: daily - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTransactionCostsEstimatedUk /direct-web-services/time-series/v1/fees-expenses/transaction-fee-actual/{ids}: get: tags: - Fees & Expenses summary: Get Transaction Fee Actual time series. description: The fee paid by the fund due to the acquisition and disposal of investments. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTransactionFeeActual /direct-web-services/time-series/v1/fees-expenses/transaction-fee-estimated/{ids}: get: tags: - Fees & Expenses summary: Get Transaction Fee Estimated time series. description: The estimated charge for the fund that may be incurred as result of the acquisition and disposal of investments. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTransactionFeeEstimated /direct-web-services/time-series/v1/fees-expenses/turnover-ratio-percentage/{ids}: get: tags: - Fees & Expenses summary: Get Turnover Ratio Percentage time series. description: A measure of how frequently an investment buys or sells it's holdings. Expressed as a percentage of how much of the investment's holdings have been traded over a given year as reported in the investment's periodic disclosure document. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - annually type: string default: annually - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTurnoverRatioPercentage /direct-web-services/time-series/v1/fees-expenses/typical-exit-cost/{ids}: get: tags: - Fees & Expenses summary: Get Typical Exit Cost time series. description: The exit charge or one-time deduction paid on redemptions if the investment has been held for the recommended holding period. parameters: - name: ids in: path description: "\nComma-separated list of up to 25 investment identifiers to query.\n\nAccepts:\n\n- Morningstar Performance ID (default)\n- Morningstar Security ID\n- Morningstar IDs (MSID)\n- ISIN\n- CUSIP\n- Trading symbol\n- Category ID \n Important: When a category ID is passed, the corresponding `identifierType` can be `performanceId` or `securityId`. The value must be URL-encoded. For example, if the category ID is `LC00002226;CA]FO`, the URL-encoded value is `LC00002226;CA%5DFO`." required: true schema: type: string example: 0P00000016,0P00002Y8D,DODGX,0P000000ppY - name: idTypes in: query description: ' Comma-separated list specifying the type of each value passed in the `ids` parameter.
Rules: * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value * Empty values default to `performanceId` Example: * `ids=id1,id2,id3` * `id1` and `id3` are performance IDs * `id2` is a security ID * `idTypes=,securityId` Accepted values: * `performanceId` (default) * `isin` * `securityId` * `cusip` * `tradingSymbol` * `msid`' schema: type: string example: ',securityId' - name: baseCurrency in: query description: ' Comma-separated list of 3-character ISO 4217 currency codes (for example, `CAD`, `EUR`, `JPY`).
* Filters results based on currency * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Base currency passed for `id2` and `id4` * `baseCurrency=,USD,,USD`' schema: type: string example: ',USD,,USD' - name: domicile in: query description: "\nComma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). \nRules:\n\n* Filters results based on domicile\n* Values must align with the order of values in `ids`\n* Use empty entries to skip\n* Omit trailing commas after the last non-empty value\n\nExample:\n\n* `ids=id1,id2,id3,id4,id5`\n* Domicile passed for `id2` and `id4`\n* `domicile=,USA,,USA`" schema: type: string example: ',USD,,USD' - name: exchangeCountry in: query description: ' Comma-separated list of 3-character ISO 3166‑1 country codes (for example, `CAN`, `IRL`, `IND`). * Filters results based on domicile * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange country passed for `id2` and `id4` * `exchangeCountry=,USA,,USA`' schema: type: string example: ',CAN,CAN' - name: exchangeId description: ' Comma-separated list of exchange IDs (for example, `EX$$$$XMEX`, `EX$$$$XNAS`). * Filters results based on exchange ID * Values must align with the order of values in `ids` * Use empty entries to skip * Omit trailing commas after the last non-empty value Example: * `ids=id1,id2,id3,id4,id5` * Exchange ID passed for `id2` and `id4` * `exchangeId=,EX$$$$XMEX,,EX$$$$XNAS`' in: query required: false schema: type: string example: EX$$$$XMEX - name: frequency in: query description: Specifies the time interval between data points. schema: enum: - monthly type: string default: monthly - name: startDate in: query description: 'Specifies the start date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2020-01-12' format: date - name: endDate in: query description: 'Specifies the end date for the time series. Accepted format is `yyyy-MM-dd`. ' schema: type: string example: '2024-01-12' format: date - name: timePeriod in: query description: "Specifies the size of the time window for the data range. \n\n- Used in combination with `timePeriodUnit` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: number example: '12' - name: timePeriodUnit in: query description: "\nSpecifies the time period unit. \n\n- Used in combination with `timePeriod` to specify relative time ranges. \n\n- When `startDate`, `endDate`, `timePeriod` and `timePeriodUnit` are provided, `timePeriod` and `timePeriodUnit` take precedence." schema: type: string enum: - months - days - years - name: applyEarliestCommonDate in: query description: "\nSpecifies whether to apply the earliest common start date across all investments.\n\n When set to `true`, the start date of the time series is adjusted to match the latest inception date among the investments, ensuring all data points are aligned." schema: type: boolean default: false - name: applyTrackRecordExtension in: query description: ' Specifies whether to apply the Track Record Extension logic in order to extend the performance of an investment by copying the historical performance of another qualified older investment.' schema: type: boolean default: false - name: applyRestructureDate in: query description: ' Specifies whether to consider the Morningstar or Custom restructure date when determining the start of the performance period. This option is applicable only when `applyEarliestCommonDate` is set to true.' schema: type: boolean default: false - name: sinceInception in: query description: "\nSets the time range from inception (or the maximum supported lookback) to the end date. \n\nTakes precendence over any `timePeriod` / `timePeriodUnit` and `startDate` / `endDate` settings." required: false schema: type: boolean default: false - name: currencyId in: query description: Specifies the currency in which to return data. schema: type: string enum: - BASE - AUD - BND - BRL - CAD - CHF - CLP - CNH - CNY - CZK - DKK - EUR - GBP - HKD - HUF - IDR - ILS - INR - JPY - KRW - MOP - MXN - MYR - NOK - NZD - PLN - RMB - RUB - SEK - SGD - THB - TWD - USD - ZAR default: BASE responses: '200': $ref: '#/components/responses/ResponseTimeSeriesSingleObservation' '400': $ref: '#/components/responses/ResponseStatus400' '500': $ref: '#/components/responses/ResponseStatus500' operationId: getFeesExpensesTypicalExitCost components: schemas: OutputMetadataMessages: description: Provides information about identifiers for which no results were returned. title: OutputMetadataMessages type: object additionalProperties: false properties: investments: description: Indicates identifiers for which no results were returned. type: array items: $ref: '#/components/schemas/OutputMetadataMessageInvestment' type: type: string description: Indicates the message type. example: Warning readOnly: true const: Warning message: type: string description: Description of the issue encountered. example: 'Lookup : Invalid investments.' readOnly: true code: type: string description: Code associated with the message. example: 404.common.125 readOnly: true ResponseTimeSeriesSingleObservation: title: ResponseTimeSeriesSingleObservation readOnly: true description: List of investments for which time series data was returned. type: object additionalProperties: false properties: investments: type: array minItems: 1 items: $ref: '#/components/schemas/OutputInvestmentSingleObservation' metadata: $ref: '#/components/schemas/OutputMetadata' OutputTimeSeriesSingleObservation: title: OutputTimeSeriesSingleObservation type: object description: A named time series with dated data points. additionalProperties: false properties: categories: type: array description: Semantic tags/labels for this series. items: $ref: '#/components/schemas/OutputCategory' dataPoint: description: Data point time series relates to. type: string example: daily-price enum: - 12-mo-yield - 7-day-gross-yield - 7-day-unsubsidized-yield - 7-day-yield - absolute-carbon-emissions-scope-1-and-2-tonnes - absolute-carbon-emissions-scope-1-and-2-tonnes-category-average - absolute-carbon-intensity-scope-1-and-2-tonnes-per-usd-millions - absolute-carbon-intensity-scope-1-and-2-tonnes-per-usd-millions-category-average - accounting-fee - administrator-fee - advisor-fee - aggregated-12-month-yield - aggregated-sec-yield - annual-ongoing-charge-excluding-performance-fee - annual-ongoing-charge-including-performance-fee - annual-report-adjusted-expense-ratio - annual-report-management-expense-ratio-mer - annual-report-ongoing-charge - borrowing-costs-actual - borrowing-costs-estimated - carbon-footprint-scope-1-and-2-and-3-tonnes-per-usd-millions - carbon-footprint-scope-1-and-2-and-3-tonnes-per-usd-millions-category-average - carbon-footprint-scope-1-and-2-eligible-holding-type - carbon-footprint-scope-1-and-2-number-of-holdings-covered - carbon-footprint-scope-1-and-2-percentage-of-eligible-portfolio-covered - carbon-footprint-scope-1-and-2-percentage-of-eligible-portfolio-not-covered - carbon-footprint-scope-1-and-2-percentage-of-portfolio-covered - carbon-footprint-scope-1-and-2-percentage-of-portfolio-eligible - carbon-footprint-scope-1-and-2-percentage-of-portfolio-eligible-not-covered - carbon-footprint-scope-1-and-2-percentage-of-portfolio-not-covered - carbon-footprint-scope-1-and-2-percentage-of-portfolio-not-eligible - carbon-footprint-scope-1-and-2-tonnes-per-aud-million-category-average - carbon-footprint-scope-1-and-2-tonnes-per-aud-millions - carbon-footprint-scope-1-and-2-tonnes-per-chf-million-category-average - carbon-footprint-scope-1-and-2-tonnes-per-chf-millions - carbon-footprint-scope-1-and-2-tonnes-per-eur-million-category-average - carbon-footprint-scope-1-and-2-tonnes-per-eur-millions - carbon-footprint-scope-1-and-2-tonnes-per-gbp-million-category-average - carbon-footprint-scope-1-and-2-tonnes-per-gbp-millions - carbon-footprint-scope-1-and-2-tonnes-per-hkd-million-category-average - carbon-footprint-scope-1-and-2-tonnes-per-hkd-millions - carbon-footprint-scope-1-and-2-tonnes-per-sgd-million-category-average - carbon-footprint-scope-1-and-2-tonnes-per-sgd-millions - carbon-footprint-scope-1-and-2-tonnes-per-usd-millions - carbon-footprint-scope-1-and-2-tonnes-per-usd-millions-category-average - carbon-risk-level-classification - carbon-risk-score-category-average - carbon-risk-score-percent-rank-in-category - cum-fair-nav-unweighted-dri - cum-fair-nav-weighted-dri - current-yield - cumulative-return - daily-closing-price - daily-estimated-holding-cost - daily-gross-return-index - daily-high-price - daily-load-adj-return-index-restated - daily-low-price - daily-market-impact-cost - daily-market-return-index - daily-net-return-index - daily-portfolio-concentration - daily-price - daily-return-index - daily-return-index-cum-fair - daily-tracking-volatility - daily-volume - daily-yield - distribution-fee-percentage-of-nav-actual - distribution-fee-percentage-of-nav-estimated - dividend-amount-history - dividend-yield-12-month - dividend-yield-long - dividend-yield-short - entry-cost-acquired-actual - equity-mkt-cap-rescaling-factor-long - estimated-quarterly-return - estimated-share-class-net-flow-daily - estimated-share-class-net-flow-monthly - ex-par-nav-unweighted-dri - ex-par-nav-weighted-dri - growth - five-year-five-star-rating-percent - five-year-four-star-rating-percent - five-year-not-star-rated-percent - five-year-not-star-rating-eligible-percent - five-year-one-star-rating-percent - five-year-three-star-rating-percent - five-year-two-star-rating-percent - historical-carbon-risk-score - historical-corporate-esg-risk-score - historical-sovereign-esg-risk-score - income-only-yield-nav-uk - income-only-yield-nav-us - income-only-yield-price-us - indirect-costs-closed-ended-actual-uk - indirect-costs-closed-ended-estimated-uk - indirect-costs-open-ended-actual-uk - indirect-costs-open-ended-estimated-uk - management-fee-ex-distribution-fees-actual - management-fee-ex-distribution-fees-estimated - market-cap-giant-percentage-long-rescaled - market-cap-large-percentage-long-rescaled - market-cap-micro-percentage-long-rescaled - market-cap-mid-percentage-long-rescaled - market-cap-small-percentage-long-rescaled - maximum-entry-cost-acquired - maximum-entry-cost-base-currency - maximum-entry-cost-percentage - maximum-exit-cost-acquired - maximum-exit-fee-base-currency - maximum-exit-fee-percentage - model-representative-cost - monthly-downside-tracking-error - monthly-gross-return - monthly-inflation-adjusted-return - monthly-load-adj-return-restated - monthly-market-return - monthly-net-return - monthly-return - monthly-return-unweighted-nav - monthly-return-unweighted-price - monthly-return-weighted-nav - monthly-return-weighted-price - monthly-tracking-error - monthly-yield - morningstar-esg-risk-rating-for-funds - morningstar-medalist-rating - morningstar-medalist-rating-parent-pillar - morningstar-medalist-rating-parent-pillar-type - morningstar-medalist-rating-people-pillar - morningstar-medalist-rating-people-pillar-type - morningstar-medalist-rating-performance-pillar - morningstar-medalist-rating-performance-pillar-type - morningstar-medalist-rating-price-pillar - morningstar-medalist-rating-price-pillar-type - morningstar-medalist-rating-process-pillar - morningstar-medalist-rating-process-pillar-type - morningstar-medalist-rating-type - morningstar-rating-overall - nav-unweighted-daily-income-and-capital-gain-yield - nav-unweighted-daily-income-only-yield - nav-unweighted-daily-total-distribution-yield - nav-unweighted-dri - nav-weighted-daily-income-and-capital-gain-yield - nav-weighted-daily-income-only-yield - nav-weighted-daily-total-distribution-yield - nav-weighted-dri - ongoing-charge-ex-perf-fee - ongoing-charge-inc-perf-fee - ongoing-cost-actual - ongoing-cost-estimated - other-fee - other-fee-amount-cn - overall-five-star-rating-percent - overall-four-star-rating-percent - overall-not-star-rated-percent - overall-not-star-rating-eligible-percent - overall-one-star-rating-percent - overall-three-star-rating-percent - overall-two-star-rating-percent - performance-fee-actual - performance-fee-estimated - portfolio-carbon-risk-score - portfolio-corporate-esg-risk-rating - portfolio-corporate-esg-risk-score - portfolio-environmental-risk-score - portfolio-governance-risk-score - portfolio-social-risk-score - portfolio-sovereign-esg-risk-rating - portfolio-sovereign-esg-risk-score - portfolio-unallocated-risk-score - price - price-unweighted-daily-income-and-capital-gain-yield - price-unweighted-daily-income-only-yield - price-unweighted-daily-total-distribution-yield - price-unweighted-dri - price-weighted-daily-income-and-capital-gain-yield - price-weighted-daily-income-only-yield - price-weighted-daily-total-distribution-yield - price-weighted-dri - prospective-acquired-fund-expense - prospectus-adjusted-expense-ratio - quarterly-downside-tracking-error - quarterly-gross-return - quarterly-inflation-adjusted-return - quarterly-load-adj-return-restated - quarterly-market-return - quarterly-net-return - quarterly-return - quarterly-tracking-error - quoted-yield-daily - rating-10-yr - rating-3-yr - rating-5-yr - raw-return-cum-fair - raw-return-market-price - raw-return-nav - real-assets-costs-actual-uk - real-assets-costs-estimated-uk - return - rolling-return - sec-yield - sec-yield-rescaling-factor - sitca-yield - sri-value - ten-year-five-star-rating-percent - ten-year-four-star-rating-percent - ten-year-not-star-rated-percent - ten-year-not-star-rating-eligible-percent - ten-year-one-star-rating-percent - ten-year-three-star-rating-percent - ten-year-two-star-rating-percent - three-year-five-star-rating-percent - three-year-four-star-rating-percent - three-year-not-star-rated-percent - three-year-not-star-rating-eligible-percent - three-year-one-star-rating-percent - three-year-three-star-rating-percent - three-year-two-star-rating-percent - total-expense-survey - trading-expense - transaction-costs-actual-uk - transaction-costs-estimated-uk - transaction-fee-actual - transaction-fee-estimated - turnover-ratio-percentage - typical-exit-cost - unannualized - weekly-return - yearly-capital-return - yearly-gross-return - yearly-income-return - yearly-inflation-adjusted-return - yearly-interest-income - yearly-investor-return - yearly-load-adj-return-restated - yearly-market-return - yearly-net-return - yearly-return performanceType: type: string description: Indicates the performance type used for the time series. enum: - total - market - gross data: type: array items: $ref: '#/components/schemas/DataModelSingleObservation' ErrorResponse: title: ErrorResponse description: Defines the structure of an error response returned when a bad or invalid request is submitted. Includes the HTTP status code, descriptive message, and request identifier for traceability. type: object properties: statusCode: description: Numeric HTTP status code associated with the error. type: integer format: int32 example: 400 readOnly: true errorCode: description: Identifier for a specific type of error. type: string example: 400.timeSeries.009 readOnly: true message: type: string description: Descriptive message providing details about the error or validation failure. example: Invalid frequency 'm' for datapoint 'daily-closing-price'. readOnly: true requestId: description: Indicates unique request identifier. example: c63e7f6c-b52d-42c3-9d1b-4a4b4ac05f3c readOnly: true type: string additionalProperties: false OutputInvestmentSingleObservation: title: OutputInvestmentSingleObservation type: object additionalProperties: false properties: identifiers: $ref: '#/components/schemas/OutputIdentifiers' timeSeries: $ref: '#/components/schemas/OutputTimeSeriesSingleObservation' metadata: $ref: '#/components/schemas/OutputInvestmentsMetadata' OutputCategory: title: OutputCategory type: string description: Identifies the thematic category or functional area a data point belongs to within the Time Series API. enum: - fees-expenses - corporate-actions - fund-sustainability - fund-research - performance - portfolio-analytics - portfolio-holdings - reference OutputIdentifiers: title: OutputIdentifiers description: Specifies the identifier type used to specify the target investment in the request. additionalProperties: false properties: performanceId: type: string example: 0P00002CI5 isin: type: string example: US2562191062 securityId: type: string example: FCUSA0000P cusip: type: string example: 459200101 sedol: type: string example: B4TT7L5 tradingSymbol: type: string example: MDLOX OutputMetadataMessageInvestment: title: OutputMetadataMessageInvestment type: object additionalProperties: false properties: id: type: string description: Indicates identifier value passed in request. example: 0P000PPP6Q readOnly: true idType: type: string description: Indicates the identifier type passed in request. example: performanceId readOnly: true OutputMetadata: description: Metadata returned in response. Includes information about identifiers for which no results were found. title: OutputMetadata type: object properties: messages: $ref: '#/components/schemas/OutputMetadataMessages' requestId: description: Indicates the request identifier. example: c63e7f6c-b52d-42c3-9d1b-4a4b4ac05f3c type: string readOnly: true time: description: Indicates time response was returned. example: '2025-10-02T10:54:36.9161062Z' type: string format: date-time readOnly: true additionalProperties: false OutputInvestmentsMetadata: title: OutputInvestmentsMetadata description: Provides the identifier look up details passed in request. type: object additionalProperties: false properties: exchangeCountry: type: string example: GBR default: USA description: Indicates exchange country used to look up investment. Represented by 3-character ISO 3166-1 country codes. minLength: 3 maxLength: 3 domicile: type: string example: GBR default: USA description: Indicates domicile used to look up investment. Represented by 3-character ISO 3166-1 country codes. minLength: 3 maxLength: 3 baseCurrency: type: string example: GBP default: USD description: Indicates base currency used to look up investment. Represented by 3-character ISO 4217 currency codes. minLength: 3 maxLength: 3 DataModelSingleObservation: title: DataModelSingleObservation description: Represents a time series of single observations, where each entry contains a date and its corresponding value. type: object properties: date: type: string format: date example: '2025-09-06' value: type: number example: 1.108 examples: ResponseStatus400Example1: summary: 400 - Bad Request value: statusCode: 400 errorCode: 400.investmentDetails.002 message: Invalid date format. Expected format is yyyy-MM-d requestId: 539d62a5-3586-4070-965e-0f7f64712d79 ResponseStatus500Example1: summary: 500 - Internal Server Error value: statusCode: 500 errorCode: 500.investmentDetails.003 message: Error calling Investment API. requestId: 539d62a5-3586-4070-965e-0f7f64712d79 responses: ResponseStatus500: description: '500' content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: ResponseStatus500Example1: $ref: '#/components/examples/ResponseStatus500Example1' ResponseTimeSeriesSingleObservation: description: OK content: application/json: schema: $ref: '#/components/schemas/ResponseTimeSeriesSingleObservation' ResponseStatus400: description: '400' content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' examples: ResponseStatus400Example1: $ref: '#/components/examples/ResponseStatus400Example1' securitySchemes: BasicAuth: type: http scheme: basic