2026.06.c

🥥

Highlights

The 2026.06.c release adds enhancements to the Copy API, Risk Data API, and Tenant Data API.

  • The Create Copy Job operation now supports deep copying by which copied portfolios are linked to copies of the child accounts of the original portfolio.

  • The EDM Batch Edit operation now enables clients to add or update location conditions and policy conditions without the need to specify a parent location or policy. Previously, updating either required that the updates be nested in a parent location or policy.

  • The Get EP Metrics operation now supports the optional epType query parameter that enables the client to filter EP metrics by exceedence probability metric type.

  • The Search VPN Connection operation now returns the operational status of the VPN connection.

    Learn More

Login Requirements

Beginning June 2026, the Moody's Insurance Solutions Developer Portal will require that all visitors log in to access Intelligent Risk Platform API documentation and developer resources.

Every Intelligent Risk Platform developer will need a user account. Licensed users can log into the Moody's Insurance Solutions Developer Portal using their email address and password.

Contact your tenant administrator and request an Intelligent Risk Platform user account.

Deprecations

Microsoft to End Support of SQL 2016 in July 2026

Microsoft will end its extended support of SQL Server 2016 on July 14, 2026. As a result, the Intelligent Risk Platform™ will end support for SQL Server 2016 in July 2026.

Batch API

Create Batch Job

The Create Batch Job operation (POST /platform/batch/v1/jobs) creates a batch job that manages the processing of multiple operations in a workflow.

All operations are defined in the body of the request package. These operations are known as tasks within the workflow. Each task is defined as a JSON object in the request package and processed as a separate job by the workflow engine.

The request now accepts groupingsetId in the task's settings object. The settings object accepts either groupingSetId or regionPerilSimulationSet. The regionPerilSimulationSet is not required if groupingSetId is specified.


{
    "name": "testBatchIRP",
    "settings": {
        "disable-underwriter-reports": False,
        "combine-batch-edit-and-geohaz": True,
    },
    "tasks": [
        {...},
        {
            "label": "grouping1",
            "operationUri": "/platform/grouping/v1/jobs",
            "dependsOn": ["model1", "model2"],
            "continueOnFailure": "true",
            "skipMissingVariables": True,
            "requestBody": {
                "resourceType": "analyses",
                "resourceUris": [
                    "/platform/riskdata/v1/analyses/{{$.model1.output.analysisId}}",
                    "/platform/riskdata/v1/analyses/{{$.model2.output.analysisId}}",
                ],
                "settings": {
                    "analysisName": GROUPING_ANALYSIS_NAME,
                    "description": GROUPING_ANALYSIS_NAME,
                    "groupingSetId": 34,
                    "currency": {
                        "code": anchor_currency_code,
                        "scheme": currency_scheme_code,
                        "asOfDate": currency_as_of,
                        "vintage": currency_vintage,
                    },
                    "numOfSimulations": GROUPING_NUM_SIMULATIONS,
                    "propagateDetailedLosses": False,
                    "simulationWindowStart": GROUPING_SIM_WINDOW_START,
                    "simulationWindowEnd": GROUPING_SIM_WINDOW_END,
                    "reportingWindowStart": GROUPING_REPORTING_WINDOW,
                },
            },
        },
    ]
}

Copy API

Create Copy Job

The Create Copy Job operation (POST /platform/copy/v1/jobs) creates copies of the specified account, aggregate portfolio, portfolio.

This operation now supports linking copied portfolios to copies of the child accounts of the original portfolio. The optional linkExistingAccounts parameter accepts a Boolean value:

  • If true, this operation creates a link between the copy of the portfolio and the child accounts of the original portfolio. No copies of the accounts are created. The portfolio copy is linked to the original accounts.
  • If false, the operation creates a copy of each child account of the original portfolio and creates links the copied portfolio to the copied accounts. This process is known as deep copying.

The sample request creates a copy of a portfolio (256) and copies of accounts linked to that portfolio. The new portfolio (PC-001) is linked to copies of the child accounts linked to the original portfolio.

{
  "resourceUri": "/platform/riskdata/v1/exposures/10171/portfolios/256",
  "resourceType": "PORTFOLIO",
  "settings": {
    "name": "Portfolio Copy",
    "number": "PC-001",
    "description": "Copied portfolio",
    "linkExistingAccounts": false
  }
}

Deep copying is supported for both PORFTOLIO and EXPOSURE resource type jobs.

  • If PORTFOLIO, this operation supports copying a single portfolio. The copied portfolio can be linked to the original accounts or to copies of those accounts. The linkExistingAccounts parameter is true by default.
  • If EXPOSURE, this operation supports copying multiple portfolios to another new or existing exposure (EDM). The copied portfolios can be linked to the original accounts or to copies of those accounts. The linkExistingAccounts parameter is false by default.

Deep copying is not supported if the resourceType parameter is ACCOUNT or AGGREGATEPORTFOLIO.

Export API

Create Export Job

The Create Export Job operation (POST /platform/export/v1/jobs/) creates and submits different types of export jobs (EDM, EXPOSURE_RESOURCE, EXPOSURE_VARIATION. LOCATION_RESULTS, RDM_DATABRIDGE, RDM, RESULTS, ROLLUP_RESULTS).

RDM Data Bridge updates

This operation supports specifying a list of user groups that can access a new RDM created using the RDM_DATABRIDGE export job.

Location Results updates

The LOCATION_RESULTS export type now supports exporting a combination of account-level model analyses and accumulation analyses.

Grouping API

Create Grouping Job

The Create Grouping Job operation (POST /platform/grouping/v1/jobs) creates an analysis group, an analysis that combines multiple analyses.

In UnderwriteIQ, an analysis group combines the loss results from multiple regions, perils, or cedants to provide an overall risk assessment for an account. When you create a group, new grouped results combine the data from the component analyses. Currently, you can only group DLM exceedance probability (EP) results or HD exceedance probability results.

An analysis group is a collection of two or more analysis results or analysis groups that enable an insurer or reinsurer to better assess the risk to a customized portfolio of exposures. The analysis group may include analysis results generated using ALM, DLM, and HD models as well as other analysis groups. By combining event loss data from multiple analyses can view a unified loss result for exposures across diverse perils and regions.

This operation now accepts requests that specify a single analysis URI in the resourceUris array. In previous, releases the array required two or more analysis IDs.

This operation now accepts the groupingset parameter in the settings object of the request.

A grouping set is a collection of analysis settings that facilitate the creation of analysis groups. The grouping set specifies rules for resolving the differences between settings in the constituent DLM and HD analysis results.

{
    "resourceType": "analyses",
    "resourceUris": [
        "/platform/riskdata/v1/analyses/1776591",
        "/platform/riskdata/v1/analyses/1776517",
        "/platform/riskdata/v1/analyses/1776609"
    ],
    "settings": {
        "analysisName": "group_florida_grp_test_acc3",
        "description": "api_grouping NAEQ NAWS NAEQ NAWS NAEQ NAWS NAEQ NAWS NAEQ NAWS NAEQ NAWS NAEQ NAWS ",
        "groupingSetId": "integer",
        "currency": {
            "code": "USD",
            "scheme": "RMS",
            "asOfDate": "2020-03-01",
            "vintage": "RL18"
        },

If the groupingSetId parameter is specified, the regionPerilSimulationSet is not required.

Import API

Create Import Job

The Create Import Job operation (POST /platform/import/v1/jobs) creates an import job that ingests data into the Intelligent Risk Platform.

This operation now restricts naming conventions for databases based on data imported in the CEDE and OED job types:

  • In CEDE import jobs, the name of new databases based on imported data must match the EDM name. No spaces are allowed in the name of the database.
  • In OED import jobs, the name of new databases based on imported data must match the EDM name. No spaces are allowed in the name of the database.

The EXPOSURE_BULK_EDIT import type now accepts the locationCondtions and policyConditions parameters as separate arrays within the request body. Previously, updates to location conditions and policy conditions were required to be nested within a parent location or policy.
For an example, see EDM Batch Edit.

CEDE 12.0 Support

The Import API now supports CEDE 12.0 for database file of SQL server 2022.

CEDE™ (Catastrophe Exposure Database Exchange) is an open-source exposure data format from AIR. CEDE facilitates data exchange throughout "the insurance value chain and to encourage model development."

The Intelligent Risk Platform now supports importing CEDE import via the Import API. The service detects database file versions, and if SQL 2022, downgrades and restores the database to Unified Data Store (UDS) or Data Bridge, before converting the CEDE database to an EDM.

Reference Data API

Create Grouping Set

The Create Grouping Set operation (POST /platform/referencedata/v1/groupingsets) creates a grouping set.

A grouping set is a collection of analysis settings that defines a reusable template for creating analysis groups. The grouping set specifies rules for resolving the differences between settings in the constituent DLM and HD analysis results. This resource facilitates the creation and management of analysis group workflows.

Once defined, a grouping set can be used to quickly and easily define configuration setting used in grouping jobs.

{
  "groupingSetName": "KK_Storyparam",
  "groupingSetDetails": [
    {
      "peril": "Severe Convective Storm",
      "region": "Australia",
      "perilCode": "CS",
      "RegionCode": "AU",
      "modelRegionCode": "AUCS",
      "modelVersionCode": "10.0",
      "eventRateSchemeId": 48,
      "eventRateSchemeName": "RMS Stochastic Event Rates",
      "simulationSetName": "Australia Severe Convective Storm, Risklink 10.0",
      "simulationSetId": 59,
      "isDefault": false
    }
  ]
}

The grouping set defines a mapping between event rate scheme and simulation set (PEQT) mapping for every model and event rate scheme combination. In this context, a model is defined as the combination of a region, peril, and version.

PropertyTypeDescription
perilstringName of peril.
regionstringName of region.
perilCodestringTwo-letter code that identifies natural or man-made phenomenon that creates insurance loss, e.g. EQ, FL, CS, TR, WF, WS, WT.
regionCodestringTwo letter code of region analyzed, e.g. AU, CB, AC. See RMS Model Regions and Region Codes.
modelRegionCodestringFour-letter code comprised of a two-letter code for the region and a two-letter code for the peril e.g. ACEQ, EUFL. For information about models and model updates, see Models and Data in the Moody's Support Center.
modelVersionCodestringVersion of model to use in analysis. See Models Available in Risk Modeler
eventRateSchemeIdintegerID of event rate scheme.
eventRateSchemeNamestringName of event rate scheme.
simulationSetNamestringName of simulation set.
simulationSetIdintegerID of period event quantile table (PEQT).
isDefaultBooleanIf true, is the default grouping set.

Update Grouping Set

The Update Grouping Set operation (PATCH /platform/referencedata/v1/groupingsets/{id}) supports the status the status of the grouping set, i.e. whether it is active or inactive and whether it is or is not tenant's default grouping set.

Every grouping set is immutable. Once defined, grouping set configurations cannot be updated. The tenant can, however, create copies of existing grouping sets and redefine the configurations in those copies to support different use cases.

Admins can specify a grouping set as default (isDefault) or archive (isArchive).

{
  "isDefault": true,
  "isActive": false
}

The request accepts two optional body parameters:

PropertyTypeDescription
isDefaultBooleanIf true, the grouping set is the default grouping set for the tenant.
isActiveBooleanIf true, the grouping set is active and can be assigned to a grouping job.

Archives Grouping Set

The Archive Grouping Set operation (DELETE /platform/referencedata/v1/groupingsets/{id}) archives ("soft deletes") the specified grouping set.

A grouping set is a collection of analysis settings that facilitate the creation of analysis groups. The grouping set specifies rules setting for resolving the differences between settings in the constituent DLM and HD analysis results.

Search Grouping Set

The Search Grouping Set operation (GET /platform/referencedata/v1/groupingsets) returns a list of grouping sets.

A grouping set is a collection of analysis settings that facilitate the creation of analysis groups. The grouping set specifies rules setting for resolving the differences between settings in the constituent DLM and HD analysis results.

This operation supports filtering by property values:

PropertyTypeComparisonList
groupingSetName String=, !=, LIKE, NOT LIKEIN, NOT IN
groupingSetId String=,!=IN, NOT IN
createdBy String=, !=, LIKE, NOT LIKEIN, NOT IN
createdAT String=, <, >

For each record that matches the query filter, the response returns a grouping set object:

[
    {
    "groupingSetName": "string",
    "groupingSetId": integer,
    "createdBy": "string",
    "createdAt": "string",
    "isActive": true,
    "isDefault": true
    }
]

Get Grouping Set

The Get Grouping Set operation (GET /platform/referencedata/v1/groupingsets/{id}) returns the specified grouping set.

A grouping set is a collection of analysis settings that facilitate the creation of analysis groups. The grouping set specifies rules setting for resolving the differences between settings in the constituent DLM and HD analysis results.


{
    "groupingSetName": "string",
    "groupingSetDetails":
        [
            {
                "peril": "string",
                "region": "string",
                "perilCode": "string",
                "RegionCode": "string",
                "modelRegionCode": "string",
                "modelVersionCode": "string",
                "eventRateSchemeId": integer,
                "eventRateSchemeName": "string",
                "simulationSetName": "string",
                "simulationSetId": integer,
                "isSeeded": boolean
            }
      ],
    "createdBy": "string",
    "createdAt": "string"
}

Risk Data API

EDM Batch Edit

The EDM Batch Edit operation (POST /platform/riskdata/v1/exposures/{exposureId}/bulk-edit) creates, updates, or deletes multiple exposures (portfolios, accounts, locations, policies, or treaties) in the specified EDM.

The operation now enables clients to add or update location conditions and policy conditions without the need to specify a parent location or policy. Previously, updating either required that the updates be nested in a parent location or policy.

{
  "portfolios": [],
  "accounts": [],
  "locations": [],
  "policies": [],
  "stepPolicies": [],
  "treaties": [],
  "policyConditions": [
    {
      "policyId": 4,
      "policyConditionName": "TestPolicy12",
      "isPredefined": false,
      "limit": 10000000.0,
      "deductible": 1000000.0,
      "deductibleType": "DEFAULT",
      "conditionType": "POLICY_RESTRICTION",
      "parentCondition": {
        "id": 33,
        "code": null,
        "name": "FL_All"
      },
      "policyNumber": null,
      "policyConditionCriterias": [
        {
          "id": 0,
          "logic": "",
          "openPar": "",
          "field": "FLZONE",
          "operator": "=",
          "value": "1",
          "closePar": ""
        }
      ],
      "operationType": "INSERT",
      "label": null,
      "percentOfLossDeductibleAmount": 0.0,
      "isFranchiseDeductible": "NO"
    },
    {
      "policyId": 4,
      "policyConditionName": "TestPolicy123",
      "isPredefined": false,
      "limit": 10000000.0,
      "deductible": 1000000.0,
      "deductibleType": "DEFAULT",
      "conditionType": "POLICY_RESTRICTION",
      "parentCondition": {
        "id": 33,
        "code": null,
        "name": "FL_All"
      },
      "policyNumber": null,
      "policyConditionCriterias": [
        {
          "id": 0,
          "logic": "",
          "openPar": "",
          "field": "FLZONE",
          "operator": "=",
          "value": "1",
          "closePar": ""
        }
      ],
      "operationType": "INSERT",
      "label": null,
      "percentOfLossDeductibleAmount": 0.0,
      "isFranchiseDeductible": "NO"
    }
  ],
  "locationConditions": [
    {
      "locationId": 4,
      "conditionId": 3,
      "isIncluded": "Included",
      "operationType": "INSERT"
    },
    {
      "locationId": 4,
      "conditionId": 4,
      "isIncluded": "Included",
      "operationType": "INSERT"
    }
  ]
}

Search Analysis Results

The Search Analysis Results operation (GET /platform/riskdata/v1/analyses) returns a list of analysis results.

This operation now returns the owner, createdBy, and groupingSetId properties for each analysis result.

{
  "analysisId": 5066007,
  "analysisName": "xxxx-xxxx-xxxx",
  "createDate": "2026-06-22T21:04:27",
  "description": "",
  "sourceRdmName": "",
  "analysisRegroupType": "Not Required",
  "exposureResourceType": "PORTFOLIO",
  "engineVersion": "RL25",
  "groupType": "CDGP",
  "cedantName": "",
  "lobName": "",
  "exposureResourceId": 0,
  "exposureName": "",
  "jobId": 24431077,
  "jobGuid": "ed499807-b672-47b8-a0eb-e5cc671fa599",
  "isGroup": true,
  "modelProfile": {
    "id": 0,
    "code": "",
    "name": ""
  },
  "outputProfile": {
    "id": 0,
    "code": "",
    "name": ""
  },
  "engineType": "Group",
  "analysisStatus": "Analyzed",
  "analysisType": "Exceedance Probability",
  "peril": "Multi-Peril",
  "subPeril": "Multi-SubPeril",
  "region": "Multiple regions",
  "lossAmplification": "Building, Contents, BI",
  "analysisMode": "Distributed",
  "insuranceType": "Property",
  "vulnerabilityCurve": "Vulnerability - Default",
  "username": "BalaTestKey1",
  "eventRateSchemeNames": [],
  "currency": {
    "currencyName": "US Dollar",
    "currencyCode": "USD",
    "currencyScheme": "RMS",
    "currencyAsOfDate": "2025-05-28T00:00:00Z",
    "currencyVintage": "RL25"
  },
  "engineSubType": "Not Applicable",
  "analysisFramework": "ELT",
  "simulationSetId": 0,
  "simulationPeriods": 0,
  "exposureSetGuid": "8a399c35-3c42-44f5-84c5-4c8fcd76f27d",
  "uri": "/platform/riskdata/v1/analyses/5066007",
  "exposureResourceName": "",
  "thumbprint": "EUW1.20260622.4",
  "ownerName": "xxxxxxxxxxxx",
  "createdBy": "xxxxxxxxxxxx",
  "securableName": "",
  "additionalProperties": [
    {
      "key": "groupedAnalysisIds",
      "properties": [
        {
          "id": 39957,
          "name": "api_group_dlm",
          "value": ""
        },
        {
          "id": 39958,
          "name": "group-gset-test",
          "value": ""
        }
      ]
    },
    {
      "key": "propagateDetailedOutput",
      "properties": [
        {
          "id": 0,
          "name": "",
          "value": "No"
        }
      ]
    },
    {
      "key": "eventRateSchemes",
      "properties": [
        {
          "id": 0,
          "name": "",
          "value": {
            "regionCode": "NA",
            "perilCode": "EQ",
            "framework": "ELT",
            "eventRateSchemeId": 163,
            "eventRateSchemeName": "RMS 17.0 NA   Stochastic Event Rates",
            "simulationSetId": 0,
            "simulationSetName": "",
            "simulationPeriods": 0
          }
        },
        {
          "id": 0,
          "name": "",
          "value": {
            "regionCode": "AU",
            "perilCode": "WS",
            "framework": "ELT",
            "eventRateSchemeId": 183,
            "eventRateSchemeName": "RMS 18.0 AU Stochastic Event Rates",
            "simulationSetId": 0,
            "simulationSetName": "",
            "simulationPeriods": 0
          }
        }
      ]
    },
    {
      "key": "groupingSetId",
      "properties": [
        {
          "id": 0,
          "name": "",
          "value": "100003"
        }
      ]
    },
    {
      "key": "analysisInfo",
      "properties": [
        {
          "id": 0,
          "name": "scalefactor",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "singlefamilyrate",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "multifamilyrate",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "otherrate",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "singlefamilyfactor",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "multifamilyfactor",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "otherfactor",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "scalebldgvalues",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "scalecontentvalues",
          "value": "0.0"
        },
        {
          "id": 0,
          "name": "scalebivalues",
          "value": "0.0"
        }
      ]
    }
  ],
  "variationId": 0,
  "eventInfo": {
    "eventDateBehavior": "",
    "eventDate": ""
  },
  "entitlement": "",
  "securableUri": "/platform/riskdata/v1/exposureSet/5065987",
  "analysisUuid": "86ff2551-7a0d-465c-a406-fe794f0f01e4",
  "appAnalysisId": 39961,
  "engineId": 102,
  "statusId": 102,
  "typeId": 102,
  "perilCode": "YY",
  "subPerilId": -1,
  "regionCode": "YY",
  "lossAmplificationId": 7,
  "modeId": 2,
  "insuranceTypeId": 1,
  "vulnerabilityCurveId": 0,
  "engineSubTypeCode": "NA",
  "isMultiEvent": false,
  "engineSubTypeId": 0,
  "securableId": 5065987,
  "securableType": "exposureSet",
  "tagIds": []
}

Calculate Marginal Impact

The Calculate Marginal Impact operation (POST /platform/riskdata/v1/analysis/marginal-impact) calculates marginal impact statistics that measures the effect of adding additional accounts to an existing portfolio as differential losses.

This operation supports two distinct operations for calculating PLT-based marginal impact analysis. This optional settings object specifies the methodology used to calculate PLT metrics: STANDARD or SMOOTHED. Standard EP metrics are computed from a single period (AEP) or period/event (OEP), which can result in metrics that are unstable, noisy and, ultimately, ill-suited to decision making. Smoothed EP metrics produce marginal impact metrics that are better suited to PLT-based analysis.

{
  "currency": {
    "currencyAsOfDate": "2025-05-28",
    "currencyCode": "USD",
    "currencyScheme": "RMS",
    "currencyVintage": "RL25"
  },
  "outputLevel": "ACCOUNT",
  "marginalImpactAnalysisIds": [266014],
  "jobName": "Test_MI",
  "eventRateSchemeIds": [12],
  "settings": {
    "pltMethodology": ["SMOOTHED"]
  }
}

If unspecified, the operation produces STANDARD EP metrics.

The settings object includes the pltMethodology array parameter which accepts the following values SMOOTHED, STANDARD, or both.

PLT MethodologyDescription
SMOOTHEDBetter suited to decision making.
STANDARDRaw single-period AEP or period/event OEP EP curves.
BOTHBoth smoothed and standard curves.

Get Marginal EP Metrics

The Get Marginal EP Metrics operation (GET /platform/riskdata/v1/analysis/{analysisId}/marginal-ep) returns exceedance probability (EP) metrics for a specified ELT-based or PLT-based marginal impact analysis.

This operation now supports the optional epType query parameter that enables the client to filter EP metrics by exceedence probability metric type. One of AEP (aggregate EP), CEP (stochastic conditional EP), OEP (occurence EP),SMOOTHED_AEP (Smoothed AEP), SMOOTHED_OEP (Smoothed OEP), TCE_AEP (tail conditional expectation AEP), TCE_OEP (tail conditional expectation OEP), and UNRECOGNIZED.

Get Marginal EP Metrics

The Get Marginal EP Metrics operation (GET /platform/riskdata/v1/analysis/{analysisId}/marginal-ep) returns exceedance probability (EP) metrics for a specified ELT-based or PLT-based marginal impact analysis.

This operation now returns smoothed metrics. Standard EP metrics are computed from a single period (AEP) or period/event (OEP), which can result in metrics that are unstable, noisy and, ultimately, ill-suited to decision making. Smoothed EP metrics produce marginal impact metrics that are better suited to PLT-based analysis.

Smoothed marginal metrics are available across all HD-supported financial perspectives For details. see Calculate Marginal Impact.

Get Marginal EP Metrics

The Get Marginal EP Metrics operation (GET /platform/riskdata/v1/analysis/{analysisId}/marginal-ep) returns exceedance probability (EP) metrics for a specified ELT-based or PLT-based marginal impact analysis.

This operation now returns up to 50 EP return periods. Previously, this operation returned the standard 12 EP points per curve: 2, 5, 10, 25, 50, 100, 200, 250, 500, 1000, 5000, 10000, 50000.

Tenant Data API

Search VPN Connection

The Search VPN Connection operation returns a list VPN connections.

A VPN connection is a set of configurations that define a secure, encrypted site-to-site connection between a tenant's on-premises SQL Server instances and their managed server instances on Data Bridge.

This operation now returns the tunnelStatus property, which shows the status of the VPN connection.

[
  {
    "vpnConnectionId": 13,
    "customerGatewayIps": ["31.1.1.1"],
    "comments": "",
    "dnsResolverIps": ["10.1.1.109", "10.1.11.139"],
    "bgpRouting": true,
    "customerBgpAsn": "12345",
    "irpBgpAsn": "64512",
    "customerSubnetIps": ["10.0.0.0/16", "172.0.0.0/16"],
    "irpSubnetIps": ["10.1.8.0/22", "10.1.0.0/22", "10.1.16.0/22"],
    "irpTargetIps": ["10.1.11.140", "10.1.19.143", "10.1.3.118"],
    "encryptionType": "preSharedKey",
    "encryptionKeyResourceId": 6,
    "enabledApps": ["DATA_BRIDGE"],
    "vpnStatus": "off",
    "tunnelSettings": [
      {
        "id": 1,
        "tunnelOutsideIp": "34.240.175.224",
        "sourceIp": "169.254.51.170/30",
        "neighborIp": "169.254.51.169/30",
        "status": "UP", //three possible values: unknown, up or down. New field.
        "statusMessage": "1 BGP ROUTES, IPSEC DOWN" // New field.
      },
      {
        "id": 2,
        "tunnelOutsideIp": "99.80.188.134",
        "sourceIp": "169.254.177.58/30",
        "neighborIp": "169.254.177.57/30",
        "status": "DOWN", //three possible values: unknown, up or down. New field.
        "statusMessage": "1 BGP ROUTES, IPSEC DOWN" // New field.
      }
    ],
    "createdBy": "[email protected]",
    "createdAt": "2026-03-12T17:01:08.534838Z",
    "enabledAt": null
  }
]

Get VPN Connection

The Get VPN Connection operation returns the specified VPN connections.

A VPN connection is a set of configurations that define a secure, encrypted site-to-site connection between a tenant's on-premises SQL Server instances and their managed server instances on Data Bridge.

This operation now returns the tunnelStatus property, which shows the status of the VPN connection.

Search Tenant Jobs

The Search Tenant Jobs operation (GET /platform/tenantdata/v1/jobs) returns a list of jobs.

This operation now accepts startTime and endTime values greater than than 30 days.

ParameterDescription
startTimeDate of earliest job returned in ISO 8601 format. If both startTime and endTime are undefined, response returns jobs submitted in the last 30 days. If only startTime is undefined, defaults to specified endTime minus 31 days.
endTimeDate of latest job returned in ISO 8601 format. If both startTime and endTime are undefined, response returns jobs submitted in the last 30 days.

Update Tenant Job

The Update Tenant Job operation (PATCH /platform/tenantdata/v1/jobs/{id}) supports updating the status or priority of the specified tenant job.

This operation now enables the client to set the specified job to have a veryhigh status.