ArcGIS REST API

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 GIS users with data analysis, data management, and data conversion tools.

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 GIS tasks 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, then exposing the model as a tool.

The REST API GP 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 GP 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.

Request parameters

ParameterDetails
f

Description: The response format. The default response format is html.

Values: html | json

Example usage

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}