Concurrencies

URL:
https://<network-layer-url>/concurrencies
Methods:
GET
Required Capability:
The ArcGIS Location Referencing license is required to use this resource.
Version Introduced:
10.6.1

Description

This operation calculates concurrencies and dominance for a set of routes and measure ranges. A concurrency is an overlapping section of two or more routes in the same LRS Network that share a common centerline.

This operation determines the dominant route for each concurrency section. Route dominance is based on a set of business rules that can be configured for an LRS network. If the route dominance for a group of concurrent routes cannot be successfully calculated, the response includes a dominanceError property describing the reason. The following table lists the possible dominance errors:

Dominance errorDescription

Tie

Two or more routes have the same attribute value for a concurrent section.

NoAttributes

A route does not have an attribute value for a concurrent section, or the attribute value is null.

TooManyAttributes

A route has multiple values of an event attribute for the same location in a concurrent section.

NotCalibrated

A concurrent section of a route is not calibrated with measures, or centerline start and endpoints cannot be located along the route.

Request parameters

ParameterDetails

f

(Optional)

Specifies the response format. The default response format is html.

Values: html | json | pjson

locations

(Required)

A list of routes and optional measure ranges where concurrencies can be found.

Syntax:

1
2
3
4
5
6
7
8
9
10
11
[
  { // find concurrencies along an entire route
    "routeId": "<routeId>"
  },
  { // find concurrencies within a measure range
    "routeId": "<routeId>",
    "fromMeasure": <measure>,
    "toMeasure": <measure>
  },
  ...
]

temporalViewDate

The time instant to use as a temporal view date when locating route features. If this parameter is not specified, the current date is used.

The parameter value is a number that represents the number of milliseconds since epoch (January 1, 1970) in UTC.

Syntax:

1
temporalViewDate=<timeInstant>

Example:

1
temporalViewDate=1230768000000 (1 Jan 2009 00:00:00 GMT)

fromDate

The start of a time range to use when locating route features. This parameter cannot be used with the temporalViewDate parameter. The parameter value is a number that represents the number of milliseconds since epoch (January 1, 1970) in UTC.

Syntax:

1
fromDate=<timeInstant>

Example:

1
fromDate=1230768000000 (1 Jan 2009 00:00:00 GMT)

toDate

The end of a time range to use when locating route features. This parameter cannot be used with the temporalViewDate parameter. The parameter value is a number that represents the number of milliseconds since epoch (January 1, 1970) in UTC.

Syntax:

1
toDate=<timeInstant>

Example:

1
toDate=1230768000000 (1 Jan 2009 00:00:00 GMT)

gdbVersion

(Optional)

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

Syntax:

1
gdbVersion=<version>

Example:

1
gdbVersion="user1.version1"

Example usage

Example 1

URL for calculating concurrencies for the entire measure span of a route.

1
https://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90"}]

Example 2

URL for calculating concurrencies for a measure range on a route.

1
https://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90","fromMeasure":25.1,"toMeasure":26.8}]

Example 3

URL for calculating concurrencies for multiple routes.

1
https://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90","fromMeasure":25.1,"toMeasure":26.8},{"routeId":"US20"}]

Example 4

URL for calculating concurrencies for a time instant (view date).

1
https://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90"}]&temporalViewDate=1230768000000

Example 5

URL for calculating concurrencies for a time range.

1
https://sampleserver/arcgis/rest/services/MyLRS/MapServer/exts/LRServer/networkLayers/0/concurrencies?f=json&locations=[{"routeId":"I90"}]&fromDate=1230768000000&toDate=1388534400000

JSON response syntax

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{
  "locations": [
    {
      // source location properties
      "routeId": "<routeId>",
      "fromMeasure": <measure>,
      "toMeasure": <measure>,

      "concurrencies": [  // a list of all sections with concurrent routes
        {
          "routeId": "<routeId>",
          "fromMeasure": <measure>,
          "toMeasure": <measure>,
          "fromDate": <timestamp>,
          "toDate": <timestamp>,
          "sectionId": <integer>,  // correlates multiple concurrency records for a single section of shared centerline
          "isDominant": <true | false>,
          "dominanceError": "<Tie | NoAttributes | TooManyAttributes | NotCalibrated>"
        },
        ...
      ]
    },
    ...
  ]
}

JSON response example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{
  "locations": [
    {
      "routeId": "US101",
      "fromMeasure": 0,
      "toMeasure": 5.8,
      "concurrencies": [
        {
          "routeId": "US101",
          "fromMeasure": 1.2,
          "toMeasure": 1.65,
          "fromDate": 1230768000000,
          "toDate": null,
          "sectionId": 1,
          "isDominant": true
        },
        {
          "routeId": "SR210",
          "fromMeasure": 37.45,
          "toMeasure": 37.9,
          "fromDate": 1230768000000,
          "toDate": null,
          "sectionId": 1,
          "isDominant": false
        },
        {
          "routeId": "US101",
          "fromMeasure": 5.0,
          "toMeasure": 5.8,
          "fromDate": 1230768000000,
          "toDate": null,
          "sectionId": 2,
          "isDominant": false,
          "dominanceError": "NoAttributes"
        },
        {
          "routeId": "I5",
          "fromMeasure": 81.54,
          "toMeasure": 80.7,
          "fromDate": 1230768000000,
          "toDate": null,
          "sectionId": 2,
          "isDominant": true
        }
      ]
    }
  ]
}

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.

You can no longer sign into this site. Go to your ArcGIS portal or the ArcGIS Location Platform dashboard to perform management tasks.

Your ArcGIS portal

Create, manage, and access API keys and OAuth 2.0 developer credentials, hosted layers, and data services.

Your ArcGIS Location Platform dashboard

Manage billing, monitor service usage, and access additional resources.

Learn more about these changes in the What's new in Esri Developers June 2024 blog post.

Close