The ArcGIS Server REST API, short for Representational State Transfer, provides a simple, open Web interface to services hosted by ArcGIS Server. All resources and operations exposed by the REST API are accessible through a hierarchy of endpoints or Uniform Resource Locators (URLs) for each GIS service published with ArcGIS Server.
When using the REST API, you typically start from a well-known endpoint, which represents the server catalog. The table of contents for this Help system mimics the hierarchy of resources in the REST API. The default start URL for an ArcGIS Server installation is:
http://<host>:8399/argis/rest
http://<host>/arcgis/rest
For example, to get to the root directory of ArcGIS Online services, the URL is:
http://server.arcgisonline.com/arcgis/rest/services
From this base URL, you can traverse to any of the listed service and resources and operations associated with the service.
The REST API is stateless, which means that REST does not keep track of transactions from one request to the next. Each request must contain all the information necessary for successful processing.
Each ArcGIS Server comes with a Services Directory. Services Directory is a view of the ArcGIS Server REST API in HTML format. You can browse the contents of an ArcGIS Server and obtain information such as service metadata and supported operations that can be useful in developing applications.
The REST API has some level of support for each of the ArcGIS Server service types. Each service is a resource and has a unique URL. Although a REST system always returns only representations of resources to the clients, for the sake of simplicity, the resources of the ArcGIS REST API are divided into two types: resources and operations. For more information, see Resources and Operations.
The supported service types that include operations are map, geocode, geoprocessing, geometry, and image. Another set of service types that are supported as resources but have no associated operations include network, geodata, and globe services. One requirement of the REST API is that ArcGIS Server services must be configured as Pooled. Non-pooled services are not listed in Services Directory.
You can find out additional details about all resources and operations supported by the REST API. To get going, you can review Catalog, which is the root node for the API.
The REST API supports responses in several formats. The format is specified by using the query parameter f in the URL. The list of supported formats includes html (HyperText Markup Language), json (JavaScript Object Notation), image, kmz (compressed KML, or Keyhole Markup Language), help, lyr (layer file), nmf (ArcGIS Explorer map file), jsapi (JavaScript), ve (Virtual Earth), and gmaps (Google Maps). For more details, see Output formats.
You can request KML in several different ways, which is summarized in KML support.
In addition to being a browser for your published data, Services Directory also provides access to an administrative console. The administration page is needed to refresh the site after adding, deleting, and updating services or after updating to a new version of the REST API. Services Directory can also be disabled through the console. For more information, see REST API Admin.
The REST API works out-of-the-box without any configuration. However, if you export and deploy the REST instance elsewhere, or if you needed to change the defaults, you will need to modify some configuration files. For more information, see Configuring the REST API.