Skip To Content
ArcGIS Developer

Derive Event Measures



The ArcGIS Location Referencing license is required to use this resource.

This operation populates and updates the derived route ID and measure values on point and line events with those fields configured and enabled.

Editing is supported only for multiuser (enterprise and workgroup) geodatabases. File and personal geodatabases do not support web editing.

Request parameters


Optional parameter to specify the response format. The default response format is html.

Values: html | json


Description: Optional parameter specifying whether all event feature classes in the network will be updated. The default is false.

Values: true | false


Description: Required parameter specifying a list of event layer IDs that will be updated when updateAllEvents is set to false. This is ignored when updateAllEvents is set to true.


Description: Optional parameter containing a list of Object IDs, a SQL WHERE clause, and a time instant defining the routes on which the operation will be performed for each specified layer.


  "objectIds": [1,2,3,4,5],
  "where": "lineName in ('MainA', 'MainB', 'MainC')",
  "time": [1200045, 1200100]

For time, a single value can be provided. For example, time instant can be an input or a pair of values representing start and end time.


Optional parameter to specify the geodatabase version to use. If this parameter is not specified, the published map's version is used.

Syntax: gdbVersion=<version>

Example: gdbVersion="user1.version1"


Optional parameter set by a client during long transaction editing on a branch version. The sessionId parameter value is a GUID that clients establish at the beginning and use throughout the edit session. The sessonId parameter ensures isolation during the edit session.

Syntax: sessionId=<guid>

Example: sessionId="{E81C2E2D-C6A7-40CB-BF61-FB499E53DD1D}"


Optional parameter to specify whether the response reports the time edits that were applied. If returnEditMoment=true, the server returns the time edits that were applied in the response's editMoment key. The default value is false.

Values: true|false

This parameter was added at 10.7.


Optional parameter that returns features edited due to the geodatabase behavior that results from applying the edits. For example, if a feature is deleted and it is the origin in a composite relationship, the destination feature is automatically deleted from the geodatabase. If returnServiceEditsOption is set to originalAndCurrentFeatures, the deleted destination feature is returned along with a reference to the deleted original feature in the response. Note that, even for deletions, the geometry and attributes of the edited feature are returned.

Results returned from applyEdits are organized layer by layer. If returnServiceEditsOption is set to originalAndCurrentFeatures, each layer can have edited features returned in an editedFeatures object.

Service-level applyEdits response structure:

    attachments: {

The editedFeatures object returns full features, including the original features prior to deletion, the original and current features for updates, and the current rows for inserts that can contain implicit changes (for example, as a result of a calculation rule).

editedFeatures response structure:

  "editedFeatures": [
      "adds": [ <feature1>, <feature2>], 	// current features
      "updates": [[<originalFeature3>, < currentFeature3>], [<originalFeature4>, < currentFeature4>]],
      "deletes": [ <feature5>, <feature6>]	// original features

The response includes no editedFeatures values and exceededTransferLimit=true if the count of edited features to return is more than the maxRecordCount value. If clients are using this parameter to maintain a cache, they should invalidate the cache when exceededTransferLimit=true is returned. If the server encounters an error when generating the list of edits in the response, exceededTransferLimit=true is also returned.

Edited features are returned in the spatial reference of the feature service as defined by the services spatialReference object or by the spatialReference value of the layers extent object.

The default value is none, which does not include editedFeatures values.

Values: none|originalAndCurrentFeatures

Example usage

Example 1

URL to update all events.


Example 2

URL to update the events based on the specified event layer IDs and layer definitions.

https://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/6/deriveEventMeasures?updateAllEvents=false&eventLayerIds[2,3]&layerDefinitions= [{“id”:3,”layerDefinition”:{"where":"LINEID='MainLine'"}}]&gdbVersion=sde.version1&sessionId=%7B1CC754B0-08B2-49B9-80E5-1481C3CA2871%7D&f=json

JSON response syntax

  "statusURL": <jobIdURL>

JSON response example