openapi: 3.0.1 info: version: 1.0.0 title: Authorization Tokens Accounts market shock scenarios 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: market shock scenarios paths: /market-shock-scenarios: get: tags: - market shock scenarios summary: Get all custom market shock scenarios description: 'Get a list of all your custom market shock scenarios. The response will include the unique ID for each scenario. You use the ID with other endpoints to return information based on that scenario. ' operationId: get_market_shock_scenario parameters: - name: is-new in: query description: Use new ID schema: type: boolean default: true responses: '200': description: OK content: {} '401': description: The user is not authenticated. content: {} '403': description: The user don't have permission. content: {} '404': description: Not Found. content: {} '500': description: Internal Server Error. content: {} /market-shock-scenarios/{scenario_id}: get: tags: - market shock scenarios summary: Get details for a custom market shock scenario description: Get details for a specific custom market shock scenario. The response will return the target market index and market movement number. operationId: get_market_shock_scenario_item parameters: - name: scenario_id in: path description: Unique identifier of a scenario required: true schema: type: string default: MA000000000000 responses: '200': description: OK content: {} '401': description: The user is not authenticated. content: {} '403': description: The user don't have permission. content: {} '404': description: Not Found. content: {} '500': description: Internal Server Error. content: {} /market-shock-scenarios/{scenario_id}/calculate-forecast-return: post: tags: - market shock scenarios summary: Calculate returns forecast for a fund based on a custom market shock scenario description: Based on a specific risk model and custom market shock scenario, calculate returns forecast for a fund. The response will return the mean forecasted return, volatility, VaR and CVaR. operationId: post_market_forecast parameters: - name: scenario_id in: path description: Unique identifier of a scenario scenario. required: true schema: type: string default: MAPRE00000000000000001 requestBody: content: application/json: schema: $ref: '#/components/schemas/ForecastReturnModel' required: true responses: '200': description: OK content: {} '401': description: The user is not authenticated. content: {} '403': description: The user don't have permission. content: {} '404': description: Not Found. content: {} '500': description: Internal Server Error. content: {} x-codegen-request-body-name: payload components: schemas: ForecastReturnModel: required: - investments - riskModelId properties: riskModelId: type: string example: morn-glb-eq-usd investments: type: array description: Investment id refers to performance ids, identifying the funds to be analysis on, separated by "," when passing multiple. example: - id: 0P000001RB type: '' items: $ref: '#/components/schemas/idType' portfolios: type: array example: - id: model-portfolio1 holdings: - identifier: 0P0000058R identifierType: PerformanceId weight: 60 - identifier: 0P000001RB identifierType: PerformanceId weight: 40 items: $ref: '#/components/schemas/Holdings' type: object Holdings: required: - id properties: holdings: type: array items: $ref: '#/components/schemas/holding' id: type: string type: object holding: properties: identifier: type: string weight: type: number type: object idType: properties: id: type: string type: type: string type: object securitySchemes: BasicAuth: type: http scheme: basic