Morningstar Investment List API

Retrieve curated and client-defined investment lists with associated Morningstar data points for rendering list-driven experiences.

OpenAPI Specification

morningstar-investment-list-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  version: 1.0.0
  title: Authorization Tokens Accounts Investment List API
  description: 'Use the `oauth` endpoint to generate the secure, time-limited JSON Web Tokens (JWTs) used to authorize access to APIs and components.</br></br>

    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: Investment List
paths:
  /direct-web-services/v1/investment-list:
    post:
      summary: Retrieve investment list.
      responses:
        '200':
          $ref: '#/components/responses/ResponseRetrieveInvestmentList'
        '400':
          $ref: '#/components/responses/ResponseBadRequest'
        '401':
          $ref: '#/components/responses/ResponseUnauthorized'
        '403':
          $ref: '#/components/responses/ResponseForbidden'
        '500':
          $ref: '#/components/responses/ResponseInternalServerError'
      operationId: retrieveInvestmentList
      tags:
      - Investment List
      requestBody:
        $ref: '#/components/requestBodies/RequestRetrieveInvestmentList'
components:
  requestBodies:
    RequestRetrieveInvestmentList:
      required: true
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RequestRetrieveInvestmentList'
          examples:
            RequestRetrieveInvestmentListExample1:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample1'
            RequestRetrieveInvestmentListExample2:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample2'
            RequestRetrieveInvestmentListExample3:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample3'
            RequestRetrieveInvestmentListExample4:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample4'
            RequestRetrieveInvestmentListExample5:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample5'
            RequestRetrieveInvestmentListExample6:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample6'
            RequestRetrieveInvestmentListExample7:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample7'
            RequestRetrieveInvestmentListExample8:
              $ref: '#/components/examples/RequestRetrieveInvestmentListExample8'
  schemas:
    InputInvestment:
      required:
      - id
      type: object
      properties:
        id:
          minLength: 1
          type: string
          description: Investment to query. Accepts performance IDs, ISINs, security IDs, CUSIPs, trading symbols, and Morningstar IDs.
          examples:
          - 0P00000046
          - US0042391096
        idType:
          type: string
          description: Identifier type.
          default: performanceId
          nullable: true
          enum:
          - performanceId
          - isin
          - fundCode
          - securityId
          - cusip
          - msid
          - tradingSymbol
        baseCurrency:
          type: string
          description: Input base currency used to look up Investment identifier
          nullable: true
          examples:
          - USD
          - JPY
        domicile:
          type: string
          description: Domicile used to look up investment. Accepts 3-character ISO 3166-1 country codes.
          nullable: true
          examples:
          - USA
          - JPN
        exchangeCountry:
          type: string
          description: Exchange country used to look up investment. Accepts 3-character ISO 3166-1 country codes.
          nullable: true
          examples:
          - USA
          - JPN
        exchangeId:
          type: string
          description: Exchange identifier used to look up investment.
          nullable: true
          examples:
          - EX$$$$XNAS
          - EX$$$$XLON
          externalDocs:
            description: List of exchange IDs.
            url: https://developer.morningstar.com/content/hidden-from-navigation/DwsIdLookUpExchangeIds.xlsx
      additionalProperties: false
      description: Investment to query. Investment look up is supported.
    OutputErrorDetails:
      type: object
      properties:
        statusCode:
          type: integer
          description: Status Code
          format: int32
        errorCode:
          type: string
          description: Custom error code
          nullable: true
        message:
          type: string
          description: Message
          nullable: true
        requestId:
          type: string
          description: RequestId
          nullable: true
      additionalProperties: false
      description: Error details
    InputSort:
      type: object
      properties:
        dataPoint:
          type: string
          nullable: true
        orderBy:
          type: string
          nullable: true
      additionalProperties: false
    OutputMetadataMessages:
      description: Provides information about identifiers for which no results were returned.
      title: OutputMetadataMessages
      type: object
      properties:
        investments:
          type: array
          items:
            $ref: '#/components/schemas/OutputInvalidInvestments'
        type:
          type: string
          description: Indicates the message type.
          example: Warning
          readOnly: true
          enum:
          - Warning
        code:
          type: string
          description: Code associated with the message.
          example: 404.common.125
          readOnly: true
        message:
          type: string
          description: Description of the issue encountered.
          example: 'Lookup : Invalid investments.'
          readOnly: true
      additionalProperties: false
    RequestRetrieveInvestmentList:
      type: object
      properties:
        datapoints:
          type: array
          items:
            type: string
            maxItems: 50
          description: Lists data points to return. Retrieve valid values programmatically via `GET /direct-web-services/v1/investment-list/data-points`, or browse the full reference in the data dictionary.
          nullable: true
          examples:
          - - companyInformation.cik
            - companyInformation.legalName
            - companyInformation.morningstarSectorCode
            - balanceSheet.totalAssetsValueFY
            - basicReference.isin
          externalDocs:
            description: Data dictionary (Excel)
            url: https://developer.morningstar.com/content/hidden-from-navigation/InvestmentListDataDictionary.xlsx
        investments:
          type: array
          items:
            $ref: '#/components/schemas/InputInvestment'
          nullable: true
          description: List of investments to query.
        sort:
          type: array
          items:
            $ref: '#/components/schemas/InputSort'
          nullable: true
        languageId:
          type: string
          description: Gets or sets the language for the investment list results.
          nullable: true
        currencyId:
          type: string
          description: Gets or sets the currency for the investment list results.
          nullable: true
      additionalProperties: false
      required:
      - datapoints
      - investments
    ResponseRetrieveInvestmentList:
      title: ResponseRetireveInvestmentList
      description: Response including results and metadata.
      type: object
      properties:
        investments:
          type: array
          items:
            $ref: '#/components/schemas/OutputInvestment'
          nullable: true
          readOnly: true
        metadata:
          $ref: '#/components/schemas/OutputMetadata'
      additionalProperties: false
    OutputInvestment:
      description: Output investment.
      type: object
      title: OutputInvestment
      required:
      - performanceId
      properties:
        performanceId:
          type: string
          alias: performanceId
          nullable: false
        aggregateSummary.openInterest:
          type: number
          format: double
          nullable: true
        aggregateSummary.tradeCount:
          type: number
          format: double
          nullable: true
        aggregateSummary.turnover:
          type: number
          format: double
          nullable: true
        aggregateSummary.vwap:
          type: number
          format: double
          nullable: true
        annualReportFeesAndFinancialsMostRecent.totalExpenseRatio:
          type: string
          nullable: true
        annualReturnsHistorical.annualRet2020:
          type: string
          nullable: true
        annualReturnsHistorical.annualRet2021:
          type: string
          nullable: true
        annualReturnsHistorical.annualRet2022:
          type: string
          nullable: true
        annualReturnsHistorical.annualRet2023:
          type: string
          nullable: true
        annualReturnsHistorical.annualRet2024:
          type: string
          nullable: true
        assetAllocationBreakdown.assetAllocBondPercNet:
          type: string
          nullable: true
        assetAllocationBreakdown.assetAllocCashPercNet:
          type: string
          nullable: true
        assetAllocationBreakdown.assetAllocEquityPercNet:
          type: string
          nullable: true
        assetAllocationBreakdown.assetAllocOtherPercNet:
          type: string
          nullable: true
        basicReference.baseCurrency:
          type: string
          nullable: true
        basicReference.countryAvailableForSale:
          type: string
          nullable: true
        basicReference.domicile:
          type: string
          nullable: true
        basicReference.firmName:
          type: string
          nullable: true
        basicReference.fundCode:
          type: string
          nullable: true
        basicReference.fundLegalName:
          type: string
          nullable: true
        basicReference.fundid:
          type: string
          nullable: true
        basicReference.inceptionDate:
          type: string
          nullable: true
        basicReference.investmentType:
          type: string
          nullable: true
        basicReference.isin:
          type: string
          nullable: true
        basicReference.name:
          type: string
          nullable: true
        basicReference.portfolioDate:
          type: string
          nullable: true
        basicReference.primaryShare:
          type: string
          nullable: true
        basicReference.shareClassType:
          type: string
          nullable: true
        basicReference.ticker:
          type: string
          nullable: true
        bestAndWorstRollingReturns.best3MoAsOfDateQtrEnd:
          type: string
          nullable: true
        bestAndWorstRollingReturns.best3MoRetInceptionQtrEnd:
          type: string
          nullable: true
        bestAndWorstRollingReturns.worst3MoAsOfDateQtrEnd:
          type: string
          nullable: true
        bestAndWorstRollingReturns.worst3MoRetInceptionQtrEnd:
          type: string
          nullable: true
        closePrice.closePrice:
          type: number
          format: double
          nullable: true
        closePrice.closePriceDatetime:
          type: string
          nullable: true
        companyGrade.growthGrade:
          type: string
          nullable: true
        companyGrade.profitabilityGrade:
          type: string
          nullable: true
        companyInformation.cik:
          type: string
          nullable: true
        companyInformation.companyId:
          type: string
          nullable: true
        companyInformation.companyStatus:
          type: string
          nullable: true
        companyInformation.domicileCountryCode:
          type: string
          nullable: true
        companyInformation.globalTemplateIndustryTemplateCode:
          type: string
          nullable: true
        companyInformation.legalNameLanguageCode:
          type: string
          nullable: true
        companyInformation.lei:
          type: string
          nullable: true
        companyInformation.morningstarIndustryCode:
          type: string
          nullable: true
        companyInformation.morningstarIndustryGroupCode:
          type: string
          nullable: true
        companyInformation.morningstarSectorCode:
          type: string
          nullable: true
        companyInformation.operationStatus:
          type: string
          nullable: true
        companyInformation.shortName:
          type: string
          nullable: true
        companyInformation.standardName:
          type: string
          nullable: true
        companyInformation.webAddress:
          type: string
          nullable: true
        countryAndRegionalExposureBreakdown.equityRegionEmergingPercLongRescaled:
          type: string
          nullable: true
        countryAndRegionalExposureBreakdown.equityRegionGreaterAsiaPercLongRescaled:
          type: string
          nullable: true
        countryAndRegionalExposureBreakdown.equityRegionGreaterEuropePercLongRescaled:
          type: string
          nullable: true
        countryAndRegionalExposureBreakdown.equityRegionUnitedStatesPercLongRescaled:
          type: string
          nullable: true
        dailyDividendResidualRiskAndReturnSensitivity.beta1260Day:
          type: string
          nullable: true
        dailyReturnsMostRecent.returnDateDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRet1DayDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRet1MoDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRet1WkDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRet1YrDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRet3MoDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRet6MoDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRetAnnlzd10YrDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRetAnnlzd3YrDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRetAnnlzd5YrDaily:
          type: string
          nullable: true
        dailyReturnsMostRecent.totalRetYtdDaily:
          type: string
          nullable: true
        dailyStandardDeviation.arithmeticMean1008Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.arithmeticMean1260Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.arithmeticMean2520Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.arithmeticMean252Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.arithmeticMean504Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.arithmeticMean756Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.dailyStandardDeviationAsOfDate:
          type: string
          nullable: true
        dailyStandardDeviation.standardDeviation1008Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.standardDeviation1260Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.standardDeviation2520Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.standardDeviation252Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.standardDeviation504Day:
          type: number
          format: double
          nullable: true
        dailyStandardDeviation.standardDeviation756Day:
          type: number
          format: double
          nullable: true
        delistInformation.delistingDate:
          type: string
          nullable: true
        derivedStatisticsFromIndexLevelsTimeSeries.averageAnnualReportNetExpenseRatio:
          type: string
          nullable: true
        derivedStatsIEMptCurrent.sharpeRatio3YrMoEnd:
          type: string
          nullable: true
        derivedStatsIEMptCurrent.stdDev3YrMoEnd:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.alpha12Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.alpha36Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.alpha60Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.beta12Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.beta36Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.beta60Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.rSquare12Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.rSquare36Month:
          type: string
          nullable: true
        dividendResidualRiskAndReturnSensitivity.rSquare60Month:
          type: string
          nullable: true
        enterpriseValueCalculations.cashReturn:
          type: string
          nullable: true
        enterpriseValueCalculations.enterpriseValue:
          type: string
          nullable: true
        enterpriseValueCalculations.enterpriseValueToEbitdaRatio:
          type: string
          nullable: true
        enterpriseValueCalculations.enterpriseValueToEbitRatio:
          type: string
          nullable: true
        enterpriseValueCalculations.enterpriseValueToFreeCashFlowRatio:
          type: string
          nullable: true
        enterpriseValueCalculations.enterpriseValueToRevenueRatio:
          type: string
          nullable: true
        enterpriseValueCalculations.totalDebtToEnterpriseValue:
          type: string
          nullable: true
        equityPortfolioStatistics.averageMarketCapMilLong:
          type: string
          nullable: true
        equityPortfolioStatistics.equityStyleFactorDivYldLong:
          type: string
          nullable: true
        equityPortfolioStatistics.numberOfHoldings:
          type: string
          nullable: true
        equityPortfolioStatistics.percAssetInTop10Holdings:
          type: string
          nullable: true
        equityPortfolioStatistics.porbRatioTtmLong:
          type: string
          nullable: true
        equityPortfolioStatistics.poreRatioTtmLong:
          type: string
          nullable: true
        equityPortfolioStatistics.roePercTtmLong:
          type: string
          nullable: true
        equityResearchRatingsMostRecent.priceOrFairValue:
          type: string
          nullable: true
        equityResearchRatingsMostRecent.stockCapitalAllocationRating:
          type: string
          nullable: true
        esgFundLevelCarbonRisk.portfolioCarbonRiskScore:
          type: string
          nullable: true
        esgFundLevelRatingsHistorical.morningstarSustainabilityRating:
          type: string
          nullable: true
        esgFundLevelRatingsHistorical.portfolioCorporateSustainabilityScore:
          type: string
          nullable: true
        esgFundLevelRatingsHistorical.portfolioEnvironmentalRiskScore:
          type: string
          nullable: true
        esgFundLevelRatingsHistorical.portfolioGovernanceRiskScore:
          type: string
          nullable: true
        esgFundLevelRatingsHistorical.portfolioSocialRiskScore:
          type: string
          nullable: true
        esgFundLevelRatingsMostRecent.sustainabilityRatingDate:
          type: string
          nullable: true
        feeLevelRanks.morningstarFeeLevelBroad:
          type: string
          nullable: true
        financialHealthGrade.financialHealthGradeValue:
          type: string
          nullable: true
        financialHealthGrade.probabilityOfDefault:
          type: string
          nullable: true
        fixedIncomePortfolioStatisticsSurveyedAnalytics.averageCreditQuality:
          type: string
          nullable: true
        fixedIncomePortfolioStatisticsSurveyedAnalytics.averageEffDurationSurvey:
          type: string
          nullable: true
        fixedIncomePortfolioStatisticsSurveyedAnalytics.averageYtmSurvey:
          type: string
          nullable: true
        fundAttributes.activelyManaged:
          type: string
          nullable: true
        fundAttributes.fundOfFunds:
          type: string
          nullable: true
        fundAttributes.indexFund:
          type: string
          nullable: true
        fundAttributes.openForInvestment:
          type: string
          nullable: true
        indexTick.indexPrice:
          type: number
          format: double
          nullable: true
        indexTick.indexPricePublicationTime:
          type: string
          nullable: true
        instrumentIdentifiers.exchangeTickerSymbol:
          type: string
          nullable: true
        instrumentIdentifiers.isin:
          type: string
          nullable: true
        instrumentIdentifiers.localCode:
          type: string
          nullable: true
        instrumentIdentifiers.mdCusip:
          type: string
          nullable: true
        instrumentIdentifiers_performanceId:
          type: string
          nullable: true
        instrumentIdentifiers.sedol:
          type: string
          nullable: true
        instrumentIdentifiers.vendorTickerSymbol:
          type: string
          nullable: true
        investmentBasicDetails.advisor:
          type: string
          nullable: true
        investmentBasicDetails.distributor:
          type: string
          nullable: true
        investmentBasicDetails.exchange:
          type: string
          nullable: true
        investmentBasicDetails.exchangeCountry:
          type: string
          nullable: true
        investmentBasicDetails.firmCountry:
          type: string
          nullable: true
        investmentBasicDetails.managementCompany:
          type: string
          nullable: true
        investmentBasicDetails.primaryProspectusBenchmark:
          type: string
          nullable: true
        investmentBasicDetails.primaryProspectusBenchmarkId:
          type: string
          nullable: true
        investmentBasicDetails.subadvisor:
          type: string
          nullable: true
        lastPrice.lastPrice:
          type: number
          format: double
          nullable: true
        lastPrice.lastPricePublishDatetime:
          type: string
          nullable: true
        lastPrice.lastSize:
          type: number
          format: double
          nullable: true
        managerBioAndDetailsMostRecent.managerName:
          type: string
          nullable: true
        managerBioAndDetailsMostRecent.managerTenureAverage:
          type: string
          nullable: true
        managerBioAndDetailsMostRecent.managerTenureLongest:
          type: string
          nullable: true
        marketCapital.asOfDate:
          type: string
          nullable: true
        marketCapital.companyLevelMarketCapital:
          type: string
          nullable: true
        marketCapital.currencyCode:
          type: string
          nullable: true
        marketCapital.shareLevelMarketCapital:
          type: string
          nullable: true
        marketCapitalBreakdown.marketCapGiantPercLongRescaled:
          type: string
          nullable: true
        marketCapitalBreakdown.marketCapLargePercLongRescaled:
          type: string
          nullable: true
        marketCapitalBreakdown.marketCapMidPercLongRescaled:
          type: string
          nullable: true
        marketCapitalBreakdown.marketCapSmallPercLongRescaled:
          type: string
          nullable: true
        marketReturn.asOfDate:
          type: string
          nullable: true
        marketReturn.nonDividendTotalReturnMonthToDate:
          type: number
          format: double
          nullable: true
        marketReturn.nonDividendTotalReturnOneDay:
          type: number
          format: double
          nullable: true
        marketReturn.totalGrossedUpReturnDateToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalGrossedUpReturnMonthToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalGrossedUpReturnQuarterToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalGrossedUpReturnWeekToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalGrossedUpReturnYearToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalReturnMonthToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalReturnOneDay:
          type: number
          format: double
          nullable: true
        marketReturn.totalReturnQuarterToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalReturnWeekToDate:
          type: number
          format: double
          nullable: true
        marketReturn.totalReturnYearToDate:
          type: number
          format: double
          nullable: true
        metadata.priceFrequencyFlag:
          type: string
          nullable: true
        midPrice.midPrice:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.asOfDate:
          type: string
          nullable: true
        monthEndReturnStatistics.best3MonthTotalReturnOverPast120Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.best3MonthTotalReturnOverPast12Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.best3MonthTotalReturnOverPast36Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.best3MonthTotalReturnOverPast60Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.worst3MonthTotalReturnOverPast120Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.worst3MonthTotalReturnOverPast12Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.worst3MonthTotalReturnOverPast36Months:
          type: number
          format: double
          nullable: true
        monthEndReturnStatistics.worst3MonthTotalReturnOverPast60Months:
          type: number
          format: double
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.returnDateMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRet1MoMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRet1YrMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRet1YrQtrEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRet3MoMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRet6MoMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetAnnlzd10YrMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetAnnlzd10YrQtrEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetAnnlzd3YrMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetAnnlzd3YrQtrEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetAnnlzd5YrMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetAnnlzd5YrQtrEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetInceptionMoEnd:
          type: string
          nullable: true
        monthEndTrailingPerformanceMonthEndAndQuarterEndMostRecent.totalRetYtdMoEnd:
          type: string
          nullable: true
        monthlyStandardDeviation.arithmeticMean120Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.arithmeticMean12Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.arithmeticMean24Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.arithmeticMean36Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.arithmeticMean48Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.arithmeticMean60Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.asOfDate:
          type: string
          nullable: true
        monthlyStandardDeviation.standardDeviation120Month:
          type: string
          nullable: true
        monthlyStandardDeviation.standardDeviation12Month:
          type: string
          nullable: true
        monthlyStandardDeviation.standardDeviation24Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.standardDeviation36Month:
          type: string
          nullable: true
        monthlyStandardDeviation.standardDeviation48Month:
          type: number
          format: double
          nullable: true
        monthlyStandardDeviation.standardDeviation60Month:
          type: string
          nullable: true
        morningstarCategory.globalBroadCategoryGroup:
          type: string
          nullable: true
        morningstarCategory.globalCategory:
          type: string
          nullable: true
        morningstarCategory.morningstarCategoryId:
          type: string
          nullable: true
        morningstarEquitySectorsBreakdown.equityEconSectorConsumerCyclicalPercLongRescaled:
          type: string
          nullable: true
        morningstarEquitySectorsBreakdown.equityEconSectorConsumerDefensivePercLongRescaled:
          type: string
          nullable: true
        morningstarEquitySectorsBreakdown.equityEconSectorEnergyPercLongRescaled:
          type: string
          nullable: true
        morningstarEquitySectorsBreakdown.equityEconSectorFinancialServicesPercLongRescaled:
          type: string
          nullable: true
        morningstarEquitySectorsBreakdown.equityEconSectorHealthcarePercLongRescaled:
          type: string
          nullable: true
        morningstarEquitySectorsBreakdown.equityEconSectorTechnologyPercLongRescaled:
          type: string
          nullable: true
        morningstarMedalistRatingMostRecent.morningstarMedalistRating:
          type: string
          nullable: true
        morningstarMedalistRatingMostRecent.morningstarMedalistRatingDate:
          type: string
          nullable: true
        morningstarMedalistRatingMostRecent.morningstarMedalistRatingParentPillar:
          type: string
          nullable: true
        morningstarMedalistRatingMostRecent.morningstarMedalistRatingPeoplePillar:
          type: string
          nullable: true
        morningstarMedalistRatingMostRecent.morningstarMedalist

# --- truncated at 32 KB (85 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/morningstar/refs/heads/main/openapi/morningstar-investment-list-api-openapi.yml