Skip To Content
ArcGIS Developer
Dashboard

Update Lifecycle Status

Description

License:

The ArcGIS Data Reviewer extension is required to use this resource.

Note:

This resource is dependent on the ArcGIS Data Reviewer ArcMap runtime-based server object extension (SOE). ArcGIS Enterprise 10.9.x, part of the ArcGIS 2021 releases, is the last release of ArcGIS Enterprise to support services published from ArcMap.

Consider Data Reviewer capabilities enabled using ArcGIS Pro and integrated in the Validation service.

When a feature or row is submitted to the Reviewer workspace, it becomes a Reviewer result. Data Reviewer exposes a data quality control workflow that helps you review a result, correct any problems with the result, and then verify the fix to the result.

Lifecycle status represents the state of a Reviewer result in the workflow. A result moves through the following three lifecycle phases:

  • Review—the initial status of a result given by the tool that submitted it
  • Correction—the status when the fix or correction has been applied to an anomaly identified by the Reviewer result
  • Verification—the status when the fix to the Reviewer result has been verified

Each lifecycle phase contains status values that describe how the result was handled. The REST operation allows you to change a result's lifecycle status. Changing lifecycle status moves a result between lifecycle phases and indicates how a result was handled within a phase. For example, a result in the Correction phase could have a lifecycle status of Resolved or Mark as Exception. If you have verified the correction to this result, you can change its lifecycle phase to Verification and its lifecycle status to Acceptable.

Lifecycle status is progressive. A result moves from Review to Correction to Verification.

This operation requires four parameters:

  • sessionId—an existing session Id number in the Reviewer workspace. Represents the session that contains results to update.
  • lifecycleStatusLifecycle description code. Valid values are 1-9.
  • technicianName—user that performs the update.
  • filtersArray—array of filters that identify the rows to update in the Reviewer table.

The response is an object that contains an array of updated object IDs and a success status. If no matching records are found, the response contains an empty array: {"updateResults":[ ]}.

This operation does not support file geodatabases as Data Reviewer workspaces.

Response parameters

ParameterDetails
sessionId

An existing session Id number.

Values: { < session Id number> }

lifecycleStatus

Lifecycle status description code.

Values: { <1-9> }

technicianName

Username associated with lifecycle status update.

Values: { "<name>" }

filtersArray

An array of filters. Multiple filters are evaluated using AND operands: Filter 1 AND Filter 2 AND Filter 3.

JSON Structures: <filters>

f

The response format. The default response format is html.

Values: html | json

Example usage

Example 1: Updates lifecycle status values from 1 (Reviewed) to 2 (Resolved) for all results with a severity of 5 in session Id 1.

https://localhost:6080/arcgis/rest/services/reviewer/MapServer/exts/DataReviewerServer/ReviewerResults/updateLifecycleStatus?sessionId=1&lifecycleStatus=2&technicianName=Norbert&filtersArray={filtersArray:[{singleAttributeFilter:[{fieldName:"severity",fieldValue:5}]}]}&f=pjson

JSON Response example

{
 "updateResults": [
  {
   "objectId": 3,
   "success": true
  },
  {
   "objectId": 4,
   "success": true
  },
  {
   "objectId": 1882,
   "success": true
  }
 ]
}

Example 2: Updates lifecycle status for results in session Id 2 that have subtypes 'NewRoad' and 'RoadLine' to 9 (Exception). Request uses a listAttributeFilter.

https://localhost:6080/arcgis/rest/services/reviewer/MapServer/exts/DataReviewerServer/ReviewerResults/updateLifecycleStatus?sessionId=2&lifecycleStatus=5&technicianName=Norbert&filtersArray={filtersArray:[{listAttributeFilter:[{fieldName:"Subtype",fieldValue:['NewRoad','RoadLine']}]}]}&f=pjson

JSON Response example

{
 "updateResults": [
  {
   "objectId": 10,
   "success": true
  },
  {
   "objectId": 11,
   "success": true
  },
  {
   "objectId": 15,
   "success": true
  }
 ]
}