December 2023

The December release of the Risk Modeler API introduces updates to user-defined workflows.

The December release of the Risk Modeler API introduces support for data tagging and exposure enrichment.

Accounts

Create Account

The Create Account operation (POST /[v1][v2]/accounts) now enables you to specify one or more tag IDs when you create a new account. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this account.

{
  "name": "string",
  "number": "string",
  "status": "string",
  ...,

  "tagIds": [
    1,2,3,4
  ]
}

Update Account

The Update Account operation (PUT /[v1][v2]/accounts) now enables you to specify one or more tag IDs when you update an existing treaty. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this account.

{
    "guid": "68A64E48-7EB4-414D-811A-EA84127D50F4",
    "number": "tst111",
    "createDate": "2023-10-05T20:46:22.883Z",
    ...,
    "tags": [
        2,3,5
    ]
}

Enrich Account

The new Enrich Account operation (POST /v2/portfolios/{portfolioId}/enrichexposure) enables you to "enrich" in the specified portfolio by fetching exposure data from the ESDB and updating the specified portfolio with data.

All other parameters are specified in the body of the request.

{
  "retrieveData": true,
  "esdbVersion": "Latest",
  "transferData": true,
  "overwriteAll": false,
  "createBackup": true,
  "backupDetails": {
    "exposureName": "myBackupName",
    "exposureNumber": "myBackupNumber"
  }
}

All parameters are optional.

  • The retrieveData parameter accepts indicate whether the operation retrieves data from the ESDB. By default, false
  • The esdbVersion specifies the ESDB version for the retrieval task. By default, Latest.
  • The transferData indicates whether the operation updates exposures with data retrieved from the ESDB. By default, false.
  • The overwriteAll determines whether the operation preserves or overwrites existing exposure data. If true, the operation overwrites all exposure property values, effectively replacing existing data with the retrieved exposure enrichment data. If false, the operation preserves the integrity of existing data and updates only those properties that were empty or contained default values. By default, false.
  • The createBackup parameter indicates whether the operation creates copy of the existing exposure before it updates that exposure. Only applicable if the transferData parameter is true. By default, false. If true, the backupDetails parameter is required.
  • The backupDetails parameter is an object that defines the backupName and backupNumber of the backup data. Required, if createBackup is true. The exposureName parameter specifies the name of the backup. The exposureNumber parameter specifies the ID number of the backup.

The request also accepts two request headers:

x-rms-resource-group-Id 
x-rms-requestId 

Both headers are optional.

  • The x-rms-resource-group-Id identifies the ID of the resource group that owns the data.
  • The x-rms-requestId indicates whether the request is idempotent>.

On success, this operation initiates a portfolio-level ENRICH_EXPOSURE job.

Get Account

The Get Account operation (GET /[v1][v2]/accounts/{accountId) now returns the tag IDs applied to the specified account.

{
    "id": 1,
    "name": "ACCOUNT_555167417_upd",
    "number": "ACCOUNT_555167417_up",
    ...,

    "tagIds": [
        1,2,3,4
    ]
}

Search Accounts

The Search Accounts operation (GET /[v1][v2]/accounts) now returns the tag IDs applied to the accounts matching the specified query.

{
    "searchTotalMatch": 24,
    "searchItems": [
        {
            "accountId": 1,
            "accountNumber": "ACCOUNT_555167417_up",
            "accountName": "ACCOUNT_555167417_upd",
            ..., 

            "tagIds": [
                1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Analyze Account

The Analyze Account operation (POST /[v1][v2]/accounts/{accountId}/process) now enables you to specify one or more tag IDs when you analyze an account exposure using DLM or HD models.

The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the results data generated by this analysis.

{
    "id": 6,
    "edm": "test_2101_ak_july",
    "exposureType": "ACCOUNT",
    ...,

    "tagIds":[1,2,3]
}

The Search Analysis Results by Account operation (GET /[v1][v2]/accounts/{accountId}/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Aggregate Portfolio

Create Aggregate Portfolio

The Create Aggregate Portfolio operation (POST /[v1]/aggregate-portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this aggregate portfolio.

Update Aggregate Portfolio

The Update Aggregate Portfolio operation (PUT /[v1]/aggregate-portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this aggregate portfolio.

Get Aggregate Portfolio

The Get Aggregate Portfolio operation (GET /[v1][v2]/aggregate-portfolios/{aggregatePortolioId) now returns the tag IDs applied to that aggregate portfolio.

Search Aggregate Portfolios

The Search Aggregate Portfolios operation (GET /[v1][v2]/aggregate-portfolios) now returns the tag IDs applied to the aggregate portfolios matching the specified query.

This operation also supports filtering accounts based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Analyze Aggregate Portfolio

The Analyze Aggregate Portfolio operation (POST /[v1][v2]/aggregate-portfolios/{aggregatePortfolioId}/process) now enables you to specify one or more tag IDs when you analyze an account exposure using ALM models.

The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the results data generated by this analysis.

{
  "exposureType": "UNRECOGNIZED",
  "edm": "string",
  "currency": {
    "code": "string",
    "scheme": "string",
    "asOfDate": "string",
    "vintage": "string"
  },
  "almProfileIds": [
    10
  ],
  ..., 
  "tagIds": [1,2,3,4]
}

Search Analysis Results by Aggregate Portfolio

The Search Analysis Results by Aggregate Portfolio operation (GET /[v1][v2]/aggregate-portfolios/{aggregatePortfolioId}/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Datasources

Administer EDM

The Administer EDM operation (POST /[v1][v2]/datasources) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the EDM.

{
  "share": true,
  "tagIds": [
    1,2,3,4,8,10
  ],
  "groups": [
    "string"
  ]
}

Search EDMs

The Search EDMs operation (GET /[v1][v2]/datasources) now returns a list of the tag IDs applied to the EDMs returned.

{
    "searchTotalMatch": 1,
    "searchItems": [
        {
            "datasourceName": "integration_test_ak_july",
            "permissionType": 12,
            "isDefault": false,
            "metrics": {
                ...
            },
            "serverState": "READY",
            "serverNamespace": "RISK_MODELER",
            "owner": "[email protected]",
            "exposureSetId": "eb521d94-11d7-4ba0-bab6-XXXXXXXXXXXX",
            "createDate": "2023-10-04 19:04:38.00",
            "serverName": "sql-instance-1",
            "tagIds": [
                7,8,9
            ]
        }
    ]
}

This operation also supports filtering EDMs based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Datastore

Register EDM

The Register EDM operation (/[v1][v2]/data-bridge/register) now enables you to specify one or more tag IDs when you create a new EDM. The request body accepts the tagIds parameter, an array of tag IDs that that identify the keywords applied to this data source.

{
  "serverId": 1,
  "datasourceName": "7Gfio0u8ATYZODj9Z_uxDoZxgkC3dl_S2Q_tIk3iLzGjsNfgyJ zZxn68F8IA9KXmiEVJ_SAitNIEzp1",
  "exposureSetId": "string",
  "share": true,
  "deferMetricCalculation": true,
  "tagIds": [
    1,2,3,4,8,10
  ],
  "groups": [
    "string"
  ]
}

This operation now enables you to optionally skip the metrics calculations when register an EDM with Data Bridge. The optional deferMetricsCalculation parameter specifies a Boolean value in the request body. If unspecified, false.

The optional deferMetricsCalculation parameter specifies a Boolean value in the request body. If unspecified, false.

{
  "serverId": 1,
  "datasourceName": "XXXXX",
  "exposureSetId": "string",
  "share": true,
  "tagIds": [
    0
  ],
  "groups": [
    "string"
  ],
  "deferMetricCalculation": false 
}

File Storage

Upload EDM

The Upload EDM operation (POST /[v1][v2]/uploads/{id}/edm) accepts two new parameters in the request body. Both parameters are optional.

The deferMetricsCalculation parameter enables the client to expedite uploads of EDMs by deferring the calculation of metrics. Metrics are calculated as a background process and are accessible after the EDM has been uploaded. By default, false.

This operation also enables you to specify one or more tag IDs when you create a new EDM. The request body accepts the tagIds parameter, an array of tag IDs that that identify the keywords applied to this data.

{
  "share": true,
  "deferMetricCalculation": true,
  "tagIds": [
    1,2,3,4,8,10
  ],
  "groups": [
    "string"
  ]
}

Upload RDM

The Upload RDM operation (POST /v1/uploads/{uploadId}/rdm) now enables you to specify one or more tag IDs when you upload results data. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this data.

{
  "uploadId": "string",
  "rdmName": "string",
  "edmDataSourceName": "string",
  ...,

  "groups": [
    "string"
  ],
  "tagIds": [
    1,2,3,4
  ]
}

Metrics

Search Analysis Results

The Search Analysis Results operation (GET /[v1][v2]/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

{
    "searchTotalMatch": 104081,
    "searchItems": [
        {
            "id": 131917,
            "name": "myAnalyses`",
            "runDate": "2023-11-22T00:09:22",
            ..., 

            "tagIds": [210, 278, 304, 303]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Portfolios

Create Portfolio

The Create Portfolio operation (POST /[v1][v2]/portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this portfolio.

{
    "name": "portAk26019",
    "number": "portAk26019",
    "description": "test",
    "tagIds": [
       3,4
    ]
}

Update Portfolio

The Update Portfolio operation (POST /[v1][v2]/portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this portfolio.

{
    "name": "portAk26019",
    "number": "portAk26019",
    "description": "test",
    "tagIds": [
       3,4
    ]
}

Get Portfolio

The Get Portfolio operation (GET /[v1][v2]/portfolios) now returns the tag IDs applied to accounts matching the specified query.

{
    "id": 75,
    "name": "portAk26019",
    "number": "portAk26019",
    "description": "",
    "createDate": "2023-11-08T22:53:17.597Z",
    "stampDate": "2023-11-08T22:53:17.547Z",
    "tagIds": [
        1,2,3,4
    ]
}

Search Portfolios

The Search Portfolios operation (GET /[v1][v2]/portfolios) now returns the tag IDs applied to accounts matching the specified query.

{
    "searchTotalMatch": 69,
    "searchItems": [
        {
            "id": 1,
            "name": "pf_oct9_upd",
            "number": "pf_oct9_upd",
            ...,

            "tagIds": [
                1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Get Accounts by Portfolio

The Get Accounts by Portfolio operation (GET /[v1][v2]/portfolios/{portfolioID/accounts) now returns the tag IDs applied to accounts matching the specified query.

{
    "searchTotalMatch": 1,
    "searchItems": [
        {
            "accountId": 3,
            "accountNumber": "acct3",
            "accountName": "acct3",
            ...,

            "tagIds": [
                1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Search Analysis Results by Portfolio

The Search Analysis Results by Portfolio operation (GET /[v1][v2]/portfolios/{portfolioId}/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Analyze Portfolio

The Analyze Portfolio operation (POST /[v1][v2]/portfolios/{portfolioId}/process) now enables you to specify one or more tag IDs when you analyze an account exposure using DLM or HD models.

The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the results data generated by this analysis.

{
    "id": 6,
    "edm": "test_2101_ak_july",
    "exposureType": "PORTFOLIO",
    ...,

    "tagIds":[1,2,3]
}

Treaty

Create Treaty

The Create Treaty operation (POST /v1/treaties) now enables you to specify one or more tag IDs when you create a new treaty. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this account.

{
    "riskLimit": 0,
    "occurLimit": "1",
    "attachPt": 0,
    ...,

    "tagIds": [2,3]
}

Update Treaty

The Update Treaty operation (PUT /v1/treaty/{treatyId}) now enables you to specify one or more tag IDs when you update an existing treaty. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this account.


{
    "treatyId": 8,
    "treatyNumber": "treatyTest61111",
    ...,

    "tagIds": [5,6]
}

Search Treaties

The Search Treaties operation (GET /v1/treaties) now returns the tag IDs applied to accounts matching the specified query.

{
    "totalMatchCount": 7,
    "searchMatchingTreatyList": [
        {
            "treatyId": 1,
            "treatyNumber": "OCT10_01_upd",
            "treatyName": "OCT10_01_upd",
            ...,

            "tagIds": [
              1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied those treaties. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Get Treaty

The Get Treaty operation (GET /v1/treaties/{treatyId) now returns the tag IDs applied to the specified treaty.

{
    "treatyId": 2,
    "treatyNumber": "treatyTest61111",
    "treatyName": "treatyTest61111",
    ...,

    "tagIds": [
        1,2,3,4
    ]
}

Get Treaties by Type

The Get Treaties by Type operation (GET /v1/treaties/getbytype) now returns the tag IDs applied to the treaties returned by this operation.

[
    {
        "treatyId": 2,
        "treatyNumber": "treatyTest61111",
        "treatyName": "treatyTest61111",
        ..., 

        "tagIds": [
            1,2,3,4
        ]
    }
]

Accounts

Create Account

The Create Account operation (POST /[v1][v2]/accounts) now enables you to specify one or more tag IDs when you create a new account. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this account.

{
  "name": "string",
  "number": "string",
  "status": "string",
  ...,

  "tagIds": [
    1,2,3,4
  ]
}

Update Account

The Update Account operation (PUT /[v1][v2]/accounts) now enables you to specify one or more tag IDs when you update an existing treaty. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this account.

{
    "guid": "68A64E48-7EB4-414D-811A-EA84127D50F4",
    "number": "tst111",
    "createDate": "2023-10-05T20:46:22.883Z",
    ...,
    "tags": [
        2,3,5
    ]
}

Enrich Account

The new Enrich Account operation (POST /v2/portfolios/{portfolioId}/enrichexposure) enables you to "enrich" in the specified portfolio by fetching exposure data from the ESDB and updating the specified portfolio with data.

All other parameters are specified in the body of the request.

{
  "retrieveData": true,
  "esdbVersion": "Latest",
  "transferData": true,
  "overwriteAll": false,
  "createBackup": true,
  "backupDetails": {
    "exposureName": "myBackupName",
    "exposureNumber": "myBackupNumber"
  }
}

All parameters are optional.

  • The retrieveData parameter accepts indicate whether the operation retrieves data from the ESDB. By default, false
  • The esdbVersion specifies the ESDB version for the retrieval task. By default, Latest.
  • The transferData indicates whether the operation updates exposures with data retrieved from the ESDB. By default, false.
  • The overwriteAll determines whether the operation preserves or overwrites existing exposure data. If true, the operation overwrites all exposure property values, effectively replacing existing data with the retrieved exposure enrichment data. If false, the operation preserves the integrity of existing data and updates only those properties that were empty or contained default values. By default, false.
  • The createBackup parameter indicates whether the operation creates copy of the existing exposure before it updates that exposure. Only applicable if the transferData parameter is true. By default, false. If true, the backupDetails parameter is required.
  • The backupDetails parameter is an object that defines the backupName and backupNumber of the backup data. Required, if createBackup is true. The exposureName parameter specifies the name of the backup. The exposureNumber parameter specifies the ID number of the backup.

The request also accepts two request headers:

x-rms-resource-group-Id 
x-rms-requestId 

Both headers are optional.

  • The x-rms-resource-group-Id identifies the ID of the resource group that owns the data.
  • The x-rms-requestId indicates whether the request is idempotent>.

On success, this operation initiates a portfolio-level ENRICH_EXPOSURE job.

Get Account

The Get Account operation (GET /[v1][v2]/accounts/{accountId) now returns the tag IDs applied to the specified account.

{
    "id": 1,
    "name": "ACCOUNT_555167417_upd",
    "number": "ACCOUNT_555167417_up",
    ...,

    "tagIds": [
        1,2,3,4
    ]
}

Search Accounts

The Search Accounts operation (GET /[v1][v2]/accounts) now returns the tag IDs applied to the accounts matching the specified query.

{
    "searchTotalMatch": 24,
    "searchItems": [
        {
            "accountId": 1,
            "accountNumber": "ACCOUNT_555167417_up",
            "accountName": "ACCOUNT_555167417_upd",
            ..., 

            "tagIds": [
                1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Analyze Account

The Analyze Account operation (POST /[v1][v2]/accounts/{accountId}/process) now enables you to specify one or more tag IDs when you analyze an account exposure using DLM or HD models.

The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the results data generated by this analysis.

{
    "id": 6,
    "edm": "test_2101_ak_july",
    "exposureType": "ACCOUNT",
    ...,

    "tagIds":[1,2,3]
}

Search Analysis Results

The Search Analysis Results by Account operation (GET /[v1][v2]/accounts/{accountId}/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Aggregate Portfolio

Create Aggregate Portfolio

The Create Aggregate Portfolio operation (POST /[v1]/aggregate-portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this aggregate portfolio.

Update Aggregate Portfolio

The Update Aggregate Portfolio operation (PUT /[v1]/aggregate-portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this aggregate portfolio.

Get Aggregate Portfolio

The Get Aggregate Portfolio operation (GET /[v1][v2]/aggregate-portfolios/{aggregatePortolioId) now returns the tag IDs applied to that aggregate portfolio.

Search Aggregate Portfolios

The Search Aggregate Portfolios operation (GET /[v1][v2]/aggregate-portfolios) now returns the tag IDs applied to the aggregate portfolios matching the specified query.

This operation also supports filtering accounts based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Analyze Aggregate Portfolio

The Analyze Aggregate Portfolio operation (POST /[v1][v2]/aggregate-portfolios/{aggregatePortfolioId}/process) now enables you to specify one or more tag IDs when you analyze an account exposure using ALM models.

The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the results data generated by this analysis.

{
  "exposureType": "UNRECOGNIZED",
  "edm": "string",
  "currency": {
    "code": "string",
    "scheme": "string",
    "asOfDate": "string",
    "vintage": "string"
  },
  "almProfileIds": [
    10
  ],
  ..., 
  "tagIds": [1,2,3,4]
}

Search Analysis Results by Aggregate Portfolio

The Search Analysis Results by Aggregate Portfolio operation (GET /[v1][v2]/aggregate-portfolios/{aggregatePortfolioId}/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Datasources

Administer EDM

The Administer EDM operation (POST /[v1][v2]/datasources) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the EDM.

{
  "share": true,
  "tagIds": [
    1,2,3,4,8,10
  ],
  "groups": [
    "string"
  ]
}

Search EDMs

The Search EDMs operation (GET /[v1][v2]/datasources) now returns a list of the tag IDs applied to the EDMs returned.

{
    "searchTotalMatch": 1,
    "searchItems": [
        {
            "datasourceName": "integration_test_ak_july",
            "permissionType": 12,
            "isDefault": false,
            "metrics": {
                ...
            },
            "serverState": "READY",
            "serverNamespace": "RISK_MODELER",
            "owner": "[email protected]",
            "exposureSetId": "eb521d94-11d7-4ba0-bab6-XXXXXXXXXXXX",
            "createDate": "2023-10-04 19:04:38.00",
            "serverName": "sql-instance-1",
            "tagIds": [
                7,8,9
            ]
        }
    ]
}

This operation also supports filtering EDMs based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Datastore

Register EDM

The Register EDM operation (/[v1][v2]/data-bridge/register) now enables you to specify one or more tag IDs when you create a new EDM. The request body accepts the tagIds parameter, an array of tag IDs that that identify the keywords applied to this data source.

{
  "serverId": 1,
  "datasourceName": "7Gfio0u8ATYZODj9Z_uxDoZxgkC3dl_S2Q_tIk3iLzGjsNfgyJ zZxn68F8IA9KXmiEVJ_SAitNIEzp1",
  "exposureSetId": "string",
  "share": true,
  "deferMetricCalculation": true,
  "tagIds": [
    1,2,3,4,8,10
  ],
  "groups": [
    "string"
  ]
}

This operation now enables you to optionally skip the metrics calculations when register an EDM with Data Bridge. The optional deferMetricsCalculation parameter specifies a Boolean value in the request body. If unspecified, false.

The optional deferMetricsCalculation parameter specifies a Boolean value in the request body. If unspecified, false.

{
  "serverId": 1,
  "datasourceName": "XXXXX",
  "exposureSetId": "string",
  "share": true,
  "tagIds": [
    0
  ],
  "groups": [
    "string"
  ],
  "deferMetricCalculation": false 
}

File Storage

Upload EDM

The Upload EDM operation (POST /[v1][v2]/uploads/{id}/edm) now enables you to specify one or more tag IDs when you create a new EDM. The request body accepts the tagIds parameter, an array of tag IDs that that identify the keywords applied to this data.

{
  "share": true,
  "deferMetricCalculation": true,
  "tagIds": [
    1,2,3,4,8,10
  ],
  "groups": [
    "string"
  ]
}

Upload RDM

The Upload RDM operation (POST /v1/uploads/{uploadId}/rdm) now enables you to specify one or more tag IDs when you upload results data. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this data.

{
  "uploadId": "string",
  "rdmName": "string",
  "edmDataSourceName": "string",
  ...,

  "groups": [
    "string"
  ],
  "tagIds": [
    1,2,3,4
  ]
}

Metrics

Search Analysis Results

The Search Analysis Results operation (GET /[v1][v2]/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

{
    "searchTotalMatch": 104081,
    "searchItems": [
        {
            "id": 131917,
            "name": "myAnalyses`",
            "runDate": "2023-11-22T00:09:22",
            ..., 

            "tagIds": [210, 278, 304, 303]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Portfolios

Create Portfolio

The Create Portfolio operation (POST /[v1][v2]/portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this portfolio.

{
    "name": "portAk26019",
    "number": "portAk26019",
    "description": "test",
    "tagIds": [
       3,4
    ]
}

Update Portfolio

The Update Portfolio operation (POST /[v1][v2]/portfolios) now enables you to specify one or more tag IDs when you create a new EDM. The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to this portfolio.

{
    "name": "portAk26019",
    "number": "portAk26019",
    "description": "test",
    "tagIds": [
       3,4
    ]
}

Get Portfolio

The Get Portfolio operation (GET /[v1][v2]/portfolios) now returns the tag IDs applied to accounts matching the specified query.

{
    "id": 75,
    "name": "portAk26019",
    "number": "portAk26019",
    "description": "",
    "createDate": "2023-11-08T22:53:17.597Z",
    "stampDate": "2023-11-08T22:53:17.547Z",
    "tagIds": [
        1,2,3,4
    ]
}

Search Portfolios

The Search Portfolios operation (GET /[v1][v2]/portfolios) now returns the tag IDs applied to accounts matching the specified query.

{
    "searchTotalMatch": 69,
    "searchItems": [
        {
            "id": 1,
            "name": "pf_oct9_upd",
            "number": "pf_oct9_upd",
            ...,

            "tagIds": [
                1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Get Accounts by Portfolio

The Get Accounts by Portfolio operation (GET /[v1][v2]/portfolios/{portfolioID/accounts) now returns the tag IDs applied to accounts matching the specified query.

{
    "searchTotalMatch": 1,
    "searchItems": [
        {
            "accountId": 3,
            "accountNumber": "acct3",
            "accountName": "acct3",
            ...,

            "tagIds": [
                1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied to them. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Search Analysis Results by Portfolio

The Search Analysis Results by Portfolio operation (GET /[v1][v2]/portfolios/{portfolioId}/analyses) now returns the tag IDs applied to the analysis results that match the specified query.

This operation also supports filtering accounts based on the tag IDs applied those accounts. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Analyze Portfolio

The Analyze Portfolio operation (POST /[v1][v2]/portfolios/{portfolioId}/process) now enables you to specify one or more tag IDs when you analyze an account exposure using DLM or HD models.

The request body now accepts the tagIds parameters, an array of tag IDs that that identify the keywords applied to the results data generated by this analysis.

{
    "id": 6,
    "edm": "test_2101_ak_july",
    "exposureType": "PORTFOLIO",
    ...,

    "tagIds":[1,2,3]
}

Treaty

Create Treaty

The Create Treaty operation (POST /v1/treaties) now enables you to specify one or more tag IDs when you create a new treaty. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this account.

{
    "riskLimit": 0,
    "occurLimit": "1",
    "attachPt": 0,
    ...,

    "tagIds": [2,3]
}

Update Treaty

The Update Treaty operation (PUT /v1/treaty/{treatyId}) now enables you to specify one or more tag IDs when you update an existing treaty. The request body now accepts the tagIds parameters, an array of tag IDs that identify the keywords applied to this account.


{
    "treatyId": 8,
    "treatyNumber": "treatyTest61111",
    ...,

    "tagIds": [5,6]
}

Search Treaties

The Search Treaties operation (GET /v1/treaties) now returns the tag IDs applied to accounts matching the specified query.

{
    "totalMatchCount": 7,
    "searchMatchingTreatyList": [
        {
            "treatyId": 1,
            "treatyNumber": "OCT10_01_upd",
            "treatyName": "OCT10_01_upd",
            ...,

            "tagIds": [
              1,2,3,4
            ]
        }
    ]
}

This operation also supports filtering accounts based on the tag IDs applied those treaties. The filter query parameter enables you to define a query string that matches tagIds values using the =, =!, IN, NOT IN, AND and OR operators. To learn more, see Response Filtering.

Get Treaty

The Get Treaty operation (GET /v1/treaties/{treatyId) now returns the tag IDs applied to the specified treaty.

{
    "treatyId": 2,
    "treatyNumber": "treatyTest61111",
    "treatyName": "treatyTest61111",
    ...,

    "tagIds": [
        1,2,3,4
    ]
}

Get Treaties by Type

The Get Treaties by Type operation (GET /v1/treaties/getbytype) now returns the tag IDs applied to the treaties returned by this operation.

[
    {
        "treatyId": 2,
        "treatyNumber": "treatyTest61111",
        "treatyName": "treatyTest61111",
        ..., 

        "tagIds": [
            1,2,3,4
        ]
    }
]

Workflows

The Create User-Defined Workflow operation now enables you to combine and execute batch and geohaz operations as a single job, which greatly reduces runtime. For custom workflows that import and geohaz accounts with up to 1000 locations, the entire process can be completed 2-3 times faster than a comparable workflow that does not combine the batch and geohaz operations.

The optional combine-batch-edit-and-geohaz parameter must be true to enable this feature. If true, the custom worfklow combines the batch and geohaz operations and the output for both operations is returned as a single object. If false, distinct output is returned for the batch and geohaz operations. By default, false.

For example, the following request defines a custom workflow that consists of three operations: a batch, geohaz, and process operation. During processing, the batch and geohazoperations are combined and executed together as a single job within the workflow. Theprocess` operation is handled as a distinct job.

{
    "name": "ExpBatchEdit With GeoHaz",
    "settings": {
        "disable-underwriter-reports": true,
        "combine-batch-edit-and-geohaz": true
    },
    "operations": [
        {
            "continueOnFailure": "false",
            "dependsOn": [],
            "input": { ... },
            "label": "ExposureBatch",
            "operation": "/v3/exposurebatches?datasource=datasource"
        },
        {
            "continueOnFailure": false,
            "dependsOn": [
                "ExposureBatch"
            ],
            "input": [ ... ],
            "label": "GEOHAZ",
            "operation": "/v2/accounts/{{$.ExposureBatch.output.accounts.[?(@.label == 'account-label')].id}}/geohaz?datasource=datasource"
        },
        {
            "continueOnFailure": false,
            "dependsOn": [
                "GEOHAZ"
            ],
            "input": { ... },
            "label": "DLM",
            "operation": "/v2/accounts/{{$.ExposureBatch.output.accounts.[?(@.label == 'account-label')].id}}/process"
        }
    ]
}

To combine batch and geohaz operations into a single job, the geohaz operation must specify the batch operation by name in the dependsOn attribute.

This release does not support the chaining of multiple batch operations in the same workflow.