December 2024

🥥

Highlights

The December release introduces

  • The Batch API now supports polling the status of specific tasks within a batch job. A batch job defines a series of tasks that are managed and performed in sequence. The API supports operations for running, updating, retrieving batch jobs.

  • The Bulk Geohaz API supports operations for geocoding exposures in bulk. Licensed clients can leverage AWS APIs to upload text-delimited flat files of data to AWS, and use the Bulk Geohaz API to geocode those exposures without importing those exposures into the Intelligenct Risk Platform or utilizing Moody's applications (e.g. Risk Modeler).

  • The Reference Data API now supports operations for managing TreatyIQ rollup reference data including rollup models, rollup defaults, pricing formulae, and share sets.

    Learn More

Batch API

The Batch API exposes operations that enable client applications to define and execute user-defined workflows as batch jobs.

A user-defined workflow is a series of operations that are managed in sequence. These operations are defined as a series of task objects in JSON format. Each of these tasks represents an expensive or long-running process that is submitted to the workflow engine in a single request as part of a BATCH job for processing. To learn more, see Resource URIs.

The following resource URIs can be submitted as tasks in a batch job:

  • /platform/model/v1/jobs
  • /platform/geohaz/v1/jobs
  • /platform/grouping/v1/jobs
  • /platform/export/v1/jobs
  • /platform/riskdata/v1/analyses/{analysisId}/pate
  • /platform/riskdata/v1/reports
  • /platform/riskdata/v1/v1/exposures/{exposureId}/bulk-edit

📷

Limitations

This operation's request package may define a workflow that managed up to 1000 exposures in JSON format. Consequently, this operation supports request packages of up to 5MB.

Get Batch Job Task

The Get Batch Job Task operation (GET /platform/batch/v1/jobs/{jobId}/tasks/{taskId}) returns information about a specific task in a user-defined workflow.

A batch job consists of multiple tasks that are linked together into a user-defined workflow. These tasks are performed in order according to rules specified in request body of the batch job. Each task in the user-defined workflow is identified by a system-defined task ID.

This operation enables the client to request information about a specific task within a particular workflow. The jobId and taskId path parameters are required. The client can retrieve that the ID numbers of tasks within a user-defined workflow using the Get Batch Job operation.

Bulk Geohaz API

The Bulk Geohaz API supports operations for geocoding exposures in bulk.

This API enables licensed clients to geocode large volumes of exposure data using Moody' RMS models without importing those exposures into the Intelligenct Risk Platform or otherwise utilizing Moody's applications (e.g. Risk Modeler).

Client can upload flat files of location exposure data to folders on AWS S3, and use Bulk Geohaz API operations to geocode those exposures in bulk. The current release supports the geocoding of location exposures only. Future releases will add support for lookups of hazard data as well. For an overview of the bulk geocoding workflow, see the Bulk Geohaz API Overview.

Create Bulk Geohaz Folder

The Create Bulk Geohaz Folder operation (POST /platform/bulkgeohaz/v1/folders) creates a bulk geohaz folder on AWS and returns signed credentials that enable the client to upload flat files of exposures data.

Uploaded files can be compressed using a variety of compression types: BZIP2,GZIP,LZ4, SNAPPY, DEFLATE.

Create Bulk Geohaz Job

The Create Bulk Geohaz Job operation (POST /platform/bulkgeohaz/v1/job) initiates a BULK_GEOHAZjob that geocodes exposure data uploaded to the specified BULK_GEOHAZ` folder.

A BULK_GEOHAZ folder is a temporary storage location and a logical path on AWS S3. Intelligent Risk Platform tenants can upload flat files of text-delimited exposure data in CSV format to BULK_GEOHAZ folder prior to initiating a bulk geocoding job.

This operation accepts the folderId, delimiter (COMMA, SEMICOLON, TAB, TILDE), and other layer-specific settings as parameters in the request body.

{
  "settings": {
    "folderId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "delimiter": "TILDE",
    "jobName": "geocode new sites",
    "layers": [
      {
        "options": {
        ...
        }
      }
    ]
  }
}

The layers array accepts a number options objects. In the current release, the Bulk Geohaz API supports geocoding only. Conseqently, the settings object accepts only a single layer.

OptionTypeDescription
aggregateTriggerBooleanIf false, returns coordinates for lower resolution matches. If true, sets coordinates to (0.0, 0.0) in lower resolutions.
forceCountryLevelBooleanIf false, locations are skipped if the only properties specified are the countryCode and countryScheme. If true, locations are geocoded whenever the countryCode and countrySchemes properties are valid, and the geoResolutionCode is automatically set to 14.
licenseTypeBooleanIf 0 uses RL engine. If 1, uses HD engine.
skipPrevGeocodedBooleanIf true, skips locations with a geoResolutionCode that is greater than 0.

Update Bulk Geohaz Job

The Update Bulk Geohaz Job operation (PATCH /platform/bulkgeohaz/v1/job/{jobId}) updates the status or priority of the specified BULK_GEOHAZ job.

Get Bulk Geohaz Job

The Get Bulk Geohaz Job operation (GET /platform/bulkgeohaz/v1/job/{jobId}) polls the specified BULK_GEOHAZ job and returns information about the job status.

Reference Data API

Rollup Models

Create Rollup Model

The Create Rollup Model operation (POST /referencedata/v1/models) creates a rollup model.

All parameters are specified in the request body:

{
  "modelName": "string",
  "description": "string",
  "modelType": "SIMULATED",
  "perilCode": "string",
  "countryIds": [],
  "lobIds": []
}

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
NONOYES

To learn more about role-based permissions, see Access Controls.

Search Rollup Models

The Search Rollup Models operation (GET /reference/searchrollupmodels) returns a list of rollup models.

This operation supports response filtering based the value of a subset of properties. Depending on the property, you may use a combination of comparison operators, list operators, and logical operators.

If successful, returns 200 Success and a list of the rollup models that match the specified filter.

[
  {
    "uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "modelName": "string",
    "description": "string",
    "modelType": "SIMULATED",
    "perilCode": "string",
    "regionCode": "string",
    "eventSetVersionCode": "string",
    "adminIds": [{}],
    "zoneIds": [{}],
    "countryIds": [{}],
    "lobIds": [{}],
    "isActive": true,
    "versionsCount": 0,
    "createdBy": "string",
    "createdAt": "2024-12-17T23:48:29.478Z",
    "updatedBy": "string",
    "updatedAt": "2024-12-17T23:48:29.478Z",
    "isExecutable": true
  }
]

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Get Rollup Model

The Get Rollup Model operation (GET /referencedata/v1/models/{uuid}) returns the specified rollup model.

If successful, returns 200 Success and information about the the specified rollup model.

{
  "uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "modelName": "string",
  "description": "string",
  "modelType": "SIMULATED",
  "perilCode": "string",
  "regionCode": "string",
  "eventSetVersionCode": "string",
  "adminIds": [{}],
  "zoneIds": [{}],
  "countryIds": [{}],
  "lobIds": [{}],
  "validSimulationSets": [
    {
      "id": 0,
      "name": "string"
    }
  ],
  "validEventRateSchemes": [
    {
      "id": 0,
      "name": "string"
    }
  ],
  "validModelProfiles": [
    {
      "id": 0,
      "name": "string",
      "isRmsDefault": true
    }
  ],
  "isActive": true,
  "isCustom": true,
  "versionsCount": 0,
  "createdBy": "string",
  "createdAt": "2024-12-17T23:47:06.555Z",
  "updatedBy": "string",
  "updatedAt": "2024-12-17T23:47:06.555Z",
  "isExecutable": true
}

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Update Rollup Model

The Update Rollup Model operation (PATCH /referencedata/v1/models/{uuid}) updates the specified rollup model.

The request body specifies updates to the rollup model:

{
  "modelName": "string",
  "description": "string",
  "defaultModelVersionUuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "isActive": {}
}

If successful, returns a 204 Success response.

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
NONOYES

To learn more about role-based permissions, see Access Controls.

Delete Rollup Model

The Delete Rollup Model operation (DELETE /referencedata/v1/models/{uuid}) deletes the specified rollup model.

If successful, returns a 204 Success response.

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
NONOYES

To learn more about role-based permissions, see Access Controls.

Rollup Defaults

Search Rollup Defaults

The Search Rollup Defaults operation (GET /referencedata/v1/rollup-defaults) returns a list of rollup defaults.

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Update Search Rollup Defaults

The Update Rollup Defaults operation (GET /referencedata/v1/updaterollup-defaults) returns a list of rollup defaults.

Risk Data API

List Imported RDMs

The Search Imported RDMs operation (GET /platfrom/riskdata/v1/analyses/imported-rdm) returns a list of imported RDMs and exposures.

This operation supports response filtering based the value of a subset of properties. Depending on the property, you may use a combination of comparison operators, list operators, and logical operators.

Convert PLT to ELT Analysis

The Convert PLT to ELT Analysis operation (POST /platform//riskdata/v1/analyses/{id}/convert-plt-to-elt) converts the specified PLT-based analysis iinto a new ELT-based analysis as a post-analysis action.

This operation uses the specified PLT-based analysis as a reference analysis and generates a completely new ELT-based analysis that is identified by a unique analysis ID. The reference PLT analysis is retained. The reference analysis may be based on an HD EP analysis or from the grouping of multiple PLT analyses.

The analysisId path parameter and x-rms-resource-group-id header parameter are required. The client must be assigned either the RI-RISKMODELER or RI-UNDERWRITEIQ entitlement to perform this operation.

If successful, returns a 201 Created response.

{
  "jobId": "29947913",
  "userName": "[email protected]",
  "status": "FINISHED",
  "submittedAt": "2024-12-13T18:52:45.309Z",
  "startedAt": "2024-12-13T18:52:59Z",
  "endedAt": "2024-12-13T18:57:47Z",
  "name": "PLT_TO_ELT",
  "type": "PLT_TO_ELT",
  "progress": 100,
  "priority": "medium",
  "entitlement": "RI-RISKMODELER",
  "resourceGroupId": "a7ab0874-ffe3-416e-bfdd-b80ad8c6109b",
  "details": {
    "resources": [
      "/platorm/riskdata/v1/analyses/2312" //this is the analysisriid from the platform POST
    ],
    "summary": "PLT_TO_ELT is successful"
  },
  "warnings": [],
  "tasks": [
    {
      "taskId": "1",
      "guid": "4e6cb605-daf6-4fb6-9494-756e0b19053f",
      "jobId": "29947913",
      "status": "Succeeded",
      "submittedAt": "2024-12-13T18:52:46.369Z",
      "createdAt": "2024-12-13T18:52:45.303Z",
      "name": "HD_TO_RDM_27084",
      "percentComplete": 100,
      "output": {}
    },
    {
      "taskId": "2",
      "guid": "91ed21fc-ffa7-47a9-91be-f1f628533170",
      "jobId": "29947913",
      "status": "Succeeded",
      "submittedAt": "2024-12-13T18:57:00.382Z",
      "createdAt": "2024-12-13T18:52:45.304Z",
      "name": "PLTDLMEngine",
      "percentComplete": 100,
      "priorTaskGuids": ["4e6cb605-daf6-4fb6-9494-756e0b19053f"],
      "output": {
        "summary": "",
        "errors": [],
        "log": {
          "referenceAnalysisName": "RMS_EDM_EUWS_HD_SS_34679",
          "referenceAppAnalysisID": "27084",
          "referenceAnalysisId": "708318", //riid
          "newAnalysisName": "RMS_EDM_EUWS_HD_SS_34679",
          "newAppAnalysisID": "61468",
          "newAnalysisId": "2140045" //riid
        }
      }
    }
  ]
}

Programs

Get Pricing Formulas

The Get Default Pricing Formulas by Program operation (GET /pricingFormulas) returns a list of the default corporate and technical pricing formulas for the specified program.

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Share Sets

A share set is a collection of program, program variation, treaty, and retrocession data, which facilitates portfolio analysis. This data is stored in a text-delimited flat file.

A share set can contain up to 30,000 values, including up to 2000 program variations, five treaties per program variation, and one share per program variation.

TreatyIQ validates the values in the uploaded share set and alerts you of any issues with the uploaded data. Share set data can also be used to overwrite existing data in TreatyIQ and downloaded for further editing offline.

Create Share Set

The Create Share Set operation (POST /platfrom/riskdata/v1/sharesets) creates a share set.

The request body specifies the name of the share set.

{
  "shareSetName": "string",
  "description": "string",
  "isActive": true,
  "isDefault": false
}

If successful, returns 201 Success response and the share set's uuid and ShareSetId:

{
  "uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "shareSetId": 0
}

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Search Share Sets

The Search Share operation (GET /platfrom/riskdata/v1/sharesets`) returns a list of share sets.

If successful, returns 200 Success and an array of share sets. For each share set, it returns information about its status:

[
  {
    "uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "shareSetId": 0,
    "shareSetName": "string",
    "description": "string",
    "isActive": true,
    "isDefault": true,
    "isDataUploaded": true,
    "createdAt": "2024-12-17T21:45:29.026Z",
    "createdBy": "string",
    "modifiedAt": "2024-12-17T21:45:29.026Z",
    "modifiedBy": "string"
  }
]

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Get Share Set

The Get Share Set operation (GET /platfrom/riskdata/v1/sharesets/{shareSetId}) returns the specified share set.

If successful, returns 200 Success and information about the specified share set.

{
  "uuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "shareSetId": 0,
  "shareSetName": "string",
  "description": "string",
  "isActive": true,
  "isDefault": true,
  "isDataUploaded": true,
  "createdAt": "2024-12-17T21:46:29.439Z",
  "createdBy": "string",
  "modifiedAt": "2024-12-17T21:46:29.439Z",
  "modifiedBy": "string"
}

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Update Share Set

The Update Share Set operation (PATCH /platfrom/riskdata/v1/sharesets/{shareSetId}) updates the specified share set.

The request specifies:

[
  {
    "operation": "UPDATE",
    "targetProperty": "string",
    "value": "string"
  }
]

If successful, returns 204 Success response.

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.

Delete Share Set

The Delete Share Set operation (DELETE /platfrom/riskdata/v1/sharesets/{shareSetId}) deletes the specified share set.

If successful, returns 204 Success response.

🍐

Permissions

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. The table identifies the roles with permission to perform this operation.

Treaty Pricing ManagerTreaty UnderwriterTreatyIQ Admin
YESYESYES

To learn more about role-based permissions, see Access Controls.