Risk Modeler, November 2022

The November release introduces the Reports API, role-based permissions, and premium Locations attribute data.

Data Source API

The Get server instances operation (GET /[v1][v2]/databasources/db-instances) returns information about the tenant's managed server instances on Data Bridge.

The updated operation now returns information about the available disk space on each server instance. The response now returns three new attributes: totalDiskSpaceInMb, availableDiskSpaceInMb, and usedDiskSpaceInMb:

[
    {
        "name": "databridge-1",
        "namespace": "DATA_BRIDGE",
        "id": 1457098903,
        "status": "ACTIVE",
        "totalDiskSpaceInMb": "2096128", 
        "availableDiskSpaceInMb": "1995111", 
        "usedDiskSpaceInMb": "101018", 
        "defaultServer": false
    }
]

The Get EDMs operation (GET /[v1][v2]/databasources) now returns additional information about the tenant's EDM data sources.

The operation now returns the dataVersion and createDate attributes:

{
    "searchTotalMatch": 104,
    "searchItems": [
        {
            "datasourceName": "Api Automation Exposure Set Test V2",
            "permissionType": 12,
            "isDefault": false,
            "metrics": {
                "dbsize_actual": "80448",
                "accountCount": 0,
                "size": "78 MB",
                "cedantCount": 0,
                "locationCount": 0,
                "portfolioCount": 0,
                "treatyCount": 0,
                "dataVersion": "22", 
                "aggregatedPortfolioCount": 0,
                "lastModified": "2022-10-07 17:30:08.00"
            },
            "serverState": "READY",
            "serverNamespace": "RISK_MODELER",
            "owner": "[email protected]",
            "exposureSetId": "efafdd07-587e-44e8-xxxx-4c8051cb20f5",
            "createDate": "2022-10-07 11:35:13.00", 
            "datasourceId": 0
        },
                ...
    ]
}

The Administer data source operation (POST /[v1][v2]/databasources) now suppports three operations: CREATE, DOWNLOAD_EDM, and EDM_DATA_UPGRADE.

The newly added EDM_DATA_UPGRADE operation enables you to upgrade the specified EDM data source to the latest EDM data version. Currently, version 22. The API service accepts two query parameters. The datasources query parameter specifies the EDM to update. The operation query parameter identifies the operation performed:

curl --request POST \
     --url 'https://{host}/riskmodeler/v1/datasources?datasourcename=myEDM&operation=EDM_DATA_UPGRADE' \
     --header 'Authorization: XXXXXXXXXX' \
     --header 'accept: application/json'

Locations API

The Get location operation (GET /v1/locations/{id}) returns detailed information about a specific location. This service now supports premium hazard data for all earthquake (EQ), flood (FL), fire (FR), severe convective storm (TO), terrorism (TR), and winterstorm (WS) perils.

Premium hazard data is only available for high-resolution locations, i.e. locations that have been geocoded at postal code resolution (GeoResolutionCode=5) or better.

🍊

Licensing

Premium hazard data is available to Intelligent Risk Platform tenants based on a separate license.

RMS makes premium hazard data available to all Intelligent Risk Platform tenants on a temporary basis. In the future, premium hazard data will be separately licensed.

The updated operation now returns premium peril attributes.

  • New FlDetail attributes: score1, score2, score3, scoreOverall, fl10YRInlandDepthUndef, fl30YRInlandDepthUndef, fl50YRInlandDepthUndef, fl100YRInlandDepthUndef, fl200YRInlandDepthUndef, fl250YRInlandDepthUndef, fl500YRInlandDepthUndef and fl1000YRInlandDepthUndef.
  • New EqDetail attributes: percentInGeography, score1, score2, score3, scoreOverall, mmi100, mmi200, mmi250, mmi475, mmi500, mmi1000, mmi1500, faultsName1, faultsDistance1, faultsReturnPeriodM601, faultsReturnPeriodM651, faultsReturnPeriodM701, faultsName2, faultsDistance2, faultsReturnPeriodM602, faultsReturnPeriodM652, faultsReturnPeriodM702, faultsName3, faultsDistance3, faultsReturnPeriodM603, faultsReturnPeriodM653, faultsReturnPeriodM703, faultsName4, faultsDistance4, faultsReturnPeriodM604, faultsReturnPeriodM654, faultsReturnPeriodM704, faultsName5, faultsDistance5, faultsReturnPeriodM605, faultsReturnPeriodM655, faultsReturnPeriodM705, faultsBackgroundRates, mineName1, mineType1, mineStatus1, mineArea1, mineDistance1, mineName2, mineType2, mineStatus2, mineArea2, mineDistance2, mineName3, mineType3, mineStatus3, mineArea3, mineDistance3, mineName4, mineType4, mineStatus4, mineArea4, mineDistance4, mineName5, mineType5, mineStatus5, mineArea5, mineDistance5, sinkHoleArea1, sinkHoleDistance1, sinkHoleArea2, sinkHoleDistance2, sinkHoleArea3, sinkHoleDistance3, sinkHoleArea4, sinkHoleDistance4, sinkHoleArea5 and sinkHoleDistance5.
  • New FrDetail attributes: percentInGeography, score1, scoreOverall, distanceToWuiIntermix, distanceToWuiInterface, stochasticBurnProb, urbanConFlagRationScore, distanceToCalFireVeryHigh, distanceToCalFireHigh, distanceToCalFireMedium, yearLastHistFire250m, histFireYearCount250m, histFireYearCount2km, histFireYearCount5km, histFireYearCount10km, histFireYearCount20km, firestationsName1, firestationsLatitude1, firestationsLongitude1, firestationsDistance1, firestationsStreetAddress1, firestationsCityName1, firestationsPostalCode1, firestationsAdmin2name1, firestationsAdmin1code1, firestationsLevel1, firestationsEms1, firestationsFirestationType1, firestationsName2, firestationsLatitude2, firestationsLongitude2, firestationsDistance2, firestationsStreetAddress2, firestationsCityName2, firestationsPostalCode2, firestationsAdmin2name2, firestationsAdmin1code2, firestationsLevel2, firestationsEms2, firestationsFireStationType2, firestationsName3, firestationsLatitude3, firestationsLongitude3, fireStationsDistance3, fireStationsStreetaddress3, fireStationsCityname3, fireStationsPostalcode3, fireStationsAdmin2name3, fireStationsAdmin1code3, fireStationsLevel3, fireStationsEms3, fireStationsFireStationType3, fireStationsName4, fireStationsLatitude4, fireStationsLongitude4, fireStationsDistance4, fireStationsStreetAddress4, fireStationsCityName4, fireStationsPostalCode4, fireStationsAdmin2name4, fireStationsAdmin1code4, fireStationsLevel4, fireStationsEms4, fireStationsFireStationType4, fireStationsName5, fireStationsLatitude5, fireStationsLongitude5, fireStationsDistance5, fireStationsStreetAddress5, fireStationsCityName5, fireStationsPostalcode5, fireStationsAdmin2name5, fireStationsAdmin1code5, fireStationsLevel5, fireStationsEms5 and fireStationsFireStationType5.
  • New ToDetail attributes: dominantSubperilCS, percentInGeographyCS, score1CS, score2CS, score3CS, scoreOverallCS, dominantSubperilWT, percentInGeographyWT, score1WT, score2WT, score3WT and scoreOverallWT.
  • New TrDetail attributes: score1, scoreOverall, targetsName1, targetsId1, targetsScore1, targetsDistance1, targetsCategory1, targetsCityName1, targetsAdmin1code1, targetsName2, targetsId2, targetsScore2, targetsDistance2, targetsCategory2, targetsCityName2, targetsAdmin1code2, targetsName3, targetsId3, targetsScore3, targetsDistance3, targetsCategory3, targetsCityName3, targetsAdmin1code3, targetsName4, targetsId4, targetsScore4, targetsDistance4, targetsCategory4, targetsCityName4, targetsAdmin1code4, targetsName5, targetsId5, targetsScore5, targetsDistance5, targetsCategory5, targetsCityName5 and targetsAdmin1code5.
  • New WsDetail attributes: percentInGeography, score1, score2, score3, scoreOverall, windpoolZone and distanceToInnerCoast.

The Get FL peril operation (GET /v1/locations/{id}/locationfldetail/{locatinfldetailId}) now returns premium flood (FL) peril attributes.

The response now returns following new premium peril attributes: score1, score2, score3, scoreOverall, fl10YRInlandDepthUndef, fl30YRInlandDepthUndef, fl50YRInlandDepthUndef, fl100YRInlandDepthUndef, fl200YRInlandDepthUndef, fl250YRInlandDepthUndef, fl500YRInlandDepthUndef and fl1000YRInlandDepthUndef.

The Get EQ peril operation (GET /v1/locations/{id}/locationeqdetail/{locationeqdetailId}) now returns premium earthquake (EQ) peril attributes.

The response now returns premium EQ peril attributes: percentInGeography, score1, score2, score3, scoreOverall, mmi100, mmi200, mmi250, mmi475, mmi500, mmi1000, mmi1500, faultsName1, faultsDistance1, faultsReturnPeriodM601, faultsReturnPeriodM651, faultsReturnPeriodM701, faultsName2, faultsDistance2, faultsReturnPeriodM602, faultsReturnPeriodM652, faultsReturnPeriodM702, faultsName3, faultsDistance3, faultsReturnPeriodM603, faultsReturnPeriodM653, faultsReturnPeriodM703, faultsName4, faultsDistance4, faultsReturnPeriodM604, faultsReturnPeriodM654, faultsReturnPeriodM704, faultsName5, faultsDistance5, faultsReturnPeriodM605, faultsReturnPeriodM655, faultsReturnPeriodM705, faultsBackgroundRates, mineName1, mineType1, mineStatus1, mineArea1, mineDistance1, mineName2, mineType2, mineStatus2, mineArea2, mineDistance2, mineName3, mineType3, mineStatus3, mineArea3, mineDistance3, mineName4, mineType4, mineStatus4, mineArea4, mineDistance4, mineName5, mineType5, mineStatus5, mineArea5, mineDistance5, sinkHoleArea1, sinkHoleDistance1, sinkHoleArea2, sinkHoleDistance2, sinkHoleArea3, sinkHoleDistance3, sinkHoleArea4, sinkHoleDistance4, sinkHoleArea5 and sinkHoleDistance5.

The Get FR peril operation (GET /v1/locations/{id}/locationfrdetail/{locationfrdetailId}) now returns premium fire (FR) peril attributes.

The response now returns premium F peril attributes: percentInGeography, score1, scoreOverall, distanceToWuiIntermix, distanceToWuiInterface, stochasticBurnProb, urbanConFlagRationScore, distanceToCalFireVeryHigh, distanceToCalFireHigh, distanceToCalFireMedium, yearLastHistFire250m, histFireYearCount250m, histFireYearCount2km, histFireYearCount5km, histFireYearCount10km, histFireYearCount20km, firestationsName1, firestationsLatitude1, firestationsLongitude1, firestationsDistance1, firestationsStreetAddress1, firestationsCityName1, firestationsPostalCode1, firestationsAdmin2name1, firestationsAdmin1code1, firestationsLevel1, firestationsEms1, firestationsFirestationType1, firestationsName2, firestationsLatitude2, firestationsLongitude2, firestationsDistance2, firestationsStreetAddress2, firestationsCityName2, firestationsPostalCode2, firestationsAdmin2name2, firestationsAdmin1code2, firestationsLevel2, firestationsEms2, firestationsFireStationType2, firestationsName3, firestationsLatitude3, firestationsLongitude3, fireStationsDistance3, fireStationsStreetaddress3, fireStationsCityname3, fireStationsPostalcode3, fireStationsAdmin2name3, fireStationsAdmin1code3, fireStationsLevel3, fireStationsEms3, fireStationsFireStationType3, fireStationsName4, fireStationsLatitude4, fireStationsLongitude4, fireStationsDistance4, fireStationsStreetAddress4, fireStationsCityName4, fireStationsPostalCode4, fireStationsAdmin2name4, fireStationsAdmin1code4, fireStationsLevel4, fireStationsEms4, fireStationsFireStationType4, fireStationsName5, fireStationsLatitude5, fireStationsLongitude5, fireStationsDistance5, fireStationsStreetAddress5, fireStationsCityName5, fireStationsPostalcode5, fireStationsAdmin2name5, fireStationsAdmin1code5, fireStationsLevel5, fireStationsEms5 and fireStationsFireStationType5.

The Get TO peril operation (GET /v1/locations/{id}/locationtodetail/{locationtodetailId}) now returns premium severe convective storm and winterstorm peril (TO) peril attributes.

The response now returns premium TO peril attributes: dominantSubperilCS, percentInGeographyCS, score1CS, score2CS, score3CS, scoreOverallCS, dominantSubperilWT, percentInGeographyWT, score1WT, score2WT, score3WT and scoreOverallWT.

The Get TR peril operation (GET /v1/locations/{id}/locationtrdetail/{locationtrdetailId}) now returns premium terrorism storm (TR) peril attributes.

The response now returns premium TR peril attributes: score1, scoreOverall, targetsName1, targetsId1, targetsScore1, targetsDistance1, targetsCategory1, targetsCityName1, targetsAdmin1code1, targetsName2, targetsId2, targetsScore2, targetsDistance2, targetsCategory2, targetsCityName2, targetsAdmin1code2, targetsName3, targetsId3, targetsScore3, targetsDistance3, targetsCategory3, targetsCityName3, targetsAdmin1code3, targetsName4, targetsId4, targetsScore4, targetsDistance4, targetsCategory4, targetsCityName4, targetsAdmin1code4, targetsName5, targetsId5, targetsScore5, targetsDistance5, targetsCategory5, targetsCityName5 and targetsAdmin1code5.

The Get WS peril operation (GET /v1/locations/{id}/locationwsdetail/{locationwsdetailId}) now returns premium winterstorm (WS) peril attributes.

The response now returns premium WS peril attributes: percentInGeography, score1, score2, score3, scoreOverall, windpoolZone and distanceToInnerCoast.

Metrics

The Generate marginal impact report operation (GET /[v1][v2]/analyses/{id}/marginal-impact) generates a marginal impact report that measures the effect of adding additional accounts to an existing portfolio as differential losses.

To perform this operation, a principal must belong to a group that has been assigned the appropriate role-based permissions. Role-based permissions are identified in a Permissions admonition that is displayed in the API Reference documentation.

🍐

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.

UnderwriterTechnical UnderwriterRisk AnalystPortfolio ManagerCat Modeler
XXXX

To learn more about role-based permissions in Risk Modeler, see Groups and Roles.

Accounts API

The updated Get accounts operation (GET /[v1][v2]/accounts) returns a list of accounts that match a user-defined query. For tenants with an UnderwriterIQ license, the operation now returns the reportsCount attribute.

For Risk Modeler clients, the reportsCount attribute always returns a value of 0.

{
  "searchTotalMatch": 1,
  "searchItems": [
    {
    "accountId" : 65,
    "accountNumber" : "ACCOUNT_454175978",
    "accountName" : "ACCOUNT_454175978",
    "cedantName" : "",
    "producerName" : "",
    "underwriterName" : "",
    "branchName" : "",
    "numLocations" : 1,
    "userId1" : "uid1",
    "userId2" : "uid2",
    "userId3" : "uid3",
    "userId4" : "uid4",
    "userText1" : "ut1",
    "userText2" : "ut2",
    "geocodeVersion" : "DLM 18.1",
    "hazardVersion" : "",
    "ownerName" : "[email protected]",
    "updatedBy" : "",
    "stampDate" : "2022-11-04T17:49:32.923Z",
    "jobStatus" : "",
    "jobStartDate" : "",
    "jobEndDate" : "",
    "resultsCount" : 1,
    "policyExpirationDate" : "9999-12-30T16:00:00.000Z",
    "policyExpirationStatus" : "Open",
    "totalTIV" : 3000000.0,
    "reportsCount" : 0
    }
  ]
}

The new Get account reports operation (GET /[v1][v2]/accounts/{accountId}/reports) operation returns information about the reports run for the specified account. Report attributes include id, name, exposureId, exposureType, and notes.

{
  "searchTotalMatch": 1,
  "searchItems": [
    {
      "id": 1058,
      "name": "Report Name",
      "edmName": "dataSourcename",
      "createDate": "2022-10-31T23:48:46.157Z",
      "exposureId": 39272,
      "exposureType": "ACCOUNT",
      "userName": "[email protected]",
      "notes": "Report Notes"
    }
  ]
}

Portfolio API

The new Get portfolio reports reports operation (GET /[v1][v2]/portfolios) operation returns information about the reports run for the specified portfolio. Report attributes include id, name, exposureId, exposureType, and notes.

{
  "searchTotalMatch": 1,
  "searchItems": [
    {
      "id": 1058,
      "name": "Report Name",
      "edmName": "dataSourcename",
      "createDate": "2022-10-31T23:48:46.157Z",
      "exposureId": 39272,
      "exposureType": "PORTFOLIO",
      "userName": "[email protected]",
      "notes": "Report Notes"
    }
  ]
}

Reports API

The new Get reports Get reports operation (GET /[v1]/reports) operation returns a list of reports.

The operation accepts three query parameters enabling you to filter the reports returned by datasource, exposureId, and exposureType (ACCOUNT or PORTFOLIO):

curl --request GET \
     --url 'https://{host}/riskmodeler/v1/reports?datasource=120&exposureId=1058&exposureType=ACCOUNT' \
     --header 'Authorization: XXXXXXXXXX' \
     --header 'accept: application/json'

The response body information about the reports that match the query string:

{
  "searchTotalMatch": 1,
  "searchItems": [
    {
      "id": 1058,
      "name": "Report Name",
      "edmName": "dataSourcename",
      "createDate": "2022-10-31T23:48:46.157Z",
      "exposureId": 39272,
      "exposureType": "ACCOUNT",
      "userName": "[email protected]", "notes": "Report Notes"
    }
  ]
}

The new Get report operation (GET /[v1]/reports/{reportId}) operation returns detailed information about a specific report including the metric type, and report URL.

The response body includes detailed information about a specific report.

{
    {
    "id" : 1058,
    "name" : "Report Name",
    "edmName" : "dataSourceName",
    "createDate" : "2022-10-31T23:48:46.157Z",
    "exposureId" : 39272,
    "exposureType" : "ACCOUNT",
    "userName" : "[email protected]",
    "notes" : "",
    "reportDetails" : [ 
            {
            "metricsType" : "metric type",
            "reportURL" : "<<reporturl>>",
            "additionalInfo" : 
                    {
                "key" : "value"
                }
        } 
        ]
}

The new Update report operation (UPDATE /[v1]/reports) operation updates report metadata. The request body accepts two body parameters: name and notes.

{
  "name": "New Report Name",
  "notes": "New Report Notes"
}