PLoS Computational Biology (Jan 2015)

A RESTful API for accessing microbial community data for MG-RAST.

  • Andreas Wilke,
  • Jared Bischof,
  • Travis Harrison,
  • Tom Brettin,
  • Mark D'Souza,
  • Wolfgang Gerlach,
  • Hunter Matthews,
  • Tobias Paczian,
  • Jared Wilkening,
  • Elizabeth M Glass,
  • Narayan Desai,
  • Folker Meyer

DOI
https://doi.org/10.1371/journal.pcbi.1004008
Journal volume & issue
Vol. 11, no. 1
p. e1004008

Abstract

Read online

Metagenomic sequencing has produced significant amounts of data in recent years. For example, as of summer 2013, MG-RAST has been used to annotate over 110,000 data sets totaling over 43 Terabases. With metagenomic sequencing finding even wider adoption in the scientific community, the existing web-based analysis tools and infrastructure in MG-RAST provide limited capability for data retrieval and analysis, such as comparative analysis between multiple data sets. Moreover, although the system provides many analysis tools, it is not comprehensive. By opening MG-RAST up via a web services API (application programmers interface) we have greatly expanded access to MG-RAST data, as well as provided a mechanism for the use of third-party analysis tools with MG-RAST data. This RESTful API makes all data and data objects created by the MG-RAST pipeline accessible as JSON objects. As part of the DOE Systems Biology Knowledgebase project (KBase, http://kbase.us) we have implemented a web services API for MG-RAST. This API complements the existing MG-RAST web interface and constitutes the basis of KBase's microbial community capabilities. In addition, the API exposes a comprehensive collection of data to programmers. This API, which uses a RESTful (Representational State Transfer) implementation, is compatible with most programming environments and should be easy to use for end users and third parties. It provides comprehensive access to sequence data, quality control results, annotations, and many other data types. Where feasible, we have used standards to expose data and metadata. Code examples are provided in a number of languages both to show the versatility of the API and to provide a starting point for users. We present an API that exposes the data in MG-RAST for consumption by our users, greatly enhancing the utility of the MG-RAST service.