GraphQL for the delivery of bioinformatics web APIs and application to ZincBind

Bioinform Adv. 2021 Sep 29;1(1):vbab023. doi: 10.1093/bioadv/vbab023. eCollection 2021.

Abstract

Motivation: Many bioinformatics resources are provided as 'web services', with large databases and analysis software stored on a central server, and clients interacting with them using the hypertext transport protocol (HTTP). While some provide only a visual HTML interface, requiring a web browser to use them, many provide programmatic access using a web application programming interface (API) which returns XML, JSON or plain text that computer programs can interpret more easily. This allows access to be automated. Initially, many bioinformatics APIs used the 'simple object access protocol' (SOAP) and, more recently, representational state transfer (REST).

Results: GraphQL is a novel, increasingly prevalent alternative to REST and SOAP that represents the available data in the form of a graph to which any conceivable query can be submitted, and which is seeing increasing adoption in industry. Here, we review the principles of GraphQL, outline its particular suitability to the delivery of bioinformatics resources and describe its implementation in our ZincBind resource.

Availability and implementation: https://api.zincbind.net.

Supplementary information: Supplementary data are available at Bioinformatics Advances online.