GP Service
- URL:http://<catalog-url>/<serviceName>/GPServer
- Child Resources:Task
- Version Introduced:9.3
Description
Geoprocessing is a fundamental part of enterprise GIS operations. Geoprocessing provides the data analysis, data management, and data conversion tools necessary for all GIS users.
A geoprocessing service represents a collection of published tools that perform tasks necessary for manipulating and analyzing geographic information across a wide range of disciplines. Each tool performs one or more operations, such as projecting a data set from one map projection to another, adding fields to a table, or creating buffer zones around features. A tool accepts input (such as feature sets, tables, and property values), executes operations using the input data, and generates output for presentation in a map or further processing by the client. Tools can be executed synchronously (in sequence) or asynchronously. When used with the REST API, a geoprocessing service should always be published as a pooled service.
Use a geoprocessing service to do the following:
- List available tools and their input/output properties
- Execute a task synchronously
- Submit a job to a task asynchronously
- Get job details, including job status
- Display results using a map service
- Retrieve results for further processing by the client
Many uses of GIS involve the repetition of work, and this creates the need for a framework to provide automation of workflows. Geoprocessing services answer this need by using a model to combine a series of operations in a sequence and then exposing the model as a tool.
The REST API geoprocessing service resource provides basic information associated with the service, such as the service description, the tasks provided, the execution type, and the result's map server name.
The geoprocessing service resource has operations that return results after a task is successfully completed. The supported operations are as follows:
- Execute task: Used when the execution type is synchronous. When a task is executed synchronously, a user must wait for the results.
- Submit job: Used when the execution type is asynchronous. When a job is submitted asynchronously, a user can do other things while awaiting notice that the task is completed.
Resource Hierarchy
Request Parameters
Parameter |
Details |
---|---|
f |
Description: The response format. The default response format is html. Values: html | json |
Example Usage
Example 1: URL for the "ESRI_DriveTime_US" GP service on sampleserver1.
http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Network/ESRI_DriveTime_US/GPServer
JSON Response Syntax
{"currentVersion": <currentVersion>,"serviceDescription" : "<serviceDescription>","tasks": ["<taskName1>", "<taskName2>"],"executionType": "<executionType>","resultMapServerName": "<resultMapServerName>","maximumRecords": <maximumRecords>//Added at 10.1}
JSON Response Example
{"currentVersion": 10.1,"serviceDescription" : "Test Geoprocessing Service Description","tasks": ["BufferPointsByRef","BufferLinesByRef","BufferPolygonsByRef"],"executionType": "esriExecutionTypeAsynchronous","resultMapServerName": "BufferByRef","maximumRecords": 1000}