Skip To Content

Version Management Service

Description

The VersionManagementServer service exposes the management capabilities necessary to support feature services that work with branch versioned datasets. This service only supports datasets that use branch versioning.

The following are supported operations for the VersionManagementServer service:

The version resource returns information about a single version and supports many operations for that version.

VersionManagementServer resources and operations

Usage requirements

When using the VersionManagementServer resources and operations, keep the following in mind:

  • The portal account is used to access resources and operations of the version management server. This account determines whether the operation is allowed by the portal user as well as the results that are returned. For example, the versions resource only lists versions with public and protected access permission. Only service and portal administrators can see private versions that the active portal user does not own.
  • A read or edit session must be started before running certain operations. Read and edit sessions are started by calling the startReading and startEditing operations, respectively.
  • Locks must be obtained on a version when running certain operations. Each operation will try to place the necessary lock on the version before processing and will fail if it cannot acquire the appropriate lock. The following lock modes are available in a geodatabase:
    • Shared lock—Operations that allow more than one user to access a version require a shared lock.
    • Exclusive lock—Operations that must be performed in isolation require an exclusive lock on the version.

License:
Organization members must be assigned a license for the ArcGIS Advanced Editing user type extension to use the following Version Management Server operations:

Capabilities

The capabilities property was introduced at ArcGIS Enterprise 10.8.1. This property returns the capabilities the service supports. Refer to the JSON Response syntax section below for the ArcGIS Enterprise version when each capability was first introduced:

  • supportsConflictDetectionByAttribute—The reconcile operation supports the conflictDetection parameter to allow conflicts to be defined by attribute. Services that don't support this capability define all conflicts by object.
  • supportsPartialPost—The post operation supports using the rows parameter to support posting a portion of the edits (differences) in the version to default.
  • supportsDifferencesWithMoment—The differences operation supports using the fromMoment parameter to allow a user to obtain differences between two moments.
  • supportsDifferencesWithLayers—The differences operation supports using the layers parameter to allow users to filter the differences returned by layer instead of getting differences for all layers.
  • supportsAsyncReconcile—The reconcile operation supports asynchronous processing using the async parameter.
  • supportsAsyncPost—The post operation supports asynchronous processing using the async parameter.
  • supportsAsyncDifferences—The differences operation supports asynchronous processing using the async parameter.
  • supportsOutSR—The differences and conflicts operations support the outSR parameter.

JSON Response syntax


{
  "name": "Version Management Server",
  "type": "Map Server Extension",
  "defaultVersionName": "<versionName>"
  "defaultVersionGuid": <guid>, 
  "capabilities": {
   "supportsConflictDetectionByAttribute": <true | false>, //Introduced at ArcGIS Enterprise 10.8.1.
   “supportsPartialPost” : <true | false>, //Introduced at ArcGIS Enterprise 10.9.
   "supportsDifferencesFromMoment" : <true | false>, //Introduced at ArcGIS Enterprise 10.9.
   "supportsDifferencesWithLayers" : <true | false>, //Introduced at ArcGIS Enterprise 10.9.1.
   "supportsAsyncReconcile" : <true | false>, //Introduced at ArcGIS Enterprise 10.9.1.
   "supportsAsyncPost" : <true | false>, //Introduced at ArcGIS Enterprise 10.9.1.
   "supportsAsyncDifferences" : <true | false>, //Introduced at ArcGIS Enterprise 10.9.1.
   "supportsOutSR" : <true | false>, //Introduced at ArcGIS Enterprise 11.1.
  }
}

Example usage

The following is a request URL example:

https://myserver.esri.com/server/rest/services/LandUse/VersionManagementServer

JSON response:

{
 "name": "Version Management Server",
 "type": "Map Server Extension",
 "defaultVersionName": "SDE.DEFAULT",
 "defaultVersionGuid": "{BD3F4817-9A00-41AC-B0CC-58F78DBAE0A1}", 
 "capabilities": {
  "supportsConflictDetectionByAttribute": true,
  “supportsPartialPost”: true, 
  "supportsDifferencesFromMoment": true,
  "supportsDifferencesWithLayers": true,
  "supportsAsyncReconcile": true,
  "supportsAsyncPost": true,
  "supportsAsyncDifferences": true,
  "supportsOutSR": true
  } 
}