- URL:
- https://<root>/<serviceName>/GPServer/GetToolInfo/execute
- Methods:
GET
POST
Description
The Utilities service contains tools that provide auxiliary information for working with network analysis services available with ArcGIS Enterprise. Currently, the Utilities service contains two tools, Get
and Get
. The Get
tool provides information such as the description of the network dataset used for the analysis and processing limits for a tool available in the geoprocessing service.
Request parameters
Parameter | Description |
---|---|
(Required) | Specify the service name containing the tool. |
(Required) | Specify the tool name in the geoprocessing service. |
(Required) | Provide the identity of a user who has the necessary permissions to access the service. |
(Required) | The response value. The default value is Values: |
(Optional) |
Specify whether the information of all the source feature classes that participate in the network dataset will be included. The default value is Values: |
Required parameters
The Get
request takes service
and tool
parameters, which are both required.
serviceName
Specify the service name containing the tool. Use one of the following keywords that reference a particular geoprocessing service in the parameter value:
async
—The asynchronous geoprocessing service used to perform the closest facility analysis.Closest Facility async
—The asynchronous geoprocessing service used to perform the location-allocation analysis.Location Allocation async
—The asynchronous geoprocessing service used to perform the route analysis.Route async
—The asynchronous geoprocessing service used to perform the service area analysis.Service Area async
—The asynchronous geoprocessing service used to perform the vehicle routing problem analysis.VRP sync
—The synchronous geoprocessing service used to perform the vehicle routing problem analysis.VRP async
—The asynchronous geoprocessing service used to perform the origin destination cost matrix analysis.ODCost Matrix
The default value is async
.
toolName
Specify the tool name in the geoprocessing service. Use a valid tool name in the geoprocessing service specified by the service
parameter. The following are valid tool names:
Find
for theClosest Facilities async
serviceClosest Facility Solve
for theLocation Allocation async
serviceLocation Allocation Find
for theRoutes Route
serviceGenerate
for theService Areas async
serviceService Area Solve
for theVehicle Routing Problem async
serviceVRP Edit
for theVehicle Routing Problem sync
serviceVRP Generate
for theOrigin Destination Cost Matrix async
serviceODCost Matrix
The default value is Find
.
includeNetworkSourceInfo
Specify whether the information of all the source feature classes that participate in the network dataset will be included.
-
true
: Information such as the name, type, ID, and the schema for all the source feature classes that participate in the network dataset will be included. -
false
: The information will not be included. This is the default.
The default value is false
.
token
Use this parameter to specify a token that provides the identity of a user that has the permissions to access the service. The security and authentication page provides more information about how an access token can be obtained.
token=<yourToken>
f
Use this parameter to specify the response format. The parameter can have json
or pjson
as arguments, for example, f=json
. The pjson
value is used for printing the JSON response in a pretty format.
Output parameters
Upon successful completion, the service returns the tool information, which contains the network dataset and the service limits for the tool.
toolInfo
Use this parameter to a get a description of the network dataset used for the analysis and processing limits for a tool available in the geoprocessing service.
Syntax example for toolInfo
The tool
parameter is returned as a JSON feature set with the following syntax:
{
"paramName": "toolInfo",
"dataType": "GPRecoGPStringrdSet",
"value": {
"networkDataset": {
"attributeParameterValues": [
{
"attributeName": "<field1AttributeName>",
"parameterName": "<field1ParameterName>",
"parameterType": "<field1Type>",
"value": "<field1Value>"
},
{
"attributeName": "<field2AttributeName>",
"parameterName": "<field2ParameterName>",
"parameterType": "<field2Type>",
"value": "<field2Value>"
}
],
"networkAttributes": [
{
"dataType": "<field1DataType>",
"name": "<field1Name>",
"parameterNames": "<field1ParameterNames>",
"restrictionUsageParameterName": "<field1RestrictionUsageParameterName>",
"trafficSupport": <trafficSupport1Value>,
"units": <field1Units>,
"usageType": <field1UsageType>
},
{
"dataType": "<field2DataType>",
"name": "<field2Name>",
"parameterNames": "<field2ParameterNames>",
"restrictionUsageParameterName": "<field2RestrictionUsageParameterName>",
"trafficSupport": <trafficSupport2Value>,
"units": <field2Units>,
"usageType": <field2UsageType>
}
],
"trafficSupport": <value>,
"serviceLimits": {
"<field1>": <value11>,
"<field2>": <value12>
}
}
}
Example for toolInfo
The following is an example of the tool
parameter:
{
"paramName": "toolInfo",
"dataType": "GPString",
"value": {
"networkDataset": {
"attributeParameterValues": [
{
"attributeName": "Avoid Limited Access Roads",
"parameterName": "Restriction Usage",
"parameterType": "Double",
"value": "AVOID_MEDIUM"
},
{
"attributeName": "Avoid Ferries",
"parameterName": "Restriction Usage",
"parameterType": "Double",
"value": "AVOID_MEDIUM"
},
{
"attributeName": "Avoid Unpaved Roads",
"parameterName": "Restriction Usage",
"parameterType": "Double",
"value": "AVOID_HIGH"
}
],
"networkAttributes": [
{
"dataType": "Integer",
"name": "Hierarchy",
"parameterNames": [],
"restrictionUsageParameterName": null,
"trafficSupport": "NONE",
"units": "Unknown",
"usageType": "Hierarchy"
},
{
"dataType": "Double",
"name": "Minutes",
"parameterNames": [],
"restrictionUsageParameterName": null,
"trafficSupport": "NONE",
"units": "Minutes",
"usageType": "Cost"
},
{
"dataType": "Integer",
"name": "RoadClass",
"parameterNames": [],
"restrictionUsageParameterName": null,
"trafficSupport": "NONE",
"units": "Unknown",
"usageType": "Descriptor"
}
],
"trafficSupport": "HISTORICAL_AND_LIVE"
},
"serviceLimits": {
"forceHierarchyBeyondDistance": 50.0,
"forceHierarchyBeyondDistanceUnits": "Miles",
"maximumFeaturesAffectedByLineBarriers": 500.0,
"maximumFeaturesAffectedByPointBarriers": 250.0,
"maximumFeaturesAffectedByPolygonBarriers": 2000.0,
"maximumStops": 10000.0,
"maximumStopsPerRoute": 150.0
}
}
}
Example usage
Below is a sample request URL that demonstrates how to get to the Get
tool from the Utilities service using the URL in the following form:
https:///GetToolInfo/execute?parameters
This example demonstrates how to get the tool info for the Solve
tool.
GetToolInfo request example
|
JSON Response syntax
The request to the Get
tool returns a JSON response that contains any warning messages from the service operation as well as a value for the output parameter tool
. If the request fails to run, the response only contains the error
property that contains the error messages.
JSON Response syntax for successful requests
{
"results": [
{
"paramName": "<paramName1>",
"dataType": "<dataType1>",
"value": <valueLiteralOrObject1>
}
],
"messages": [
{
"type": "<type1>",
"description": "<description1>"
},
{
"type": "<type2>",
"description": "<description2>"
}
]
}
JSON Response syntax for failed requests
{
"error": {
"code": <code>,
"message": "<message>",
"details": [
"<details>"
]
}
}
JSON Response example
{
"results": [
{
"paramName": "toolInfo",
"dataType": "GPString",
"value": {
"networkDataset": {
"attributeParameterValues": [
{
"attributeName": "Avoid Limited Access Roads",
"parameterName": "Restriction Usage",
"parameterType": "Double",
"value": "AVOID_MEDIUM"
},
{
"attributeName": "Avoid Ferries",
"parameterName": "Restriction Usage",
"parameterType": "Double",
"value": "AVOID_MEDIUM"
},
{
"attributeName": "Avoid Unpaved Roads",
"parameterName": "Restriction Usage",
"parameterType": "Double",
"value": "AVOID_HIGH"
}
],
"networkAttributes": [
{
"dataType": "Double",
"name": "Minutes",
"parameterNames": [],
"restrictionUsageParameterName": null,
"trafficSupport": "NONE",
"units": "Minutes",
"usageType": "Cost"
},
{
"dataType": "Integer",
"name": "RoadClass",
"parameterNames": [],
"restrictionUsageParameterName": null,
"trafficSupport": "NONE",
"units": "Unknown",
"usageType": "Descriptor"
},
{
"dataType": "Integer",
"name": "TimeZoneID",
"parameterNames": [],
"restrictionUsageParameterName": null,
"trafficSupport": "NONE",
"units": "Unknown",
"usageType": "Descriptor"
}
],
"trafficSupport": "HISTORICAL_AND_LIVE"
},
"serviceLimits": {
"forceHierarchyBeyondDistance": 50.0,
"forceHierarchyBeyondDistanceUnits": "Miles",
"maximumFeaturesAffectedByLineBarriers": 500.0,
"maximumFeaturesAffectedByPointBarriers": 250.0,
"maximumFeaturesAffectedByPolygonBarriers": 2000.0,
"maximumOrders": 2000.0,
"maximumOrdersPerRoute": 200.0,
"maximumRoutes": 100.0
}
}
}
],
"messages": []
}