openapi: 3.0.1
info:
version: 1.0.0
title: Authorization Tokens Accounts Reports 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: Reports
paths:
/v1/reports/risks/{id}:
get:
tags:
- Reports
summary: Get a risk tolerance report in JSON format
description: Get a client's risk tolerance report in JSON format.
operationId: getRiskReportJson
parameters:
- name: Accept-Language
in: header
description: Specifies the locale.
required: true
schema:
type: string
enum:
- en-US
- en-CA
- en-AU
- en-GB
- en-IN
- fr-CA
example: en-US
- name: X-API-RequestId
in: header
description: Initial request identifier
schema:
type: string
- name: id
in: path
description: Unique identifier of response to query
required: true
schema:
type: string
- name: clientId
in: query
description: Unique identifier of a client
required: true
schema:
type: string
- name: ignoreSections
in: query
example:
- YOUR_DIFFERENCES
- FOOTNOTES
description: "Determines the sections NOT to include in the report.If not specified, all the sections will be included. Multiple valuses must be comma-separated. Accepted values are:\n\n * `RISK_TOLERANCE`\n * `USING_YOUR_PROFILE`\n * `RISK_TOLERANCE_SCORE`\n * `RISK_GROUP`\n * `YOUR_DIFFERENCES`\n * `FOOTNOTES`\n"
schema:
type: array
items:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportResponsePayload'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse400'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse404'
'500':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse500'
'502':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse502'
/v2/reports/risks:
get:
tags:
- Reports
summary: Get a client's most recent risk tolerance report
description: "Get a client’s risk tolerance report based on the most recently submitted responses to the risk tolerance questionnaire. The report includes sections on:\n\n\n * Risk tolerance score\n * Risk group\n * Differences\n * How to use the report\n * Footnotes\n\nIn the `ignoreSections` parameter, specify any sections you do not want returned in the response.\n"
operationId: getRiskReports
parameters:
- name: Accept-Language
in: header
description: Specifies the locale.
required: true
schema:
type: string
enum:
- en-US
- en-CA
- en-AU
- en-GB
- en-IN
- fr-CA
example: en-US
- name: X-API-RequestId
in: header
description: Initial request identifier
schema:
type: string
- name: clientId
in: query
description: Unique identifier of a client
required: true
schema:
type: string
- name: rtqType
in: query
description: 'Questionnaire type identifier.
- `FM10S30` - 10 questions
- `FM25V30`- 25 questions
'
required: false
schema:
type: string
enum:
- FM10S30
- FM25V30
- name: disclosureType
in: query
description: 'Indicates if disclosure is needed.
- `1` - Include disclosure.
- `2` - Do not include disclosure.
'
required: false
schema:
type: integer
enum:
- 1
- 2
- name: ignoreSections
in: query
example:
- YOUR_DIFFERENCES
- FOOTNOTES
description: "Determines the sections NOT to include in the report.If not specified, all the sections will be included. Multiple valuses must be comma-separated. Accepted values are:\n\n * `RISK_TOLERANCE`\n * `USING_YOUR_PROFILE`\n * `RISK_TOLERANCE_SCORE`\n * `RISK_GROUP`\n * `YOUR_DIFFERENCES`\n * `FOOTNOTES`\n"
schema:
type: array
items:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportResponsePayload'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse400'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse404'
'500':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse500'
'502':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse502'
/v2/reports/risks/{id}:
get:
tags:
- Reports
summary: Get a specific risk tolerance report for a client
description: "Get a specific response to the risk tolerance questionnaire for a client. The report includes sections on:\n\n\n * Risk tolerance score\n * Risk group\n * Differences\n * How to use the report\n * Footnotes\n\nIn the `ignoreSections` parameter, specify any sections you do not want returned in the response.\n"
operationId: getRiskReportPDF
parameters:
- name: Accept-Language
in: header
description: Specifies the locale.
required: true
schema:
type: string
enum:
- en-US
- en-CA
- en-AU
- en-GB
- en-IN
- fr-CA
example: en-US
- name: X-API-RequestId
in: header
description: Initial request identifier
schema:
type: string
- name: id
in: path
description: Unique identifier of response to query
required: true
schema:
type: string
- name: clientId
in: query
description: Unique identifier of a client
required: true
schema:
type: string
- name: rtqType
in: query
description: 'Questionnaire type identifier.
- `FM10S30` - 10 questions
- `FM25V30`- 25 questions
'
required: false
schema:
type: string
enum:
- FM10S30
- FM25V30
- name: disclosureType
in: query
description: 'Indicates if disclosure is needed.
- `1` - Include disclosure.
- `2` - Do not include disclosure.
'
required: false
schema:
type: integer
enum:
- 1
- 2
- name: ignoreSections
in: query
example:
- YOUR_DIFFERENCES
- FOOTNOTES
description: "Determines the sections NOT to include in the report.If not specified, all the sections will be included. Multiple valuses must be comma-separated. Accepted values are:\n\n * `RISK_TOLERANCE`\n * `USING_YOUR_PROFILE`\n * `RISK_TOLERANCE_SCORE`\n * `RISK_GROUP`\n * `YOUR_DIFFERENCES`\n * `FOOTNOTES`\n"
schema:
type: array
items:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ReportResponsePayload'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse400'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse404'
'500':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse500'
'502':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse502'
/report:
post:
tags:
- Reports
summary: Generate reports
description: 'Create a report for the portfolio specified in the request body. Report types include: - X-Ray- Snapshot - Hypothetical Growth - Investment Details - Stock Intersection - Disclosure To override the default value in the Accept-Language HTTP header, use the `langcult` parameter.'
operationId: PortfolioAnalysisV1_PostAsync
parameters:
- name: langcult
in: query
description: Language and locale, for example, en-US
required: false
schema:
type: string
default: en-US
- name: contentDispositionHeaderValue
in: query
description: Open PDF online or download as an attachment
required: false
schema:
type: string
default: attachment
enum:
- attachment
- inline
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisInputSettings'
text/json:
schema:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisInputSettings'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisInputSettings'
application/xml:
schema:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisInputSettings'
text/xml:
schema:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisInputSettings'
description: Object that defines the settings and portfolio(s) to use in the request.
required: true
responses:
'200':
description: Success
content:
application/pdf:
schema:
type: string
format: binary
'400':
description: Bad request
'401':
description: Unauthorized
'403':
description: Forbidden
'500':
description: Internal Server Error
deprecated: false
/reports:
get:
tags:
- Reports
summary: Get report(s) metadata
description: Get reports metadata including `reportId`. You must enter a time period for the request to query in the `period` parameter. Time period is measured in quarters: - `0` = Current quarter. For example, if today is 2021-07-31, returns reports for 2021-07-01 to 2021-09-30. - `1` = Previous quarter. For example, if today is 2021-07-31, returns reports for 2021-04-01 to 2021-06-30. - `n` = nth quarter from the current quarter. For example, `4` returns reports of the 4th quarter from the current quarter. If today is 2021-07-31, returns reports for 2020-07-01 to 2020-09-30. - `-1` = Current and previous quarter. You can limit results returned by entering a string in the `name` parameter. Only reports with that string in the report name will be returned. You can also limit the results returned by specifying values in the `bucketId` and `householdId` parameters. A value of `published` in the `published` parameter will return published files only.
**Note:** If `published` has a `published` or `unpublished` value, the bucket ID will be ignored, and the response will return reports from all buckets.
operationId: getReports
parameters:
- in: header
name: x-api-key
description: Unique API key of a client
required: true
schema:
type: string
- name: period
in: query
description: Time period for reports in quarters:
0 = Current quarter
1 = Previous quarter
n = nth quarter from the current quarter
-1 = Current and previous quarter
required: false
schema:
default: 0
type: integer
- name: name
in: query
description: Name search string
required: false
schema:
type: string
- name: bucketId
in: query
description: Unique identifier of a bucket. Default is root bucket.
required: false
schema:
type: string
format: uuid
- name: householdId
in: query
description: Unique identifier of a client
required: false
schema:
type: string
format: uuid
- name: published
in: query
description: When set to `published` returns published reports only
required: false
schema:
type: string
default: all
enum:
- all
- published
- unpublished
responses:
'200':
description: Successful operation
content:
'*/*':
schema:
$ref: '#/components/schemas/ReportList'
'400':
description: Invalid status value
/reports/{reportId}:
get:
tags:
- Reports
summary: Get a report
description: Get the report specified in the `reportId` parameter.
operationId: getReportDetails
parameters:
- in: header
name: x-api-key
description: Unique API key of a client
required: true
schema:
type: string
- name: reportId
in: path
description: Unique identifier of a report
required: true
schema:
type: string
responses:
'200':
description: Successful operation
content:
'*/*':
schema:
$ref: '#/components/schemas/ReportListSingle'
'400':
description: Invalid parameter value
'404':
description: Not found
/reports/assign:
post:
tags:
- Reports
summary: Assign report(s)
description: Assign report(s) specified in the request body to household(s) specified in the request body.You must assign a report to a household before it can be published.
operationId: assignReport
parameters:
- in: header
name: x-api-key
description: Unique API key of a client
required: true
schema:
type: string
requestBody:
description: Assign report(s) to household(s).
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AssignInput'
responses:
'200':
description: Successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Assign'
'400':
description: Invalid parameter value
'404':
description: Not found
/reports/publish:
post:
tags:
- Reports
summary: Publish or unpublish reports(s) to Client Web Portal
description: Add or remove report files from the Client Web Portal. You must assign a report to a household before it can be published.**Note:** Requests to unpublish a report that contain an identifier for a report that has not been published will fail.
operationId: publishReport
parameters:
- in: header
name: x-api-key
description: Unique API key of a client
required: true
schema:
type: string
- in: query
name: enabled
description: Set report(s) to added (true) or removed (false).
required: false
schema:
type: boolean
default: false
requestBody:
description: List of report IDs to add to/remove from Client Web Portal.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ArrayOfReportUuid'
responses:
'200':
description: Successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Publish'
'400':
description: Invalid parameter value
'404':
description: Not found
/reports/risks/{responseId}:
get:
summary: Get the content of a specific response to a questionnaire
description: Get the content of a specific response to a questionnaire, including the static text, risk tolerance responses, and footnotes. In the `ignoreSections` parameter, specify any sections you do not want returned in the response.
tags:
- Reports
operationId: getRiskReport
parameters:
- name: responseId
in: path
description: Unique identifier of a response to a questionnaire
required: true
example: 436c05d4-27b6-4a92-b7f1-5a829d55373a
schema:
type: string
- name: clientId
in: query
description: Unique identifier of a client
example: 3168dab3-4445-40c5-8295-5a816c6cd5de
required: true
schema:
type: string
- name: ignoreSections
in: query
description: Define the sections you do NOT want to include in the report. It must be a comma separated string with the specific sections to ignore in the response. If not specified, all the sections will be included.
required: false
example: RISK_TOLERANCE,USING_YOUR_PROFILE,RISK_TOLERANCE_SCORE,RISK_GROUP,YOUR_DIFFERENCES,FOOTNOTES
schema:
type: string
- name: X-API-RequestId
in: header
description: Initial request identifier
example: 436c05d4-27b6-4a92-b7f1-5a829d55373a
required: false
schema:
type: string
- name: Accept-Language
in: header
description: Indicate the locale for the request. e.g. en-US, fr-CA
required: true
schema:
type: string
enum:
- en-US
- name: Authorization
in: header
description: Bearer access token authorization
required: true
schema:
type: string
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ReportResponsePayload_2'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse400'
'404':
description: Not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse404'
'502':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse502'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse500'
/reports/data-points:
get:
summary: Extract clients data in csv format.
description: Extract client data with questionnaire answers and suitability score calculations.
tags:
- Reports
operationId: getDataPointReport
parameters:
- name: startDate
in: query
description: Date to start fetching records.
example: '20200601'
required: true
schema:
type: integer
- name: endDate
in: query
description: Date to limit fetching record.
example: '20200228'
required: true
schema:
type: integer
- name: X-API-RequestId
in: header
description: Initial request identifier
example: 436c05d4-27b6-4a92-b7f1-5a829d55373a
required: false
schema:
type: string
- name: Authorization
in: header
description: Bearer access token authorization
required: true
schema:
type: string
responses:
'200':
description: File download.
content:
application/csv:
schema:
type: string
format: binary
headers:
Content-Disposition:
description: attachment; filename=data-points-20200601-20200228.csv
schema:
type: string
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse400'
'502':
description: Internal server communication failure
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse502'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse500'
/v1/reports/{namespaces}:
get:
tags:
- Reports
summary: Generate reports in Excel format
operationId: getStatisticsReports
parameters:
- name: namespaces
description: Get statistics for a namespace or comma-separated list of namespaces
in: path
required: true
schema:
type: string
example: abco.opp.screener,abco.opp.xray
responses:
'200':
description: Excel report file containing monthly and quarterly usage stats and top security data
content:
application/vnd.ms-excel:
schema:
type: string
format: base64
example: SGVsbG8gV29ybGQ=
'401':
description: The user is not authorised to perform this operation
content:
application/json:
schema:
type: object
description: Generic error object
properties:
errorId:
type: string
format: uuid
example: 100380c0-8f94-11ea-bc55-0242ac130003
message:
type: string
example: An error occurred
'404':
description: The requested resource does not exist
content:
application/json:
schema:
type: object
description: Generic error object
properties:
errorId:
type: string
format: uuid
example: 100380c0-8f94-11ea-bc55-0242ac130003
message:
type: string
example: An error occurred
'500':
description: An unexpected error occured
content:
application/json:
schema:
type: object
description: Generic error object
properties:
errorId:
type: string
format: uuid
example: 100380c0-8f94-11ea-bc55-0242ac130003
message:
type: string
example: An error occurred
components:
schemas:
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySector:
type: object
properties:
Id:
description: Possible values are GICS, Morningstar, or Institution defined Id
type: string
Portfolio:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectorExposureItem'
Benchmark:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectorExposureItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectorExposureItemSecurity'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersection:
type: object
properties:
IncludeIndex:
type: boolean
Stock:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersectionItem'
ConcentrationRatio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersectionConcentrationRatio'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.WorldRegions:
type: object
properties:
Id:
type: string
Portfolio:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityRegionExposureItem'
Benchmark:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityRegionExposureItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityRegionExposureItemSecurity'
AssetClassPayload:
title: AssetClassPayload
type: object
properties:
label:
type: string
description: Asset label
example: US Stocks
count:
type: number
description: Asset value
example: 24
MixInvestmentsHeader:
title: MixInvestmentsHeader
type: object
properties:
portfolio:
type: string
description: Header of the column for portfolio information.
example: Portfolio
highRisk:
type: string
description: Header of the column for high risk information.
example: High Risk/Return %
mediumRisk:
type: string
description: Header of the column for medium risk information.
example: Medium Risk/Return %
lowRisk:
type: string
description: Header of the column for low risk information.
example: Low Risk/Return %
description: Mix investments header
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InvestmentStyle:
type: object
properties:
AsOfDate:
format: date-time
type: string
FixedIncomeStyle:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyle'
EquityStyle:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyle'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecurityEndingMarketValueBreakdown:
type: object
properties:
Principal:
format: double
type: number
Income:
format: double
type: number
CapGain:
format: double
type: number
Report:
type: object
required:
- id
- name
properties:
reportId:
type: string
format: uuid
example: ef11ef11-abcd-1234-0000-000000000000
storageId:
type: string
format: uuid
example: ef11ef11-abcd-1234-0000-000000000000
households:
$ref: '#/components/schemas/ArrayOfHouseholds'
name:
type: string
example: Report ABCo
accountName:
type: string
example: Brokerage
targetAdvisorId:
type: string
format: uuid
advisorName:
type: string
example: Advisor
reportLevel:
type: string
example: Client
target:
type: string
example: Brokerage
createdAt:
type: string
format: date-time
lastUpdated:
type: string
format: date-time
publishedAt:
type: string
format: date-time
example: 2019-01-02T01:59Z
fileName:
type: string
format: string
bucketId:
type: string
format: uuid
example: bb11bb11-1111-0000-0000-000000000000
reportType:
type: string
enum:
- portfolio-xray
- snapshot
- ToBeDecided
format:
type: string
example: PDF
uri:
type: string
format: domain
Morningstar.PortfolioAnalysis.Models.Output.Risk.CrossPortfolioCorrelationItemKey:
type: object
properties:
Id:
format: int32
type: integer
PortfolioName:
type: string
UseExtendedReturns:
type: boolean
Type:
enum:
- Portfolio
type: string
CorrelatedItemKey:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.CrossPortfolioCorrelatedItemKey'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyle:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyleItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyleItem'
FixedIncomeStyleBreakdown:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyleBreakdown'
Morningstar.PortfolioAnalysis.Models.Input.Hypo.HypoCalculationSettings:
description: Contains input parameters and their values used in the hypothetical calculations.
type: object
properties:
HypoType:
enum:
- Portfolio
- IndividualHoldings
- HoldingsComparison
- PortfolioComparison
type: string
FilingStatus:
description: This parameter is used to set the tax status of the portfolios to be analyzed.
enum:
- NoTaxes
- Single
- MarriedFilingJointly
- MarriedFilingSeparately
- HeadOfHousehold
- Registered
- NonRegistered
type: string
TaxableIncome:
format: double
description: This is the amount of income subject to income taxes for the year, found by subtracting the appropriate deductions (IRA contributions, alimony payments, unreimbursed business expenses, some capital losses, etc.) from adjusted gross income.
type: number
PayTaxes:
description: You can set the option to pay any taxes that are assessed either out of pocket (as if the taxpayer writes a check to pay for them) or by selling shares equal to the amount of taxes.
enum:
- OutOfPocket
- SalesOfShares
type: string
FederalIncomeTaxRate:
format: double
description: The federal income tax rate assessed on incomes from the portfolio. This would be referred to as the Income Marginal Tax Rate for Canada.
type: number
CapitalGainTaxRate:
format: double
description: A tax assessed on profits realized from the sale of a capital asset, such as stock or fund. . This would be referred to as the Capital Gains Marginal Tax Rate for Canada.
type: number
StateIncomeTaxRate:
format: double
description: State income tax rate on incomes received from the portfolio.
type: number
DividendTaxRate:
format: double
description: Dividend tax rate on dividends received from the portfolio. Canada only.
type: number
IllustrationTrailingTimePeriod:
description: This parameter determines the Illustration Time period��s start date and end date of the hypothetical illustration. Please be sure that start date and end date are set in accordance to the Illustration Time period value selected before sending the request to the Portfolio Analysis API.
enum:
- YearToDate
- Year1
- Year3
- Year5
- Year10
- SinceInception
- EarliestAvailable
- EarliestCommon
- Customized
type: string
StartDate:
format: date-time
description: Illustration Time period start date the Hypothetical illustration will be run.
type: string
EndDate:
format: date-time
description: Illustration Time period end date the Hypothetical illustration will be run.
type: string
SynchronizePortfolioStartDate:
description: This will override the IllustrationTrailingTimePeriod to the EarliestCommon across all input portfolios.
type: boolean
InvestmentDetailReturnsFrequency:
description: 'TODO: can this have a value of None? NO'
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
LiquidateOnEndDate:
description: "When this is set to true, holdings are sold at month-end NAV/price and taxes will be applied.\r\n Note: This affects total returns because taxes are calculated based on the final market value of your investments and the tax rates specified in the Taxes section."
type: boolean
SubsequentInvestmentType:
enum:
- Invest
- Withdrawal
- WithdrawalPercentage
type: string
SubsequentInvestmentAmount:
format: double
description: This is the amount for the subsequent investment or withdrawal. It is invested or removed on a regular basis, according to SubsequentInvestmentWithdrawalFrequency value.
type: number
SubsequentInvestmentWithdrawalFrequency:
description: "This parameter informs the Portfolio Analysis API how frequently to apply the subsequent investment or withdrawal, for example, if the frequency is quarterly, the subsequent amount will be applied every quarter after the initial investments. \r\n Note: subsequent amount is applied on the first month end in the frequency period. Also, None is not a valid value"
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
AssetBasedAnnualFee:
format: double
description: This parameter specifies the amount of the fee as a percentage. For example, if you want to apply a 1% fee, set this parameter to 1.00. For Australian Hypo this can be set as a dollar amount as well, depending on the Annual Fees Type.
type: number
AssetFeeFrequency:
description: "TODO: can this have a value of None? NO\r\n This parameter specifies how often the asset based fees are to be applied. Asset-based fees are deducted as a percentage."
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
AssetFeeType:
description: This parameter specifies the type of the annual fee amount as a percentage, or as a dollar amount. For example, if you want to apply a 1% fee, set this parameter to %. This option is available only in Australian Hypo.
enum:
- Amount
- Percentage
type: string
PayFees:
description: This parameter can be set to the option to pay any asset-based fees that are assessed either out of pocket (as if the client writes a check to pay for them), or by selling shares equal to the amount of the fees.
enum:
- OutOfPocketBeginning
- OutOfPocketEnding
- SalesOfSharesBeginning
- SalesOfSharesEnding
type: string
PayFeesUseCashFirst:
description: This parameter is applicable to Portfolio Illustrations only. If Pay Fees parameter is set to sale of shares, then this parameter can be set to true to specify that the application tap cash equivalents first before selling shares in the other securities on which annual fees are applied.
type: boolean
PortfolioAmountFee:
format: double
description: This parameter specifies the portfolio amount fee charged annually
type: number
FrontLoadType:
description: This parameter specifies what sales fees are deducted from an investment upon purchase or sale.
enum:
- Standard
- Custom
- LetterOfIntent
- None
- CustomEntry
- CustomExit
type: string
CustomFeeType:
description: "TODO: Optional, and only affects FrontLoadType=Custom\r\n If Apply Fee Schedule parameter is set to Custom, this parameter specifies what type the value in custom fee parameter is, percentage or money amount."
enum:
- Amount
- Percentage
type: string
SalesFeeAmount:
format: double
description: If Apply Fee Schedule parameter is set to Custom, this parameter specifies the amount of the custom fee.
type: number
ApplySalesCharge:
description: For funds, deferred or redemption fees are applied to charge a fee to the investor upon redeeming shares. Deferred fees apply for most withdrawals, and redemption fees are deducted when you choose to liquidate the investment. Set this parameter to false if you do not want the standard deferred or redemption fees to be applied.
type: boolean
ApplyFeeForRebalance:
description: Rebalance results in at least one sale and at least one buy. The sale may involve a fund that has a back-end charge and the buy may involve a fund that has a front-end charge. Any front-end charge that would normally be applied for the bought fund will be applied when this parameter is set to true. For example, if standard schedule is selected, the tool will apply whatever front-end charges would be applied for a buy on that schedule. On a sale, back-end charges that would normally be applied using the standard back-end schedule would be applied. If a custom schedule is selected, the tool will apply the custom % entered in the Custom Fees parameter as the same load as the fund. If this parameter is set to false, neither a front-end nor back-end charge for buys/sells due to rebalancing will be applied.
type: boolean
EntryExitFeeType:
description: This parameter is applicable to Australian Hypo only.
enum:
- CustomEntry
- CustomExit
- None
type: string
RebalanceFrequency:
description: This parameter specifies how often to rebalance your portfolio.
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- Biennially
- None
type: string
RebalanceThreshold:
format: double
description: This parameter specifies a rebalance threshold that must be reached before the holdings are rebalanced. For example, if set it to 5, rebalancing will only take place if the allocation increases or decreases from the original setting by 5% or more for at least one security in the portfolio.
type: number
ReinvestDividends:
description: "Set it to true to reinvest dividends and income distributions, or set it to false to not reinvest dividends and income distributions.\r\n For Australian Hypo,either set both ReinvestDividends and ReinvestCapitalGains to true, or both to false."
type: boolean
ReinvestCapitalGains:
description: "Set it to true to reinvest capital gains distributions, or set it to false to not reinvest capital gains distributions.\r\n For Australian Hypo,either set both ReinvestDividends and ReinvestCapitalGains to true, or both to false.\r\n Note: If you choose not to reinvest, you may notice the Total Reinvestment, Taxes Paid, and Final Market Value of your portfolio decrease because you own fewer shares."
type: boolean
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectorExposureItemSecurity:
type: object
properties:
SecurityId:
type: string
Sector:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectorExposureItem'
Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.EquityType_:
type: object
properties:
Id:
enum:
- AggressiveGrowth
- ClassicGrowth
- Cyclical
- Distressed
- HardAsset
- HighYield
- NotAvailable
- SlowGrowth
- SpeculativeGrowth
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdownItemSecurity:
type: object
properties:
SecurityId:
type: string
EquityStyleBreakdownItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdownItem'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.HoldingsItem:
type: object
properties:
AsOfDate:
format: date-time
type: string
TopNetUnderlyingHoldings:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.TopNetUnderlyingHoldings'
PortfolioHoldings:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.PortfolioHoldings'
StockIntersection:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersection'
OptionReport:
title: OptionReport
type: object
properties:
text:
type: string
description: Option text
example: Extremely low risk taker.
displayOrder:
type: integer
description: Question display order
example: 1
selected:
type: boolean
description: True if the option was selected in stored responses
example: false
description: Option for report.
Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentAssumptionSecurityItem:
type: object
properties:
Sequence:
format: int32
type: integer
SecurityId:
type: string
AnnualFee:
format: double
type: number
AnnualFeeType:
enum:
- Amount
- Percentage
type: string
AnnualFeeFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
DeferredLoadPercent:
description: values can be "0-0"
type: string
EndingMarketValue:
format: double
type: number
FrontLoad:
format: double
type: number
HoldingPeriodEndDate:
format: date-time
type: string
HoldingPeriodStartDate:
format: date-time
type: string
InitialInvestment:
format: double
type: number
Liquidate:
description: 'TODO: need to confirm this type'
type: boolean
RebalancePercent:
format: double
description: values can be "2004-06-29 - 2015-04-30"
type: number
ReinvestDistributionsCapGains:
description: need to confirm this type
type: boolean
ReinvestDistributionsIncome:
description: need to confirm this type
type: boolean
SubsequentInvestmentWithdrawalAmount:
format: double
type: number
SubsequentInvestmentWithdrawalFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
type: string
EntryExitFeeAmount:
format: double
type: number
EntryExitFeeAmountType:
enum:
- Amount
- Percentage
type: string
EntryExitFeeType:
enum:
- CustomEntry
- CustomExit
- None
type: string
TotalReturnPercent:
format: double
type: number
PeriodYears:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.BenchmarkInput:
type: object
properties:
Type:
enum:
- Standard
- AutoAsset
- AutoCategory
- Custom
type: string
Holdings:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.BenchmarkInputHolding'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersectionItemSource:
type: object
properties:
SecurityId:
type: string
CUSIP:
type: string
FundPortfolioDate:
format: date-time
type: string
PercentOfInvestments:
format: double
type: number
MarketValue:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatiosItem:
type: object
properties:
PriceBook:
format: double
type: number
PriceCashFlow:
format: double
type: number
PriceEarnings:
format: double
type: number
PriceSales:
format: double
type: number
RiskGroupPayload_2:
type: object
title: RiskGroupPayload
description: Payload with risk group information containing a representation of a portfolio's table
properties:
title:
type: string
description: Title of the mix investments table
example: Mix of Investments in Portfolio
header:
$ref: '#/components/schemas/MixInvestmentsHeader_2'
mixInvestmentsPortfolio:
type: array
items:
$ref: '#/components/schemas/InvestmentPortfolio_2'
example:
- portfolio: Portfolio 1
highRisk: 0
mediumRisk: 0
lowRisk: 100
- portfolio: Portfolio 2
highRisk: 0
mediumRisk: 30
lowRisk: 70
riskGroupCategories:
type: array
items:
$ref: '#/components/schemas/RiskGroupCategory'
example:
- code: FINANCIAL_DECISIONS
label: Making Financial Decisions
questionDifferences:
- questionId: FM25-10
message: You are prepared to take only a small degree of risk with your financial decisions.
Morningstar.PortfolioAnalysis.Models.Input.XRay.WorldRegionGroupConfig:
type: object
properties:
Id:
type: string
QuickPortInputId:
type: string
WorldRegionConfig:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.WorldRegionConfig'
AssetClassPayload_2:
type: object
title: AssetClassPayload
properties:
label:
type: string
description: Asset label
example: US Stocks
count:
type: number
description: Asset value
example: 24
category:
type: string
description: Asset category
example: Bond
Morningstar.PortfolioAnalysis.Models.Output.Performance.IllustrationReturnSecurityItem:
type: object
properties:
Sequence:
format: int32
description: 'TODO: is this needed?'
type: integer
InceptionDate:
format: date-time
type: string
SecurityId:
type: string
Date:
format: date-time
description: 'TODO: Is this field needed?'
type: string
HoldingValue:
format: double
type: number
Percent:
format: double
description: 'TODO: Should this be named Percent or Weight?'
type: number
TimePeriods:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.IllustrationReturnTimePeriod_'
Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.TimePeriod_:
type: object
properties:
Id:
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatisticsItem:
type: object
properties:
Mean:
format: double
type: number
SharpeRatio:
format: double
type: number
StandardDeviation:
format: double
type: number
InformationRatio:
format: double
type: number
TrackingError:
format: double
type: number
SortinoRatio:
format: double
type: number
ExcessReturn:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedAndTaxAdjustedReturnsSecurity:
type: object
properties:
Sequence:
format: int32
type: integer
SecurityId:
type: string
StandardizedReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedReturns'
AfterTaxReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.AfterTaxReturns'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummary:
type: object
properties:
AsOfDate:
format: date-time
type: string
PlanningAssumptions:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PlanningAssumptions'
PortfolioSummaryPerformance:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryPerformance'
InvestmentDetails:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentDetails'
PortfolioSummaryChart:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryChart'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritySummaryItem:
type: object
properties:
SecurityId:
type: string
StartDate:
format: date-time
description: Based on IllustrationTrailingTimePeriod
type: string
EndDate:
format: date-time
description: Based on IllustrationTrailingTimePeriod
type: string
InitialInvestment:
format: double
type: number
SubsequentInvestmentWithdrawalAmount:
format: double
type: number
SubsequentInvestmentWithdrawalFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
type: string
ReinvestDistributionsIncome:
type: boolean
ReinvestDistributionsCapGains:
type: boolean
Liquidate:
type: boolean
RebalanceFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- Biennially
- None
type: string
FrontLoad:
format: double
type: number
AnnualFee:
format: double
type: number
DeferredLoadAmount:
description: current value in format of "0-0"
type: string
EndMarketValue:
format: double
type: number
PeriodYears:
format: double
type: number
HistoricalMonthEndPerformance:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
InvestmentDetails:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecurityInvestmentDetails'
SecuritySummaryPerformance:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritySummaryPerformance'
SecurityEndingMarketValueBreakdown:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecurityEndingMarketValueBreakdown'
PlanningAssumptions:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PlanningAssumptions'
EntryExitFeeAmount:
format: double
type: number
EntryExitFeeAmountType:
enum:
- Amount
- Percentage
type: string
EntryExitFeeType:
enum:
- CustomEntry
- CustomExit
- None
type: string
BenchmarkPerformance:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.BenchmarkPerformance'
NetAmountInvested:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Principal:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Income:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
CapGain:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.ProfitabilityItem:
type: object
properties:
DebtCapital:
format: double
type: number
NetMargin:
format: double
type: number
ROA:
format: double
type: number
ROE:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectors:
type: object
properties:
EquitySector:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySector'
Morningstar.PortfolioAnalysis.Models.Output.Performance.CalendarYearReturn:
type: object
properties:
CalendarYear:
description: 1-10 to represent 10 most recent calendar years
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.Int32_'
Morningstar.PortfolioAnalysis.Models.Input.Report.CoverPage:
type: object
properties:
ReportTitle:
type: string
PreparedFor:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.PreparedFor'
PreparedBy:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.PreparedBy'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.ReturnDataItem:
type: object
properties:
Id:
format: int32
type: integer
Date:
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.Report.RiskToleranceQuestionnaire:
type: object
properties:
Sections:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.QuestionnaireSection'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityRegionExposureItem:
type: object
properties:
Id:
description: Parent/Rollup
type: string
Value:
format: double
type: number
ExposureItem:
description: Children of a grouping. Can't use enum because they can be client specific and have different classifications (Morningstar, Institution specific)
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
ArrayOfPublishB:
type: array
items:
$ref: '#/components/schemas/PublishB'
ArrayOfHouseholdUuid:
type: array
items:
type: string
format: uuid
example: cd11cd11-cdef-5678-0000-000000000000
Morningstar.PortfolioAnalysis.Models.Output.PerformanceDate:
type: object
properties:
EarliestCommonDate:
format: date-time
type: string
EarliestAvailableDate:
format: date-time
type: string
EarliestInceptionDate:
format: date-time
type: string
Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistory:
type: object
properties:
Type:
enum:
- Difference
type: string
Frequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
type: string
StartDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistoryItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistoryItem'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyleBreakdown:
type: object
properties:
AsOfDate:
format: date-time
type: string
HighLtd:
format: double
type: number
HighMod:
format: double
type: number
HighExt:
format: double
type: number
MedLtd:
format: double
type: number
MedMod:
format: double
type: number
MedExt:
format: double
type: number
LowLtd:
format: double
type: number
LowMod:
format: double
type: number
LowExt:
format: double
type: number
Unclassified:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.SecurityItem:
type: object
properties:
SecurityId:
type: string
CUSIP:
type: string
Name:
type: string
TradingSymbol:
type: string
BaseCurrency:
enum:
- MultipleCurrencies
- AED
- AFN
- ALL
- AMD
- ANG
- AOA
- ARS
- AUD
- AWG
- AZN
- BAM
- BBD
- BDT
- BGN
- BHD
- BIF
- BMD
- BND
- BOB
- BOV
- BRL
- BSD
- BTN
- BWP
- BYR
- BZD
- CAD
- CDF
- CHE
- CHF
- CHW
- CLF
- CLP
- CNY
- COP
- COU
- CRC
- CUP
- CVE
- CZK
- DJF
- DKK
- DOP
- DZD
- EEK
- EGP
- ERN
- ETB
- EUR
- FJD
- FKP
- GBP
- GEL
- GHC
- GIP
- GMD
- GNF
- GTQ
- GYD
- HKD
- HNL
- HRK
- HTG
- HUF
- IDR
- ILS
- INR
- IQD
- IRR
- ISK
- JMD
- JOD
- JPY
- KES
- KGS
- KHR
- KMF
- KPW
- KRW
- KWD
- KYD
- KZT
- LAK
- LBP
- LKR
- LRD
- LSL
- LTL
- LVL
- LYD
- MAD
- MDL
- MGA
- MKD
- MMK
- MNT
- MOP
- MRO
- MUR
- MVR
- MWK
- MXN
- MXV
- MYR
- MZN
- NAD
- NGN
- NIO
- NOK
- NPR
- NZD
- OMR
- PAB
- PEN
- PGK
- PHP
- PKR
- PLN
- PYG
- QAR
- ROL
- RON
- RSD
- RUB
- RWF
- SAR
- SBD
- SCR
- SDD
- SEK
- SGD
- SHP
- SLL
- SOS
- SRD
- STD
- SYP
- SZL
- THB
- TJS
- TMT
- TND
- TOP
- TRY
- TTD
- TWD
- TZS
- UAH
- UGX
- USD
- USN
- USS
- UYU
- UZS
- VEF
- VND
- VUV
- WST
- XAF
- XAG
- XAU
- XBA
- XBB
- XBC
- XBD
- XCD
- XDR
- XFO
- XFU
- XOF
- XPD
- XPF
- XPT
- YER
- ZAR
- ZMK
- ZWR
type: string
Type:
enum:
- BD
- CT
- CA
- CASH
- EI
- FC
- FE
- FM
- FO
- FI
- FV
- SA
- ST
- VA
- V1
- XI
- SP
type: string
InceptionDate:
format: date-time
type: string
SecurityReferenceTypes:
type: array
items:
enum:
- PortfolioHolding
- BenchmarkHolding
- RiskFreeIndex
- DisclosureIndex
- TopNetUnderlyingHolding
- StockIntersection
- InvalidSecurity
type: string
DifferencePayload_2:
type: object
title: DifferencePayload
properties:
group:
type: string
description: Question risk group column by key difference map. (VERY_LOW, LOW, AVERAGE, HIGH, VERY_HIGH)
example: VERY_LOW
type:
type: string
description: Difference type. (STANDARD, RISKIER, LESS_RISKY)
example: STANDARD
value:
type: integer
description: Difference value from key difference map.
example: '-1'
text:
type: string
description: Text that describe if the question is riskier or less risky than the Very High/Very Low risk group.
example: Your answer was actually riskier than the most risky typically given by those in risk group.
category:
type: string
description: Category of the question. (FINANCIAL_DECISIONS, EMPLOYMENT, FINANCIAL_DISAPPOINTMENTS, FINANCIAL_PAST, INVESTMENT, GOVERNMENT_BENEFITS_TAXES)
example: FINANCIAL_DECISIONS
SectionPayload_2:
type: object
title: SectionPayload
description: Section that contains id, header, array of paragraphs that are going to be part of the report
properties:
header:
type: string
description: header of the section
example: About Risk Tolerance
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport_2'
Morningstar.PortfolioAnalysis.Models.Input.AssetClassGroupConfigs:
type: object
properties:
AssetClassGroupConfig:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.AssetClassGroupConfig'
Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturnsItem:
type: object
properties:
StartYear:
format: int32
type: integer
StartMonth:
format: int32
maximum: 12
minimum: 1
type: integer
Data:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.MedianReturn:
type: object
properties:
ReturnData:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.ReturnDataItem'
Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedReturns:
type: object
properties:
GrossExpenseRatio:
format: double
type: number
InceptionDate:
format: date-time
type: string
MaxBackLoad:
format: double
type: number
MaxFrontLoad:
format: double
type: number
NetExpenseRatio:
format: double
type: number
ManagementExpenseRatio:
format: double
type: number
TurnoverRatio:
format: double
type: number
TurnoverRatioDate:
format: date-time
type: string
Day7YieldUnsubsized:
format: double
type: number
Day7YieldSubsidized:
format: double
type: number
Month12Yield:
format: double
type: number
TimePeriod:
description: Year1,Year3,Year5,Year10,SinceInception only supported
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedReturnsTimePeriodItem'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.Profitability:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.ProfitabilityItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.ProfitabilityItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.ProfitabilityItemSecurity'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleItemSecurity:
type: object
properties:
SecurityId:
type: string
EquityStyleItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleItem'
RiskGroupLabel_2:
type: object
title: RiskGroupLabel
properties:
groupName:
type: string
description: Name of the risk group
example: Average
range:
type: string
description: Range of the score within the risk group
example: 45-54
Morningstar.PortfolioAnalysis.Models.Output.XRay.XRays:
type: object
properties:
XRay:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.XRay'
SecurityReference:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.SecurityItem'
SectionSuitabilityScorePayload:
title: SectionSuitabilityScorePayload
type: object
properties:
header:
type: string
description: Header of the section
example: Portfolio Suitability
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport'
payloadSuitabilityScore:
$ref: '#/components/schemas/SuitabilityScorePayload'
description: Section for suitability score
Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.PortfolioStatisticsSummary:
type: object
properties:
PortfolioValue:
format: double
type: number
Currency:
description: Ignore value in the view definition. This will be set correctly as part of the response.
enum:
- AUD
- CAD
- CNY
- EUR
- GBP
- INR
- JPY
- USD
type: string
PortfolioDate:
format: date-time
type: string
EquityCount:
format: int32
type: integer
FixedIncomeCount:
format: int32
type: integer
PortfolioYield:
description: Currently only support PortfolioYield12Month
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.PortfolioYieldTrailingTimePeriod_'
ErrorResponse404:
title: ErrorResponse
type: object
properties:
message:
type: string
description: Error Message
example: Server can't find the requested resource
status:
type: string
description: Error Status
example: NOT_FOUND
timestamp:
type: string
description: Error Timestamp
example: 2020-08-05T13:40:25+0000
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecurityInvestmentDetails:
type: object
properties:
SecurityDetails:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentDetailsItem'
ArrayOfHouseholds:
type: array
items:
$ref: '#/components/schemas/Households'
Morningstar.PortfolioAnalysis.Models.Input.Performance.PerformanceConfig:
type: object
properties:
Id:
description: this will look up the configuration settings
type: string
ReturnMethodology:
enum:
- QuickPortfolio
- Hypothetical
type: string
Morningstar.PortfolioAnalysis.Models.Output.Performance.BestWorstTimePeriods:
type: object
properties:
AsOfDate:
format: date-time
type: string
BestTimePeriod:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.BestWorstTimePeriod'
WorstTimePeriod:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.BestWorstTimePeriod'
Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturns:
type: object
properties:
RollingReturn:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturn'
RiskGroupCategory:
type: object
title: RiskGroupCategory
properties:
code:
type: string
description: Category of the question. (FINANCIAL_DECISIONS, EMPLOYMENT, FINANCIAL_DISAPPOINTMENTS, FINANCIAL_PAST, INVESTMENT, GOVERNMENT_BENEFITS_TAXES)
example: FINANCIAL_DECISIONS
label:
type: string
description: Category description
example: Making Financial Decisions
questionDifferences:
type: array
description: List of question differences
items:
$ref: '#/components/schemas/QuestionDifference'
Morningstar.PortfolioAnalysis.Models.Output.PortfolioBenchmarkHolding:
type: object
properties:
SecurityId:
type: string
Weight:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.AssetClassConfig:
type: object
properties:
Id:
type: string
Name:
type: string
Color:
type: string
BorderColor:
type: string
Index:
type: string
Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.FundStatistics:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.FundStatisticsItem'
Morningstar.PortfolioAnalysis.Models.Output.Risk.CorrelatedItemKey:
type: object
properties:
CorrelatedItemKeyId:
format: int32
type: integer
Type:
description: 'TODO: we don''t want to manage names. Should this just be called CorrelationItemType?'
enum:
- Portfolio
- Security
type: string
Value:
format: double
type: number
SectionSuitabilityScorePayload_2:
type: object
title: SectionSuitabilityScorePayload
description: Section for suitability score
properties:
header:
type: string
description: header of the section
example: Portfolio Suitability
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport_2'
payloadSuitabilityScore:
$ref: '#/components/schemas/SuitabilityScorePayload_2'
Morningstar.PortfolioAnalysis.Models.Output.Performance.TrailingReturnsItem:
type: object
properties:
TimePeriod:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.TrailingTimePeriod_'
Morningstar.PortfolioAnalysis.Models.Output.Performance.NonStdLoadAdjustedReturnsSecurity:
type: object
properties:
Sequence:
format: int32
type: integer
SecurityId:
type: string
HoldingDate:
format: date-time
type: string
HoldingValue:
format: double
type: number
Day7Yield:
format: double
type: number
TimePeriod:
description: Year1,Year3,Year5,Year10 only supported
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.TimePeriod_'
Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatistics:
type: object
properties:
AsOfDate:
format: date-time
type: string
TrailingTimePeriod:
description: Only Year1, Year3, Year5, Year10 supported
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
DataFrequency:
description: Only Monthly, Quarterly supported
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatisticsItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatisticsItem'
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatisticsSecurityItem'
SectionRiskToleranceScorePayload_2:
type: object
title: SectionRiskToleranceScorePayload
description: Section with risk tolerance score information
properties:
header:
type: string
description: header of the section
example: Here’s how you scored compared to other investors.
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport_2'
payloadComparedToInvestors:
$ref: '#/components/schemas/ComparedToInvestorsPayload_2'
Morningstar.PortfolioAnalysis.Models.Output.Performance.Performance:
type: object
properties:
PortfolioName:
type: string
PerformanceDate:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.PerformanceDate'
ReturnMethodology:
enum:
- QuickPortfolio
- Hypothetical
type: string
Returns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.Returns'
Risks:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.Risks'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetAllocationSecurity:
type: object
properties:
SecurityId:
type: string
AssetClass:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetClassItem'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryChart:
type: object
properties:
Frequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryChartItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryChartItem'
NetAmountInvested:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
YourDifferencesPayload_2:
type: object
title: YourDifferencesPayload
description: Information for your differences details
properties:
questions:
type: array
items:
$ref: '#/components/schemas/QuestionReport_2'
YourDifferencesPayload:
title: YourDifferencesPayload
type: object
properties:
questions:
type: array
items:
$ref: '#/components/schemas/QuestionReport'
description: Information for your differences details.
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdownItem:
type: object
properties:
LargeValue:
format: double
type: number
LargeBlend:
format: double
type: number
LargeGrowth:
format: double
type: number
MidValue:
format: double
type: number
MidBlend:
format: double
type: number
MidGrowth:
format: double
type: number
SmallValue:
format: double
type: number
SmallBlend:
format: double
type: number
SmallGrowth:
format: double
type: number
Unclassified:
format: double
type: number
OptionReport_2:
type: object
title: Option for report
properties:
text:
type: string
description: Option text
example: Extremely low risk taker.
displayOrder:
type: integer
description: Question display order
example: 1
selected:
type: boolean
description: True if the option was selected in stored responses
example: false
Morningstar.PortfolioAnalysis.Models.Output.Performance.TrailingReturns:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.TrailingReturnsItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.TrailingReturnsItem'
Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.TrailingTimePeriod_:
type: object
properties:
Id:
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.Risk.CrossPortfolioCorrelationMatrix:
type: object
properties:
TrailingTimePeriod:
description: Only Year1, Year3, Year5, Year10 supported
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
DataFrequency:
description: Only Monthly, Quarterly supported
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
StartDate:
format: date-time
type: string
EndDate:
format: date-time
type: string
Correlations:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.CrossPortfolioCorrelationItemKey'
QuestionReport_2:
type: object
title: QuestionReport
properties:
title:
type: string
description: Question title text
example: Self-Rating
text:
type: string
description: Option text
example: Compared to others, how do you rate your willingness to take financial risks?
displayOrder:
type: integer
description: Question display order
example: 1
options:
type: array
items:
$ref: '#/components/schemas/OptionReport_2'
difference:
$ref: '#/components/schemas/DifferencePayload_2'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeMaturity:
type: object
properties:
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeMaturityItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeMaturityItem'
Morningstar.PortfolioAnalysis.Models.Input.Report.RiskProfile:
type: object
properties:
labelId:
type: string
profileTypeID:
type: string
profileID:
type: string
description:
type: string
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecurityReturnsItem:
type: object
properties:
SecurityId:
type: string
ReturnData:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.ReturnDataItem'
Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_:
type: object
properties:
Id:
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.Report.targetassetPiechart:
type: object
properties:
compitem:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.targetassetPiechartCompitem'
tp:
type: string
chart:
type: string
profileId:
type: string
id:
type: string
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectorExposureItem:
type: object
properties:
Id:
description: Parent/Rollup
type: string
Value:
format: double
type: number
ExposureItem:
description: Children. Can't use enum because they can be client specific and have different classifications (GICS, Morningstar, Institution specific)
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentDetailsItem:
description: 'TODO: check all the types and possible values for properties in this class'
type: object
properties:
Sequence:
format: int32
type: integer
BeginningBalance:
format: double
type: number
StartDate:
format: date-time
type: string
EndDate:
format: date-time
type: string
ChargesFees:
format: double
type: number
DistributionWithdrawal:
format: double
type: number
MarketValue:
format: double
type: number
NewInvestment:
format: double
type: number
TaxesDue:
format: double
type: number
TotalReinvest:
format: double
type: number
TotalReturnPercent:
format: double
type: number
SuitabilityScorePayload:
title: SuitabilityScorePayload
type: object
properties:
suitabilityScore:
type: integer
description: Suitability core number
example: 52
investmentPolicies:
type: array
items:
$ref: '#/components/schemas/InvestmentPolicyReport'
description: Information for your suitability score
Morningstar.PortfolioAnalysis.Models.Output.Hypo.PlanningAssumptions:
type: object
properties:
Currency:
enum:
- AUD
- CAD
- CNY
- EUR
- GBP
- INR
- JPY
- USD
type: string
RebalanceFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- Biennially
- None
type: string
IllustrationTrailingTimePeriod:
enum:
- YearToDate
- Year1
- Year3
- Year5
- Year10
- SinceInception
- EarliestAvailable
- EarliestCommon
- Customized
type: string
RebalanceThreshold:
format: double
type: number
AllocationUpdateFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
FederalIncomeTaxRate:
format: double
type: number
CapitalGainTaxRate:
format: double
type: number
StateIncomeTaxRate:
format: double
type: number
CanadianIncomeMarginalTaxRate:
format: double
type: number
CanadianDividendMarginalTaxRate:
format: double
type: number
CanadianCapitalGainsMarginalTaxRate:
format: double
type: number
PayTaxes:
enum:
- OutOfPocket
- SalesOfShares
type: string
PayFees:
enum:
- OutOfPocket
- SalesOfShares
type: string
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.PortfolioHoldings:
type: object
properties:
AsOfDate:
format: date-time
type: string
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.PortfolioHolding'
SectionYourDifferencesPayload_2:
type: object
title: SectionYourDifferencesPayload
description: Section with your differences information
properties:
header:
type: string
description: header of the section
example: Your Differences
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport_2'
payloadYourDifferences:
$ref: '#/components/schemas/YourDifferencesPayload_2'
Morningstar.PortfolioAnalysis.Models.Output.XRay.SecurityFees:
type: object
properties:
AsOfDate:
format: date-time
type: string
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.SecurityFeesSecurity'
Morningstar.PortfolioAnalysis.Models.Input.Report.QuestionnaireSectionQuestion:
type: object
properties:
refId:
type: string
responseRefId:
type: string
questionnaireImage:
type: string
ReportResponsePayload:
title: ReportResponsePayload
type: object
properties:
title:
type: string
description: Report's main title
example: Risk Tolerance Results
completedDate:
type: string
description: Questionnaire complete date (yyyy-mm-dd)
example: '2020-05-28T00:00:00.000Z'
sectionRiskTolerance:
$ref: '#/components/schemas/SectionPayload'
sectionUsingYourProfile:
$ref: '#/components/schemas/SectionPayload'
sectionRiskToleranceScore:
$ref: '#/components/schemas/SectionRiskToleranceScorePayload'
sectionRiskGroup:
$ref: '#/components/schemas/SectionRiskGroupPayload'
sectionYourDifferences:
$ref: '#/components/schemas/SectionYourDifferencesPayload'
sectionSuitabilityScore:
$ref: '#/components/schemas/SectionSuitabilityScorePayload'
sectionFooter:
$ref: '#/components/schemas/SectionPayload'
description: Content of the risk tolerance report with sections for static text, questionnaire responses, score values and footnotes.
Morningstar.PortfolioAnalysis.Models.Input.Report.TargetAssetAllocation:
type: object
properties:
piechart:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.targetassetPiechart'
name:
type: string
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityRegionExposureItemSecurity:
type: object
properties:
SecurityId:
type: string
Region:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityRegionExposureItem'
Morningstar.PortfolioAnalysis.Models.Input.XRay.FixedIncomeSectorGroupConfig:
type: object
properties:
Id:
type: string
QuickPortInputId:
type: string
FixedIncomeSectorConfig:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.FixedIncomeSectorConfig'
Morningstar.PortfolioAnalysis.Models.Input.Report.PreparedByAdvisor:
type: object
properties:
Name:
type: string
Title:
type: string
Email:
type: string
Morningstar.PortfolioAnalysis.Models.Output.Performance.NonStdLoadAdjustedReturns:
type: object
properties:
AsOfDate:
format: date-time
type: string
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.NonStdLoadAdjustedReturnsSecurity'
Morningstar.PortfolioAnalysis.Models.Input.Report.ReportSettings:
type: object
properties:
ReportOrientation:
enum:
- Portrait
- Landscape
type: string
staticPDFs:
type: array
items:
type: string
IncludeDisclosure:
type: boolean
CoverPage:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.CoverPage'
RiskQuestionnaire:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.RiskToleranceQuestionnaire'
TargetAssetAllocation:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.TargetAssetAllocation'
InvestorProfile:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.InvestorProfile'
ReportPages:
type: array
items:
enum:
- HistoricalPerformance
- PortfolioSnapshot
- PortfolioXRay
- StockIntersection
- CorrelationMatrix
- RollingReturns
- PriceAndDistribution
- InvestmentDetail
- InvestmentPolicyAgreement
- PortfolioComparison
- RiskQuestionnaire
- TargetAssetAllocation
- IndividualInvestmentFee
- PortfolioComparisonFee
- PortfolioFeeReport
- Disclosure
- PlanLookup
- Agreement
type: string
InvestmentPolicyAgreement:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.InvestmentPolicyAgreement'
ReportPermission:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.ReportPermission'
ShowBarCode:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.ReportBarCode'
ExpectedReturn:
format: double
type: number
QuestionDifference:
type: object
title: QuestionDifference
properties:
questionId:
type: string
description: Question Id
example: FM25-10
message:
type: string
description: Message
example: You are prepared to take only a small degree of risk with your financial decisions.
RiskGroupPayload:
title: RiskGroupPayload
type: object
properties:
title:
type: string
description: Title of the mix investments table
example: Mix of Investments in Portfolio
headers:
$ref: '#/components/schemas/MixInvestmentsHeader'
mixInvestmentsPortfolio:
type: array
example:
- portfolio: Portfolio 1
highRisk: 0
mediumRisk: 0
lowRisk: 100
- portfolio: Portfolio 2
highRisk: 0
mediumRisk: 30
lowRisk: 70
items:
$ref: '#/components/schemas/InvestmentPortfolio'
description: Payload with risk group information containing a representation of a portfolio's table.
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityMarketMaturityItem:
type: object
properties:
DevelopedMarkets:
format: double
type: number
EmergingMarkets:
format: double
type: number
NotAvailable:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.Report.InvestmentPolicyAgreement:
type: object
properties:
Name1:
type: string
Name2:
type: string
SectionYourDifferencesPayload:
title: SectionYourDifferencesPayload
type: object
properties:
header:
type: string
description: Header of the section
example: Your differences
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport'
payloadYourDifferences:
$ref: '#/components/schemas/YourDifferencesPayload'
description: Section with your differences information.
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatios:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatiosItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatiosItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatiosItemSecurity'
Morningstar.PortfolioAnalysis.Models.Input.Hypo.HypoView:
required:
- Id
type: object
properties:
Id:
description: this will look up the view definition defined by configuration
type: string
Hypos:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.Hypos'
Morningstar.PortfolioAnalysis.Models.Input.BenchmarkInputHolding:
description: 'TODO: Implement same way as PortfolioInput'
required:
- SecurityId
- Weight
type: object
properties:
SecurityId:
type: string
Type:
enum:
- XI
- CA
- EI
- CASH
type: string
Weight:
format: double
type: number
PublishB:
type: object
properties:
reportId:
type: string
format: uuid
example: ef22ef22-efef-5678-0000-000000000000
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdown:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdownItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdownItemSecurity'
Morningstar.PortfolioAnalysis.Models.Output.Performance.IllustrationReturns:
type: object
properties:
AsOfDate:
format: date-time
type: string
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.IllustrationReturnSecurityItem'
Morningstar.PortfolioAnalysis.Models.Output.Performance.SecurityReturns:
type: object
properties:
AsOfDate:
format: date-time
type: string
NonStdLoadAdjustedReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.NonStdLoadAdjustedReturns'
StandardizedAndTaxAdjustedReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedAndTaxAdjustedReturns'
Morningstar.PortfolioAnalysis.Models.Input.Report.QuestionnaireSection:
type: object
properties:
textId:
type: string
titleId:
type: string
notDrawSolidline:
type: boolean
Questions:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.QuestionnaireSectionQuestion'
ArrayOfReportUuid:
type: array
items:
type: string
format: uuid
example: ef11ef11-abcd-1234-0000-000000000000
Morningstar.PortfolioAnalysis.Models.Input.Performance.PerformanceView:
type: object
properties:
Id:
description: this will look up the view definition defined by configuration
type: string
Performances:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.Performances'
Assign:
type: object
required:
- reportId
- bucketId
properties:
reportName:
type: string
example: ABCo portfolio-xray
format:
type: string
example: PDF
reportId:
type: string
format: uuid
example: ef11ef11-abcd-1234-0000-000000000000
bucketId:
type: string
format: uuid
example: bb11bb11-1111-0000-0000-000000000000
households:
$ref: '#/components/schemas/ArrayOfHouseholds'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritySummaryPerformance:
type: object
properties:
AverageAnnualizedReturn:
format: double
type: number
CumulativeReturn:
format: double
type: number
Day7Yield:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.Risk.CorrelationMatrix:
type: object
properties:
TrailingTimePeriod:
description: Only Year1, Year3, Year5, Year10 supported
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
DataFrequency:
description: Only Monthly, Quarterly supported
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
StartDate:
format: date-time
type: string
EndDate:
format: date-time
type: string
Correlations:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.CorrelationItemKey'
Morningstar.PortfolioAnalysis.Models.Output.Performance.BestWorstTimePeriod:
type: object
properties:
TimePeriod:
description: Only support Month1, Month3, Year1, Year3
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
Value:
format: double
type: number
StartDate:
format: date-time
type: string
Morningstar.PortfolioAnalysis.Models.Output.Performance.AfterTaxReturns:
type: object
properties:
OnDistributionAndSalesOfShares:
description: Year1,Year3,Year5,Year10,SinceInception only supported
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.TimePeriod_'
OnDistributionReturn:
description: Year1,Year3,Year5,Year10,SinceInception only supported
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.TimePeriod_'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritiesReturns:
type: object
properties:
MedianReturn:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.MedianReturn'
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecurityReturnsItem'
Morningstar.PortfolioAnalysis.Models.Input.XRay.StockIntersectionConfig:
type: object
properties:
ApiDataPoints:
type: string
Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentAssumption:
type: object
properties:
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentAssumptionSecurityItem'
Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisConfig:
type: object
properties:
Id:
description: this will look up the configuration settings
type: string
PerformanceOptional:
type: boolean
PerformanceConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Performance.PerformanceConfig'
XRayConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.XRayConfig'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.ProfitabilityItemSecurity:
type: object
properties:
SecurityId:
type: string
ProfitabilityItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.ProfitabilityItem'
Morningstar.PortfolioAnalysis.Models.Output.Performance.Performances:
type: object
properties:
PerformanceDate:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.PerformanceDate'
Performance:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.Performance'
CrossPortfolioCorrelationMatrix:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.CrossPortfolioCorrelationMatrix'
SecurityReference:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.SecurityItem'
SuitabilityScorePayload_2:
type: object
title: SuitabilityScorePayload
description: Information for your suitability score
properties:
suitabilityScore:
type: integer
description: suitability core number
example: 52
investmentPolicies:
type: array
items:
$ref: '#/components/schemas/InvestmentPolicyReport_2'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentDetails:
type: object
properties:
PortfolioDetails:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentDetailsItem'
PortfolioTotalDistributionAndWithdrawal:
format: double
type: number
PortfolioTotalNewInvestment:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalizationItem:
type: object
properties:
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.Performance.InvestmentActivity:
type: object
properties:
DataFrequency:
enum:
- Monthly
- Quarterly
type: string
Portfolio:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.InvestmentActivityItem'
Benchmark:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.InvestmentActivityItem'
MaxSequence:
format: int32
type: integer
Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.Int32_:
type: object
properties:
Id:
format: int32
type: integer
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.Report.ReportBarCode:
type: object
properties:
Text:
type: string
Height:
format: double
type: number
Width:
format: double
type: number
InvestmentPortfolio_2:
type: object
title: InvestmentPortfolio
description: Investment portfolio object that represents the mix of investments in portfolio
properties:
portfolio:
type: string
description: portfolio's name
example: Portfolio 1
highRisk:
type: integer
description: High risk value
example: 1
mediumRisk:
type: integer
description: Medium risk value
example: 0
lowRisk:
type: integer
description: Low risk value
example: 100
Households:
type: object
properties:
householdId:
type: string
format: uuid
example: cd11cd11-cdef-5678-0000-000000000000
name:
type: string
ArrayOfPublishA:
type: array
items:
$ref: '#/components/schemas/PublishA'
PublishA:
type: object
properties:
reportId:
type: string
format: uuid
example: ef11ef11-abcd-1234-0000-000000000000
Morningstar.PortfolioAnalysis.Models.Output.PortfolioBenchmark:
type: object
properties:
Type:
description: Ignore value in the view definition. This will be set correctly as part of the response.
enum:
- Standard
- AutoAsset
- AutoCategory
- Custom
type: string
Holdings:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.PortfolioBenchmarkHolding'
Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedReturnsTimePeriodItem:
type: object
properties:
Id:
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
Market:
format: double
type: number
Nav:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleItem:
type: object
properties:
AverageMarketCap:
format: double
type: number
ProspectivePriceBook:
format: double
type: number
ProspectivePriceCashFlow:
format: double
type: number
ProspectivePriceEarnings:
format: double
type: number
ProspectivePriceSales:
format: double
type: number
InvestmentPortfolio:
title: InvestmentPortfolio
type: object
properties:
portfolio:
type: string
description: portfolio's name
example: Portfolio 1
highRisk:
type: integer
description: High risk value
example: 1
mediumRisk:
type: integer
description: Medium risk value
example: 0
lowRisk:
type: integer
description: Low risk value
example: 100
description: Investment portfolio object that represents the mix of investments in portfolio.
ReportResponsePayload_2:
type: object
title: ReportResponsePayload
description: Content of the risk tolerance report with sections for static text, questionnaire responses, score values and footnotes.
properties:
title:
type: string
description: report's main title
example: Risk Tolerance Results
completedDate:
type: string
example: '2020-05-28'
description: Questionnaire complete date (yyyy-mm-dd)
sectionRiskTolerance:
$ref: '#/components/schemas/SectionPayload_2'
sectionUsingYourProfile:
$ref: '#/components/schemas/SectionPayload_2'
sectionRiskToleranceScore:
$ref: '#/components/schemas/SectionRiskToleranceScorePayload_2'
sectionRiskGroup:
$ref: '#/components/schemas/SectionRiskGroupPayload_2'
sectionYourDifferences:
$ref: '#/components/schemas/SectionYourDifferencesPayload_2'
sectionSuitabilityScore:
$ref: '#/components/schemas/SectionSuitabilityScorePayload_2'
sectionFooter:
$ref: '#/components/schemas/SectionPayload_2'
Publish:
type: object
required:
- reportId
- bucketId
properties:
enabled:
type: boolean
success:
$ref: '#/components/schemas/ArrayOfPublishA'
failure:
$ref: '#/components/schemas/ArrayOfPublishB'
Morningstar.PortfolioAnalysis.Models.Output.XRay.XRay:
type: object
properties:
PortfolioName:
type: string
AnalysisDate:
format: date-time
type: string
AnalysisDateTimePeriod:
enum:
- MonthEnd
- QuarterEnd
type: string
ReturnMethodology:
enum:
- QuickPortfolio
- Hypothetical
type: string
Analysis:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AnalysisItem'
Holdings:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.HoldingsItem'
Statistics:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.StatisticsItem'
PortfolioBenchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.PortfolioBenchmark'
Returns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.Returns'
SecurityFees:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.SecurityFees'
Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisRequestSettings:
type: object
properties:
OutputCurrency:
enum:
- AUD
- CAD
- CNY
- EUR
- GBP
- INR
- JPY
- USD
type: string
AnalysisDateTimePeriod:
enum:
- MonthEnd
- QuarterEnd
type: string
AssetClassGroupConfigs:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.AssetClassGroupConfigs'
OutputReturnsFrequency:
description: Default should be annually
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
IncludePortfolioInCorrelationMatrix:
type: boolean
RollingReturnFrequency:
enum:
- Month3
- Month6
- Year1
- Year3
- Year5
- Year10
type: string
HypoCalculationSettings:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Hypo.HypoCalculationSettings'
ReportSettings:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.ReportSettings'
SectionPayload:
title: SectionPayload
type: object
properties:
header:
type: string
description: Header of the section
example: About Risk Tolerance
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport'
description: Section that contains id, header, array of paragraphs that are going to be part of the report.
Morningstar.PortfolioAnalysis.Models.Input.Report.PreparedBy:
type: object
properties:
Advisors:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.PreparedByAdvisor'
FirmName:
type: string
Address1:
type: string
Address2:
type: string
City:
type: string
State:
description: To be used for Province in Canada
type: string
Zipcode:
description: To be used for Postal Code in Canada
type: string
Country:
type: string
Phone:
type: string
Website:
type: string
ABN:
description: Australia only
type: string
AFSL:
description: Australia only
type: string
Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisInputSettings:
type: object
properties:
View:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisView'
Config:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisConfig'
RequestSettings:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisRequestSettings'
Portfolios:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioInput'
example:
View:
Id: PDF
Config:
Id: PDF
RequestSettings:
OutputCurrency: USD
AnalysisDateTimePeriod: MonthEnd
AssetClassGroupConfigs:
AssetClassGroupConfig:
- Id: ACG-USDETAILED-15
- Id: ACG-USBROAD
OutputReturnsFrequency: Annually
IncludePortfolioInCorrelationMatrix: true
RollingReturnFrequency: Month3
ReportSettings:
ReportOrientation: Portrait
IncludeDisclosure: true
ReportPermission:
AllowAnnotation: false
AllowPrint: false
AllowCopy: false
AllowContent: false
CoverPage:
ReportTitle: ReportTitle
PreparedFor:
Name: PreparedForName
Address: PreparedForAddress
City: PreparedForCity
Phone: PreparedForPhone
Email: PreparedForEmail
PreparedBy:
Advisors:
- Name: PreparedByAdvisorName1
Title: PreparedByAdvisorTitle1
Email: PreparedByAdvisorEmail1
- Name: PreparedByAdvisorName2
Title: PreparedByAdvisorTitle2
Email: PreparedByAdvisorEmail2
FirmName: PreparedByFirmName
Address1: PreparedByAddress1
Address2: PreparedByAddress2
City: PreparedByCity
State: PreparedByState
Zipcode: PreparedByZipcode
Country: PreparedByCountry
Phone: PreparedByPhone
Website: PreparedByWebsite
ReportPages:
- PortfolioXRay
- PortfolioSnapshot
InvestmentPolicyAgreement:
Name1: Name1
Name2: Name2
HypoReportType: Portfolio
Portfolios:
- Name: TestPortfolio1
TotalValue: 100000
Currency: USD
Holdings:
- SecurityId: F00000VCTT
Weight: 20
- SecurityId: 0P00002NW8
Weight: 10
- TradingSymbol: AAPL
Weight: 15
- ISIN: US09251T1034
Weight: 35
- CUSIP: '256219106'
Weight: 20
Benchmark:
Type: Standard
Holdings:
- SecurityId: XIUSA04G92
Type: XI
Weight: 100
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersectionConcentrationRatio:
type: object
properties:
TopStocksPercent:
format: double
type: number
OtherStocksPercent:
format: double
type: number
TopNumberOfStocks:
format: int32
type: integer
InvestmentPolicyReport:
title: InvestmentPolicyReport
type: object
properties:
id:
type: string
description: Unique identifier
example: 95000cf-9f72-4au7-811b-35dc66dd95a
title:
type: string
description: Investment policy title
example: Conservative
text:
type: string
description: Investment policy text
example: As a conservative investor, your portfolio will be invested in the most risk-averse areas such as cash and fixed-income securities.
min:
type: integer
description: Minimum score range
example: 10
max:
type: integer
description: Maximum score range
example: 30
assetClass:
type: array
items:
$ref: '#/components/schemas/AssetClassPayload'
description: Investment policy report
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRiskItem:
type: object
properties:
Maturity:
format: double
type: number
MaturityPercentAnalyzed:
format: double
type: number
YieldToMaturity:
format: double
type: number
ModifiedDuration:
format: double
type: number
EffectiveDuration:
format: double
type: number
EffectiveDurationPercentAnalyzed:
format: double
type: number
WTDCoupon:
format: double
type: number
WTDPrice:
format: double
type: number
AverageCreditQuality:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetClassItem:
type: object
properties:
Id:
type: string
Long:
format: double
type: number
Short:
format: double
type: number
Net:
format: double
type: number
RescaledLong:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.SecurityFeesSecurity:
type: object
properties:
SecurityId:
type: string
FrontLoadFee:
format: double
type: number
DeferredLoadFee:
format: double
type: number
ManagementFees:
format: double
type: number
Expense12b1:
format: double
type: number
NetExpenseRatio:
format: double
type: number
GrossExpenseRatio:
format: double
type: number
AnnualReportNetExpenseRatio:
format: double
type: number
AnnualReportGrossExpenseRatio:
format: double
type: number
TotalExpenseRatio:
format: double
type: number
ManagementExpenseRatio:
format: double
type: number
IndirectCostRatio:
format: double
type: number
OnGoingCharge:
format: double
type: number
KIIDOnGoingCharge:
format: double
type: number
ReportListSingle:
type: object
required:
- reportId
- name
properties:
metadata:
$ref: '#/components/schemas/ReportMetaDataSingle'
results:
type: array
items:
$ref: '#/components/schemas/Report'
Morningstar.PortfolioAnalysis.Models.Output.Risk.CorrelationItemKey:
type: object
properties:
Id:
format: int32
type: integer
SecurityId:
type: string
PortfolioName:
type: string
UseExtendedReturns:
type: boolean
Type:
enum:
- Portfolio
- Security
type: string
CorrelatedItemKey:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.CorrelatedItemKey'
Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatisticsSecurityItem:
type: object
properties:
SecurityId:
type: string
Weight:
format: double
type: number
RiskStatisticsItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatisticsItem'
Morningstar.PortfolioAnalysis.Models.Input.Report.targetassetPiechartCompitem:
type: object
properties:
itemname:
type: string
classid:
type: string
alias:
type: string
color:
type: string
net:
type: string
SectionRiskGroupPayload_2:
type: object
title: SectionRiskGroupPayload
description: Section with risk group information
properties:
header:
type: string
description: header of the section
example: About Your Risk Group
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport_2'
payloadRiskGroup:
$ref: '#/components/schemas/RiskGroupPayload_2'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeStyleItem:
type: object
properties:
EffectiveDuration:
format: double
type: number
EffectiveMaturity:
format: double
type: number
ErrorResponse502:
title: ErrorResponse
type: object
properties:
message:
type: string
description: Error Message
example: Received an invalid response from the upstream server
status:
type: string
description: Error Status
example: BAD_GATEWAY
timestamp:
type: string
description: Error Timestamp
example: 2020-08-05T13:40:25+0000
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetAllocation:
type: object
properties:
Id:
description: Asset Class Group Id
type: string
AsOfDate:
format: date-time
type: string
Portfolio:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetClassItem'
Benchmark:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetClassItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetAllocationSecurity'
Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatisticsItem:
type: object
properties:
Alpha:
format: double
type: number
Beta:
format: double
type: number
RSquared:
format: double
type: number
MixInvestmentsHeader_2:
type: object
title: MixInvestmentsHeader
properties:
portfolio:
type: string
description: Header of the column for portfolio information.
example: Portfolio
highRisk:
type: string
description: Header of the column for high risk information.
example: High Risk/Return %
mediumRisk:
type: string
description: Header of the column for medium risk information.
example: Medium Risk/Return %
lowRisk:
type: string
description: Header of the column for low risk information.
example: Low Risk/Return %
Morningstar.PortfolioAnalysis.Models.Output.Hypo.Hypos:
type: object
properties:
PerformanceDate:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.PerformanceDate'
Hypo:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.Hypo'
SecurityReference:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.SecurityItem'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.TopNetUnderlyingHoldings:
type: object
properties:
AsOfDate:
format: date-time
type: string
TopNumber:
format: int32
type: integer
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.TopNetUnderlyingHoldingsSecurity'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeSectors:
type: object
properties:
AsOfDate:
format: date-time
type: string
Id:
description: Possible values Morningstar, or Institution defined Id
type: string
Portfolio:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Benchmark:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AnalysisItem:
type: object
properties:
AssetAllocation:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.AssetAllocation'
EquityAnalysis:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityAnalysis'
FixedIncomeAnalysis:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeAnalysis'
InvestmentStyle:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InvestmentStyle'
Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatistics:
type: object
properties:
AsOfDate:
format: date-time
type: string
TrailingTimePeriod:
description: Only Year1, Year3, Year5, Year10 supported
enum:
- QuarterToDate
- YearToDate
- Month1
- Month3
- Month6
- Year1
- Year2
- Year3
- Year5
- Year10
- SinceInception
type: string
DataFrequency:
description: Only Monthly, Quarterly supported
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
- None
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatisticsItem'
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatisticsSecurityItem'
Morningstar.PortfolioAnalysis.Models.Output.Performance.InvestmentActivityItem:
description: 'TODO: check all the types and possible values for properties in this class'
type: object
properties:
Sequence:
format: int32
type: integer
StartDate:
format: date-time
type: string
EndDate:
format: date-time
type: string
BeginningBalance:
format: double
type: number
ChargesFees:
format: double
type: number
DistributionWithdrawal:
format: double
type: number
MarketValue:
format: double
type: number
NewInvestment:
type: boolean
TaxesDue:
format: double
type: number
TotalReinvest:
format: double
type: number
TotalReturnPercent:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.Performance.Returns:
type: object
properties:
BestWorstTimePeriods:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.BestWorstTimePeriods'
TrailingReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.TrailingReturns'
CalendarYearReturn:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.CalendarYearReturns'
RollingReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturns'
IllustrationReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.IllustrationReturns'
PerformanceHistorys:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistorys'
InvestmentActivity:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.InvestmentActivity'
SecurityReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.SecurityReturns'
AssignInput:
type: object
required:
- reportIds
- householdIds
properties:
reportIds:
$ref: '#/components/schemas/ArrayOfReportUuid'
householdIds:
$ref: '#/components/schemas/ArrayOfHouseholdUuid'
Morningstar.PortfolioAnalysis.Models.Input.XRay.XRayView:
type: object
properties:
Id:
description: this will look up the view definition defined by configuration
type: string
XRays:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.XRays'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritySummary:
type: object
properties:
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritySummaryItem'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyle:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleItem'
EquityStyleBreakdown:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleBreakdown'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityStyleItemSecurity'
Morningstar.PortfolioAnalysis.Models.Input.XRay.XRayConfig:
type: object
properties:
Id:
description: this will look up the configuration settings
type: string
ReturnMethodology:
enum:
- QuickPortfolio
- Hypothetical
type: string
FixedIncomeSectorGroupConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.FixedIncomeSectorGroupConfig'
StockIntersectionConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.StockIntersectionConfig'
EquitySectorGroupConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.EquitySectorGroupConfig'
WorldRegionGroupConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.WorldRegionGroupConfig'
AssetClassGroupConfig:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.AssetClassGroupConfig'
IncludeStockIntersectionIndexData:
type: boolean
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRisk:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRiskItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRiskItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRiskItemSecurity'
Morningstar.PortfolioAnalysis.Models.Output.Performance.CalendarYearReturns:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.CalendarYearReturn'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.CalendarYearReturn'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersectionItem:
type: object
properties:
SecurityId:
type: string
SecurityName:
type: string
CUSIP:
type: string
TradingSymbol:
type: string
PercentOfInvestments:
format: double
type: number
MarketValue:
format: double
type: number
StockSector:
description: 'TODO: should this be an enum instead of a string?'
type: string
SourceOfStock:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.StockIntersectionItemSource'
Morningstar.PortfolioAnalysis.Models.Input.PortfolioInput:
required:
- Name
- Currency
- Holdings
type: object
properties:
Name:
type: string
TotalValue:
format: double
type: number
Currency:
enum:
- AUD
- CAD
- CNY
- EUR
- GBP
- INR
- JPY
- USD
type: string
Holdings:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.PortfolioInputHolding'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.BenchmarkInput'
IrrFees:
format: double
type: number
RiskFreeProxyId:
description: Default is set in the Configuration. This is a portfolio level override.
type: string
SectionRiskToleranceScorePayload:
title: SectionRiskToleranceScorePayload
type: object
properties:
header:
type: string
description: Header of the section
example: About Risk Tolerance
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport'
payloadComparedToInvestors:
$ref: '#/components/schemas/ComparedToInvestorsPayload'
description: Section with risk tolerance score information.
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityTypeBreakdownItemSecurity:
type: object
properties:
SecurityId:
type: string
EquityTypeBreakdownItem:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.EquityType_'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeMaturityItem:
type: object
properties:
Maturity:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.FixedIncomeMaturityPeriod_'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalization:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalizationItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalizationItem'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalizationItemSecurity'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.BenchmarkPerformance:
type: object
properties:
Name:
type: string
Performance:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Morningstar.PortfolioAnalysis.Models.Output.Risk.Risks:
type: object
properties:
RiskStatistics:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.RiskStatistics'
MPTStatistics:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatistics'
CorrelationMatrix:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.CorrelationMatrix'
Morningstar.PortfolioAnalysis.Models.Input.PortfolioInputHolding:
type: object
properties:
SecurityId:
type: string
Type:
description: 'TODO: is this required? If not, is there a default?'
enum:
- BD
- CT
- CA
- CASH
- EI
- FC
- FE
- FM
- FO
- FI
- FV
- SA
- ST
- VA
- V1
- XI
- SP
type: string
ExchangeID:
type: string
Weight:
format: double
type: number
Value:
format: double
type: number
AnnualFeePercent:
format: double
type: number
AnnualFeeFrequency:
enum:
- Monthly
- Quarterly
- SemiAnnually
- Annually
type: string
SalesFeesAmountType:
enum:
- Amount
- Percentage
type: string
SalesFeesAmount:
format: double
type: number
SalesFeesType:
enum:
- Standard
- Custom
type: string
SalesFeesROAAmount:
format: double
type: number
SalesFeesLOIAmount:
format: double
type: number
OtherFeeAmount:
format: double
type: number
OtherFeeAmountType:
enum:
- Amount
- Percentage
type: string
OtherFeeType:
enum:
- TradingCommissions
- ShortTermTradingFee
type: string
CUSIP:
type: string
TradingSymbol:
type: string
FundCode:
type: string
Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.FixedIncomeMaturityPeriod_:
type: object
properties:
Id:
enum:
- Years1to3
- Years3to5
- Years5to7
- Years7to10
- Years10to15
- Years15to20
- Years20to30
- YearsOver30
type: string
Value:
format: double
type: number
ReportMetaData:
type: object
properties:
startdate:
type: string
example: YYYY-MM-DD
description: Date or empty.
enddate:
type: string
example: YYYY-MM-DD
description: Date or empty.
bucketId:
type: string
format: uuid
example: bb11bb11-1111-0000-0000-000000000000
description: BucketId or empty in special cases.
items:
type: integer
example: 1
description: Number of reports found.
SectionRiskGroupPayload:
title: SectionRiskGroupPayload
type: object
properties:
header:
type: string
description: Header of the section
example: About Your Risk Group
paragraphs:
type: array
items:
$ref: '#/components/schemas/ParagraphReport'
payloadRiskGroup:
$ref: '#/components/schemas/RiskGroupPayload'
description: Section with risk group information.
Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryChartItem:
type: object
properties:
StartDate:
format: date-time
type: string
Data:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.String_'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeAnalysis:
type: object
properties:
AsOfDate:
format: date-time
type: string
FixedIncomeSectors:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeSectors'
FixedIncomeMaturity:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.FixedIncomeMaturity'
CreditQuality:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.CreditQuality'
InterestRateRisk:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRisk'
Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatisticsSecurityItem:
type: object
properties:
SecurityId:
type: string
MPTStatisticsItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Risk.MPTStatisticsItem'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityTypeBreakdown:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.EquityType_'
Benchmark:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.EquityType_'
SecurityBreakdown:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityTypeBreakdownItemSecurity'
ParagraphReport_2:
type: object
title: ParagraphReport
properties:
content:
type: string
description: Paragraph text
example: Compared to others, how do you rate your willingness to take financial risks?
isHtml:
type: boolean
example: false
description: True if the text field is an HTML markup, otherwise text field is plain text
isImage:
type: boolean
example: true
description: True if the `content` field is a base64 encoded image, otherwise is regular text
displayOrder:
type: integer
example: 1
description: Paragraph display order
Morningstar.PortfolioAnalysis.Models.Input.Report.PreparedFor:
type: object
properties:
Name:
type: string
Address:
type: string
City:
type: string
Phone:
type: string
Email:
type: string
ReportList:
type: object
required:
- reportId
- name
properties:
metadata:
$ref: '#/components/schemas/ReportMetaData'
results:
type: array
items:
$ref: '#/components/schemas/Report'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.TopNetUnderlyingHoldingsSecurity:
type: object
properties:
SecurityId:
type: string
PercentAssets:
format: double
type: number
FundCategory:
type: string
EquitySector:
description: Institution specific sector configuration
type: string
FixedIncomeSector:
type: string
Industry:
type: string
Country:
description: Needs to be ISO country code
type: string
DifferencePayload:
title: DifferencePayload
type: object
properties:
group:
type: string
description: Question risk group column by key difference map. (VERY_LOW, LOW, AVERAGE, HIGH, VERY_HIGH)
example: VERY_LOW
type:
type: string
description: Difference type. (STANDARD, RISKIER, LESS_RISKY)
example: STANDARD
value:
type: integer
description: Difference value from key difference map.
example: -1
text:
type: string
description: Text that describe if the question is riskier or less risky than the Very High/Very Low risk group.
example: Your answer is riskier than the most risky answer typically given by someone in the Very High risk group.
description: Difference payload
ComparedToInvestorsPayload_2:
type: object
title: ComparedToInvestorsPayload
description: Payload with information about the comparison with other investors.
properties:
calculatedScore:
type: integer
description: Calculated score
example: 52
agreedScore:
type: integer
description: Agreed Score
example: 52
calculatedRiskGroup:
type: string
description: Calculated risk group
example: Average
calculatedRiskGroupValue:
type: string
description: Calculated risk group code
example: AVERAGE
agreedRiskGroup:
type: string
description: Agreed risk group
example: Average
agreedChangedDate:
type: string
description: Agreed change date
example: '2020-06-01'
completedDate:
type: string
description: Calculated date
example: '2020-06-01'
inconsistencyHeading:
type: string
description: Inconsistency heading
example: Review Your Differences
inconsistencyMessage:
type: string
description: Inconsistency message
example: Based on how your answers differed, we recommend discussing your risk tolerance further with a financial professional.
adjustedHeading:
type: string
description: Adjusted heading
example: Suggested Score.
adjustedMessage:
type: string
description: Adjusted message
example: Based on how some of your answers differed from others in your risk group, it is recommended that your risk score be adjusted from 42 to 46.
adjustedScore:
type: integer
description: Adjusted score
example: 42
adjustedRiskGroup:
type: string
description: Adjusted risk group
example: Low
riskGroupLabels:
type: array
items:
$ref: '#/components/schemas/RiskGroupLabel_2'
Morningstar.PortfolioAnalysis.Models.Output.Hypo.Hypo:
type: object
properties:
PortfolioName:
type: string
PerformanceDate:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.PerformanceDate'
InvestmentAssumption:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.InvestmentAssumption'
PortfolioSummary:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummary'
SecuritySummary:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritySummary'
SecuritiesReturns:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Hypo.SecuritiesReturns'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.StatisticsItem:
type: object
properties:
PortfolioSummary:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.PortfolioStatisticsSummary'
FundStatistics:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.FundStatistics'
Morningstar.PortfolioAnalysis.Models.Input.XRay.FixedIncomeSectorConfig:
type: object
properties:
Id:
type: string
QuickPortId:
type: string
Morningstar.PortfolioAnalysis.Models.Input.Report.ReportPermission:
type: object
properties:
AllowPrint:
type: boolean
AllowCopy:
type: boolean
AllowContent:
type: boolean
AllowAnnotation:
type: boolean
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.CreditQualityItem:
type: object
properties:
AAA:
format: double
type: number
AA:
format: double
type: number
A:
format: double
type: number
BBB:
format: double
type: number
BB:
format: double
type: number
B:
format: double
type: number
BelowB:
format: double
type: number
NotRated:
format: double
type: number
ParagraphReport:
title: ParagraphReport
type: object
properties:
content:
type: string
description: Paragraph text
example: Compared to others, how do you rate your willingness to take financial risks?
isHtml:
type: boolean
description: True if the text field is an HTML markup, otherwise text field is plain text
example: true
isImage:
type: boolean
description: True if the `content` field is a base64 encoded image, otherwise is regular text
example: false
displayOrder:
type: integer
description: Paragraph display order
example: 1
description: Option for report.
ComparedToInvestorsPayload:
title: ComparedToInvestorsPayload
type: object
properties:
calculatedScore:
type: integer
description: Calculated score
example: 52
agreedScore:
type: integer
description: Agreed score
example: 52
calculatedRiskGroup:
type: string
description: Calculated risk group
example: Average
calculatedRiskGroupValue:
type: string
description: Calculated risk group code
example: AVERAGE
agreedRiskGroup:
type: string
description: Agreed risk group
example: Average
agreedChangedDate:
type: string
description: Agreed change date
example: '2020-06-01T00:00:00.000Z'
completedDate:
type: string
description: Calculated date
example: '2020-06-01T00:00:00.000Z'
riskGroupLabels:
type: array
items:
$ref: '#/components/schemas/RiskGroupLabel'
description: Payload with information about the comparison with other investors.
Morningstar.PortfolioAnalysis.Models.Input.PortfolioAnalysis.PortfolioAnalysisView:
type: object
properties:
Id:
description: this will look up the view definition defined by configuration
type: string
XRayView:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.XRayView'
HypoView:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Hypo.HypoView'
PerformanceView:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Performance.PerformanceView'
ReportMetaDataSingle:
type: object
properties:
items:
type: integer
example: 1
description: Number of reports found.
Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.IllustrationReturnTimePeriod_:
type: object
properties:
Id:
enum:
- Days7Yield
- Days7YieldUnsubsidized
- Days7YieldSubsidized
- Year1
- Year3
- Year5
- Year10
- SinceInception
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.XRay.WorldRegionConfig:
type: object
properties:
Id:
type: string
QuickPortId:
type: string
QuickPortRegionText:
type: string
QuickPortParentRegionText:
type: string
Morningstar.PortfolioAnalysis.Models.Output.XRay.Holdings.PortfolioHolding:
type: object
properties:
SecurityId:
type: string
FundPortfolioDate:
format: date-time
type: string
Year1:
format: double
type: number
Year3:
format: double
type: number
Year5:
format: double
type: number
Year10:
format: double
type: number
PercentAssets:
format: double
type: number
MarketValue:
format: double
type: number
FundCategory:
type: string
Sector:
description: Institution specific sector configuration
type: string
Industry:
type: string
Country:
description: ISO country code
type: string
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatiosItemSecurity:
type: object
properties:
SecurityId:
type: string
PriceRatiosItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatiosItem'
QuestionReport:
title: QuestionReport
type: object
properties:
title:
type: string
description: Question title text
example: Self-Rating
text:
type: string
description: Option text
example: Compared to others, how do you rate your willingness to take financial risks?
displayOrder:
type: integer
description: Question display order
example: 1
options:
type: array
items:
$ref: '#/components/schemas/OptionReport'
difference:
type: array
items:
$ref: '#/components/schemas/DifferencePayload'
description: Question report.
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityMarketMaturity:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityMarketMaturityItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityMarketMaturityItem'
ErrorResponse500:
title: ErrorResponse
type: object
properties:
message:
type: string
description: Error Message
example: Internal Server Error
status:
type: string
description: Error Status
example: INTERNAL_SERVER_ERROR
timestamp:
type: string
description: Error Timestamp
example: 2020-08-05T13:40:25+0000
Morningstar.PortfolioAnalysis.Models.Output.Hypo.PortfolioSummaryPerformance:
type: object
properties:
AverageAnnualizedReturn:
format: double
type: number
CumulativeReturn:
format: double
type: number
FinalMarketValue:
format: double
type: number
NetAmountInvested:
format: double
type: number
BenchmarkCumulativeReturn:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Input.AssetClassGroupConfig:
type: object
properties:
Id:
type: string
Type:
enum:
- Broad
- Detailed
type: string
AssetClassConfig:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.AssetClassConfig'
Morningstar.PortfolioAnalysis.Models.Input.XRay.EquitySectorGroupConfig:
type: object
properties:
Id:
type: string
EquitySectorConfig:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.XRay.EquitySectorConfig'
Morningstar.PortfolioAnalysis.Models.Input.XRay.EquitySectorConfig:
type: object
properties:
Id:
type: string
QuickPortId:
type: string
IsParentSector:
type: boolean
ParentSectorId:
type: string
Morningstar.PortfolioAnalysis.Models.Input.Report.InvestorProfile:
type: object
properties:
Profiles:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.RiskProfile'
results:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Input.Report.RiskProfile'
InvestmentPolicyReport_2:
type: object
title: InvestmentPolicyReport
properties:
id:
type: string
description: Unique identifier
example: 95000cf-9f72-4au7-811b-35dc66dd95a
title:
type: string
description: Investment policy title
example: Conservative
text:
type: string
description: Investment policy text
example: As a conservative investor, your portfolio will be invested in the most risk-averse areas such as cash and fixed-income securities.
min:
type: integer
description: Minimum score range
example: 10
max:
type: integer
description: Maximum score range
example: 30
assetClass:
type: array
items:
$ref: '#/components/schemas/AssetClassPayload_2'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Statistics.FundStatisticsItem:
type: object
properties:
AverageNetExpenseRatio:
format: double
type: number
AverageGrossExpenseRatio:
format: double
type: number
PotentialCapGainsExposure:
format: double
type: number
AverageAnnualReportNetExpenseRatio:
format: double
type: number
AverageAnnualReportGrossExpenseRatio:
format: double
type: number
AverageTotalExpenseRatio:
format: double
type: number
AverageManagementExpenseRatio:
format: double
type: number
AverageManagementFee:
format: double
type: number
SimilarlyWeightedHypotheticalPortfolioPercentExpenseRatio:
format: double
type: number
EstimatedMutualFundExpensesAmount:
format: double
type: number
TotalSalesChargesPaidAmount:
format: double
type: number
IndirectCostRatio:
format: double
type: number
OnGoingCharge:
format: double
type: number
KIIDOnGoingCharge:
format: double
type: number
RiskGroupLabel:
title: RiskGroupLabel
type: object
properties:
groupName:
type: string
description: Name of the risk group
example: Average
range:
type: string
description: Range of the score within the risk group
example: 45-54
description: Risk group label
Morningstar.PortfolioAnalysis.Models.Output.Risk.CrossPortfolioCorrelatedItemKey:
type: object
properties:
CorrelatedItemKeyId:
format: int32
type: integer
Type:
enum:
- Portfolio
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRiskItemSecurity:
type: object
properties:
SecurityId:
type: string
InterestRateRiskItem:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.InterestRateRiskItem'
? Morningstar.PortfolioAnalysis.Models.Output.DataItem_Morningstar.PortfolioAnalysis.Models.PortfolioYieldTrailingTimePeriod_
: type: object
properties:
Id:
enum:
- Month12
type: string
Value:
format: double
type: number
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalizationItemSecurity:
type: object
properties:
SecurityId:
type: string
AverageMarketCapitalization:
format: double
type: number
ErrorResponse400:
title: ErrorResponse
type: object
properties:
message:
type: string
description: Error Message
example: Server cannot or will not process the request due to something that is perceived to be a client error
status:
type: string
description: Error Status
example: BAD_REQUEST
timestamp:
type: string
description: Error Timestamp
example: 2020-08-05T13:40:25+0000
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityAnalysis:
type: object
properties:
AsOfDate:
format: date-time
type: string
EquitySectors:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquitySectors'
WorldRegions:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.WorldRegions'
EquityMarketMaturity:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityMarketMaturity'
EquityTypeBreakdown:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.EquityTypeBreakdown'
PriceRatios:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.PriceRatios'
Profitability:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.Profitability'
GeometricAverageCapitalization:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.GeometricAverageCapitalization'
Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturn:
type: object
properties:
RollingPeriod:
enum:
- Month3
- Month6
- Month12
- Month24
- Month36
- Month60
- Month120
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturnsItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.RollingReturnsItem'
Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedAndTaxAdjustedReturns:
type: object
properties:
AsOfDate:
format: date-time
type: string
Security:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.StandardizedAndTaxAdjustedReturnsSecurity'
Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.CreditQuality:
type: object
properties:
AsOfDate:
format: date-time
type: string
Portfolio:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.CreditQualityItem'
Benchmark:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.XRay.Analysis.CreditQualityItem'
Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistoryItem:
type: object
properties:
StartYear:
format: int32
type: integer
StartQuarter:
format: int32
maximum: 4
minimum: 1
type: integer
StartMonth:
format: int32
maximum: 12
minimum: 1
type: integer
Data:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.DataItem_System.Int32_'
Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistorys:
type: object
properties:
PerformanceHistory:
type: array
items:
$ref: '#/components/schemas/Morningstar.PortfolioAnalysis.Models.Output.Performance.PerformanceHistory'
securitySchemes:
BasicAuth:
type: http
scheme: basic