You are here:
Environmental Models as a Service: Enabling Interoperability through RESTful Endpoints and API Documentation.
Flaishans, J., M. Galvin, A. Ignatius, Carmen Kuan, Gerry Laniak, K. Wolfe, AND Tom Purucker. Environmental Models as a Service: Enabling Interoperability through RESTful Endpoints and API Documentation. International Congress on Environmental Modelling and Software, Toulouse, FRANCE, July 10 - 14, 2016.
Presented at iEMSs 2016.
Achieving interoperability in environmental modeling has evolved as software technology has progressed. The recent rise of cloud computing and proliferation of web services initiated a new stage for creating interoperable systems. Scientific programmers increasingly take advantage of streamlined deployment processes and affordable cloud access to move algorithms and data to the web for discoverability and consumption. In these deployments, environmental models can become available to end users through RESTful web services and consistent application program interfaces (APIs) that consume, manipulate, and store modeling data. RESTful modeling APIs also promote discoverability and guide usability through self-documentation. Embracing the RESTful paradigm allows models to be accessible via a web standard, and the resulting endpoints are platform- and implementation-agnostic while simultaneously presenting significant computational capabilities for spatial and temporal scaling. RESTful APIs present data in a simple verb-noun web request interface: the verb dictates how a resource is consumed using HTTP methods (e.g., GET, POST, and PUT) and the noun represents the URL reference of the resource on which the verb will act. The RESTful API can self-document in both the HTTP response and an interactive web page using the Open API standard. This lets models function as an interoperable service that promotes sharing, documentation, and discoverability. Here, we discuss the process of making a set of science models used by the EPA for pesticide registration available as RESTful endpoints and provide an example API for environmental models, using U.S. Environmental Protection Agency pesticide registration models.