At the plenary session of the 2010 Esri International User Conference, company president Jack Dangermond announced, “In a few weeks [Esri] will release a new REST API into the open world using a standards process”. Dangermond likened this to Esri’s release of the shapefile specification and promised that it “will pioneer open access in the Web environment.”
His promise was fulfilled with this week’s rollout of the GeoServices REST Specification, Version 1.0, a document on the Esri Web site which is freely available through the Open Web Foundation license agreement.
The GeoServices REST Specification describes a way to develop GIS Web services that follow an expected pattern of communication. The introduction of the document describes how you would implement the specification:
“To implement the GeoServices REST Specification, developers architect the back-end server to respond to specifically structured REST requests in an expected way. For example, if someone issues a request to the server to export a map image, such as http://<mapservice-url>/export?bbox=-127.8,15.4,-63.5,60.5, the server should return a map image with a lower left coordinate of (-127.8, 15.4) and an upper right coordinate of (-63.5, 60.5). How the server generated the image is not so important as the fact that it responded in an expected way when issued a URL whose structure followed the GeoServices REST Specification.”
As you examine the specification, you’ll probably notice that it looks like the ArcGIS REST API. This is deliberate. The pattern we have used at Esri for exposing REST-ful GIS services has been embraced by thousands of developers who use the ArcGIS Web APIs. It is a simple and intuitive way of structuring and talking to GIS Web services. We wanted you to feel free to implement services that follow the same pattern.