{"openapi":"3.0.2","info":{"title":"Rollup API","description":"Api specification of Rollup API","version":"2024.11.d"},"servers":[{"url":"https://{host}/platform/rollup/v1/","variables":{"host":{"enum":["api-euw1.rms.com","api-use1.rms.com"],"default":"api-euw1.rms.com","description":"Data center that hosts the tenant instance: api-euw1.rms.com or api-use1.rms.com"}}}],"security":[{"rms_api_key":[]},{"rms_bearer_token":[]}],"x-readme":{"explorer-enabled":false,"parameter-ordering":["header","path","query","body","form","cookie"],"samples-languages":["json","curl","python","java","csharp","node"],"proxy-enabled":true,"samples-enabled":true},"paths":{"/jobs":{"post":{"tags":["Rollup Jobs"],"summary":"Create rollup job","operationId":"createRollupJob","parameters":[{"name":"x-rms-resource-group-id","description":"ID of <<glossary:resource group>>. Operation is assigned to this resource group's quota. See [Resource Groups](doc:resource-management)","in":"header","required":true,"schema":{"type":"string","default":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","format":"uuid"}}],"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/ProgramRollupRequest"},{"$ref":"#/components/schemas/ProgramVariationRollupRequest"},{"$ref":"#/components/schemas/BusinessHierarchyRollupRequest"}]}}}},"responses":{"201":{"description":"Created","headers":{"Location":{"description":"Adds job to workflow queue and returns job URL with `jobId`. Poll job URL for job status.","schema":{"type":"string","format":"uri","example":"https://api-use1.rms.com/platform/rollup/v1/jobs/23112"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}}}}},"/jobs/{jobId}":{"get":{"tags":["Rollup Jobs"],"summary":"Get rollup job","operationId":"getRollupJob","parameters":[{"$ref":"#/components/parameters/JobIdParam"}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Job"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}}}},"patch":{"tags":["Rollup Jobs"],"summary":"Update rollup job","operationId":"updateRollupJob","parameters":[{"$ref":"#/components/parameters/JobIdParam"}],"requestBody":{"description":"Update rollup analysis job parameters.","required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"status":{"type":"string","description":"Updated status for rollup analysis job.","enum":["CANCELED"]}}}}}},"responses":{"202":{"description":"Accepted"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"422":{"description":"Unprocessable Entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorMessage"}}}}}}}},"components":{"parameters":{"AutoRunParam":{"name":"autorun","in":"query","description":"runs the job immediately if the settings are valid","schema":{"type":"boolean","default":true}},"JobIdParam":{"name":"jobId","in":"path","description":"ID of rollup analysis job.","schema":{"type":"string"},"required":true},"ProfileIdParam":{"name":"profileId","in":"path","description":"ID of profile.","schema":{"type":"number","format":"int64"},"required":true}},"schemas":{"Task":{"type":"object","properties":{"taskId":{"type":"integer","format":"int32","description":"ID of task."},"guid":{"type":"string","format":"uuid"},"jobId":{"type":"string","format":"int64","description":"ID of rollup analysis job."},"status":{"type":"string","description":"Status of rollup analysis job.","example":"CANCELED"},"submittedAt":{"type":"string","format":"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'","example":"2020-01-01T00:00:00.000Z","description":"Date job was submitted in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"createdAt":{"type":"string","format":"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'","example":"2020-01-01T00:00:00.000Z","description":"Date job was created in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"name":{"type":"string"},"percentComplete":{"type":"integer","format":"int32","description":"Percentage of job completed."},"priorTaskGuids":{"type":"array","items":{"type":"string","format":"uuid"}},"output":{"type":"object","properties":{"summary":{"type":"string"},"errors":{"type":"array","items":{"type":"object","properties":{"message":{"type":"string"}}}},"log":{"type":"object","properties":{"analysisId":{"type":"integer","format":"int64","nullable":false},"resourceType":{"type":"string","description":"Exposure resource analyzed.","enum":["program","businessHierarchy"],"nullable":false},"resourceName":{"type":"string","description":"Name of exposure resource."},"resourceId":{"type":"integer","format":"int64","nullable":false,"description":"ID of exposure resource."},"securableSetUri":{"type":"string","format":"uri","nullable":false},"securableSetName":{"type":"string"},"variationUri":{"type":"string","format":"uri"}}}}}}},"JobSummary":{"type":"object","properties":{"jobId":{"type":"string","format":"int64","description":"ID of rollup analysis job."},"priority":{"type":"string","description":"Priority of rollup analysis job.","enum":["verylow","low","medium","high","veryhigh"]},"userName":{"type":"string","format":"email","description":"Login of <<glossary:principal>> that submitted job, e.g. `user.name@company.com` or `SSO_user.name@company` for <<glossary:federated tenant>>s. Login strings are lowercase. See [Logins](principals).","example":"user.name@company.com"},"status":{"type":"string","description":"Status of rollup analysis job.","enum":["QUEUED","RUNNING","FINISHED","FAILED","CANCELLED","PENDING","CANCELLING","CANCEL_REQUESTED"]},"submittedAt":{"type":"string","format":"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'","example":"2020-01-01T00:00:00.000Z","description":"Date job was submitted in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"startedAt":{"type":"string","format":"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'","example":"2020-01-01T00:00:00.000Z","description":"Date job started in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"endedAt":{"type":"string","format":"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'","example":"2020-01-01T00:00:00.000Z","description":"Date job ended in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"name":{"type":"string"},"type":{"type":"string"},"progress":{"type":"integer","format":"int32"},"details":{"type":"object","properties":{"resources":{"type":"array","items":{"type":"object","properties":{"uri":{"type":"string","format":"uri"}}}},"summary":{"type":"string"}}}}},"Job":{"type":"object","allOf":[{"$ref":"#/components/schemas/JobSummary"},{"type":"object","properties":{"tasks":{"type":"array","items":{"$ref":"#/components/schemas/Task"}}}}]},"ProgramRollupRequest":{"required":["resourceUri","settings"],"allOf":[{"$ref":"#/components/schemas/RiskdataResourceRequestObject"},{"type":"object","properties":{"settings":{"description":"Settings for program rollup analysis.","$ref":"#/components/schemas/ProgramRollupSettings"}}}]},"ProgramVariationRollupRequest":{"required":["resourceUri","settings"],"allOf":[{"$ref":"#/components/schemas/RiskdataResourceRequestObject"},{"type":"object","properties":{"settings":{"description":"Settings for program rollup analysis.","$ref":"#/components/schemas/ProgramRollupSettings"}}}]},"BusinessHierarchyRollupRequest":{"required":["resourceUri","settings"],"allOf":[{"$ref":"#/components/schemas/RiskdataResourceRequestObject"},{"type":"object","properties":{"settings":{"$ref":"#/components/schemas/BusinessHierarchyRollupSettings"}}}]},"ErrorMessage":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"},"logId":{"type":"string"}}},"RiskdataResourceRequestObject":{"type":"object","properties":{"resourceUri":{"$ref":"#/components/schemas/RiskdataResource"}}},"RiskdataResource":{"type":"string","format":"uri","description":"URI of exposure resource.","example":"platform/riskdata/v1/programs/1134342"},"ProgramRollupSettings":{"type":"object","required":["analysisName","startDate","endDate"],"properties":{"currency":{"description":"Currency scheme with the version of exchange rates used in the rollup analysis.","type":"object","required":["currencyCode","currencySchemeCode","currencyVintageCode"],"properties":{"currencyCode":{"type":"string","description":"Code that identifies default currency used to calculate losses. Corresponds to a value in the specified currency scheme (`scheme`). If RMS Currency Scheme, conforms to [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) standard.","example":"USD"},"currencySchemeCode":{"type":"string","description":"Name of <<glossary:currency scheme>> used to calculate the value of specified currency (`currencyCode`) based on the exchange rate between that currency and the scheme's <<glossary:anchor currency>> at the specified point in time (`vintage`).","example":"RMS"},"currencyVintageCode":{"type":"string","description":"Version of <<glossary:currency scheme>> that defines exchange rate between the <<glossary:anchor currency>> and the specified currency (`currencyCode`).","example":"RL25"}}},"name":{"type":"string"},"analysisName":{"type":"string","description":"Name of rollup analysis."},"numberOfSimulationPeriods":{"type":"integer","format":"int32","description":"Number of simulation periods in rollup analysis."},"numberOfScenarioSimulationPeriods":{"type":"integer","format":"int32"},"startDate":{"type":"string","format":"date-time","description":"Start date of rollup analysis in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"endDate":{"type":"string","format":"date-time","description":"End date of rollup analysis in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"includeSubjects":{"type":"boolean"},"includeProgram":{"type":"boolean","default":true},"includeIntermediate":{"type":"boolean","default":true},"includePricing":{"type":"boolean","default":false},"programProperties":{"$ref":"#/components/schemas/ProgramProperties"},"outputParameters":{"$ref":"#/components/schemas/OutputParameters"},"modelSettingsSetUuid":{"type":"string","format":"uuid","description":"UUID of model settings set."}}},"OutputParameters":{"type":"object","properties":{"stats":{"type":"array","items":{"type":"array","items":{"type":"string","enum":["Peril","Continent","Country","Admin1","LOB"]}}},"eps":{"type":"array","items":{"type":"array","items":{"type":"string","enum":["Peril","Continent","Country","Admin1","LOB"]}}},"plts":{"type":"array","items":{"type":"array","items":{"type":"string","enum":["Peril","Continent","Country","Admin1","LOB"]}}}}},"BusinessHierarchyProperties":{"required":["alignInceptionDates","programRecalculationType","shareSetId","usePrime"],"type":"object","properties":{"shareSetId":{"type":"string","format":"uuid"},"programRecalculationType":{"type":"string","enum":["SKIP","RECALCULATE","USE_LATEST"]},"usePrime":{"type":"boolean"},"alignInceptionDates":{"type":"boolean"},"modelSetUuid":{"type":"string","description":"UUID of model set.","format":"uuid"},"scenarioSetUuid":{"type":"string","format":"uuid","description":"UUID of scenario set."},"includeTreaties":{"type":"boolean","default":false,"description":"If `true`, program treaties are included in rollup analysis."},"contributorySettings":{"required":["positionUuids","segmentations"],"type":"object","properties":{"segmentations":{"type":"array","items":{"$ref":"#/components/schemas/Segmentations"}},"positionUuids":{"type":"array","items":{"type":"string","format":"uuid"}}}}}},"ProgramProperties":{"required":["alignInceptionDates"],"type":"object","properties":{"modelSetUuid":{"type":"string","format":"uuid","description":"UUID of model."},"scenarioSetUuid":{"type":"string","format":"uuid","description":"UUID of scenario."},"alignInceptionDates":{"type":"boolean"},"corporateFormulaUuid":{"type":"string","format":"uuid"},"technicalFormulaUuid":{"type":"string","format":"uuid"},"marginalImpactProperties":{"$ref":"#/components/schemas/MarginalImpactParameters"}}},"MarginalImpactParameters":{"required":["analysisId","businessHierarchyId","isSegmented"],"type":"object","properties":{"businessHierarchyId":{"type":"integer","format":"int64"},"analysisId":{"type":"integer","description":"ID of analysis result.","format":"int64"},"positionUuid":{"type":"string","format":"uuid"},"predecessorId":{"type":"string","format":"uuid"},"isSegmented":{"type":"boolean"}}},"Segmentations":{"required":["contributionOf","contributionTo"],"type":"object","properties":{"contributionOf":{"type":"array","uniqueItems":true,"items":{"type":"string","enum":["Contract","Admin1","Country"]}},"contributionTo":{"type":"array","uniqueItems":true,"items":{"type":"string","enum":["Peril","Continent","Country"]}}}},"BusinessHierarchyRollupSettings":{"type":"object","required":["analysisName","startDate","endDate"],"properties":{"currency":{"type":"object","description":"Currency scheme with the version of exchange rates used in the rollup analysis result.","properties":{"currencyCode":{"type":"string","description":"Code that identifies default currency used to calculate losses. Corresponds to a value in the specified currency scheme (`scheme`). If RMS Currency Scheme, conforms to [ISO currency code](https://www.iso.org/iso-4217-currency-codes.html) standard.","example":"USD"},"currencySchemeCode":{"type":"string","description":"Name of <<glossary:currency scheme>> used to calculate the value of specified currency (`currencyCode`) based on the exchange rate between that currency and the scheme's <<glossary:anchor currency>> at the specified point in time (`vintage`).","example":"RMS"},"currencyVintageCode":{"type":"string","description":"Version of <<glossary:currency scheme>> that defines exchange rate between the <<glossary:anchor currency>> and the specified currency (`currencyCode`).","example":"RL25"}}},"name":{"type":"string"},"numberOfSimulationPeriods":{"type":"integer","format":"int32"},"numberOfScenarioSimulationPeriods":{"type":"integer","format":"int32"},"startDate":{"type":"string","format":"date-time","description":"Start date of rollup analysis result in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"endDate":{"type":"string","format":"date-time","description":"End date of rollup analysis result in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format, e.g. 2020-01-01T00:00:00.000Z"},"includeSubjects":{"type":"boolean","description":"If `true`, subjects are included in rollup analysis result."},"includeProgram":{"type":"boolean","default":true,"description":"If `true`, program is included in rollup analysis result."},"includeIntermediate":{"type":"boolean","default":true,"description":" "},"includePricing":{"type":"boolean","description":"If `true`, rollup analysis result includes pricing.","default":false},"BusinessHierarchyProperties":{"$ref":"#/components/schemas/BusinessHierarchyProperties"},"outputParameters":{"$ref":"#/components/schemas/OutputParameters"},"modelSettingsSetUuid":{"type":"string","format":"uuid","description":"UUID of model settings set."}}}},"securitySchemes":{"rms_bearer_token":{"type":"http","description":"RMS tenant specific bearer token to make authorized requests with temporary life span","scheme":"bearer","bearerFormat":"JWT"},"rms_api_key":{"type":"apiKey","name":"Authorization","description":"RMS tenant specific api key to make authorized requests","in":"header"}}}}