Resource Groups

Overview

A resource group is a mechanism for allocating Intelligent Risk Platform resources and for managing resource quotas within an tenant organization.

A business may license multiple Intelligent Risk Platform applications that utilize the Risk Intelligent Platform and allocate different resource quotas for each of these applications.

Resource groups enable the Intelligent Risk Platform to determine which application is utilizing Intelligent Risk Platform resources and ensure that compute capacity is correctly allocated to the applications used within in a tenant's organization.

When do I pass a resource group ID?

Client applications making use of platform resources through the Risk Modeler API may pass a resource group ID in the header of requests that initiate workflow jobs.

The custom X-Rms-Resource-Group-Id header accepts a resource group ID that identifies the application (Risk Modeler or UnderwriteIQ) making the request and thereby enables the Intelligent Risk Platform to determine which resource quota to "charge" for performing the API call.

An organization should specify resource group ID numbers if they want to better manage their resource quotas across different applications:

  • If your tenant has licensed Risk Modeler only, you do not need to pass resource group IDs in requests to the Intelligent Risk Platform. You can specify a resource group ID, but it is not mandatory. The Intelligent Risk Platform assumes that unidentified requests that initiate workflow jobs are for Risk Modeler applications.
  • If your tenant has licensed UnderwriteIQ only, you must pass a valid resource group ID with every request that initiates a job on the workflow engine.
  • If your tenant has licensed both Risk Modeler and UnderwriteIQ, you must pass a resource group ID to run UnderwriteIQ workflow jobs. If no resource group ID is passed, the Intelligent Risk Platform will initiate a Risk Modeler workflow job.

Using resource group IDs with the Risk Modeler API

The Intelligent Risk Platform currently makes resource groups available to tenants that have licensed the Risk Modeler and UnderwriteIQ applications. For each application, the tenant is seeded a resource group that identifies that application.

Both of the Risk Modeler and UnderwriteIQ applications use Risk Modeler API endpoints to initiate workflow jobs. Tenants may use resource groups to manage access to the platform on an application-by-application basis. Clients may pass the resource group ID in the header of of every request that initiate workflow job to ensure that usage of their quota is correctly allocated.

Intelligent Risk Platform provides an API for retrieving information about that tenant's resource groups (i.e. the resource group ID) and a custom header for passing that resource group ID to that platform in requests that initiate workflow jobs.

Step 1: Obtain resource group ID

The Entitlements API enables clients to retrieve the resource group IDs assigned to a tenant.

As with all Intelligent Risk Platform requests, you must specify a host in the resource URL and provide a valid API key in the request header. The {host} variable identifies the environment hosting your application instance (one of api-euw1.rms.com or api-use1.rms.com) and the apiKey specifies an API key token.

curl --location --request GET "https://{host}/platform/tenantdata/v1/entitlements/{entitlement}/resourcegroups" 
    --header "Authorization: {api_key}" 

The entitlement path parameter specifies the licensed Intelligent Risk Intelligence application. One of RI-RISKMODELER or RI-UNDERWRITEIQ.

Step 2: Pass resource group ID in request header

All Intelligent Risk Platform endpoints that create workflow jobs now accept an optional custom header X-Rms-Resource-Group-Id, in which the client may pass a resource group ID. The Intelligent Risk Platform uses this resource group ID to identify which application is utilizing platform resources.

For example, the Manage exposures in batch resource initiates an EXPOSURE_BATCH_EDIT job on the workflow engine. Both the Risk Modeler and UnderwriteIQ applications may use this service to create, update, and delete batches of exposures.

A tenant that has licensed both the Risk Modeler and UnderwriteIQ applications, should specify the appropriate resource group ID in the X-Rms-Resource-Group-Id header.


curl --location --request POST "https://{host}/riskmodeler/v3/exposurebatches?datasource={myEDM}"
    --header "Authorization: {api_key}" 
    --header "X-Rms-Resource-Group-Id: {resource_group_id}"
    --data "{exposure_data}"

If no resource group ID is specified in the request, the Intelligent Risk Platform will allocate the work to the resource quota of the Risk Modeler resource group.