BrAPI

From BrAPI-Wiki
Revision as of 00:54, 21 March 2021 by Brapicoordinatorselby (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The Breeding API specifies a standard interface for plant phenotype/genotype databases to serve their data to crop breeding applications. It is a shared, open API, to be used by all data providers and data consumers who wish to participate. Initiated in May 2014, it is currently in an actively developing state, so now is the time for potential participants to help shape the specifications to ensure their needs are addressed. The listserve for discussions and announcements is here. Additional documentation is in the Github wiki. For demos and implementations examples checkout apiary documentation.

Use the BrAPI Getting Started Guide to start using BrAPI now.

What Is BrAPI?

BrAPI Domains.png


The Breeding API (BrAPI) is a Standardized RESTful Web Service API Specification for communicating Plant Breeding Data. BrAPI allows for easy data sharing between databases and tools involved in plant breeding.

API
An Application Programming Interface (API) is used to interact with and control an application programatically. Just as a User Interface (UI) allows a human user to interact with an application, an API allows a separate piece of code to interact with an application. An API can be used to send input data, receive output data, configure settings, and trigger actions within an application.
Web Service
Web Services are computational services accessed over a computer network. Typically, when people talk about web services, they are referring to a standardized web service communication protocol. The 2 web service protocols which are currently the most popular are SOAP and REST.
REST
Although the above paragraph indicates REpresentational State Transfer (REST) is a web service protocol, strictly speaking, it is an architecture or design framework. The REST architectural ideas are applied by using the HTTP protocol for information transport. REST uses the standard HTTP verbs (GET, POST, PUT, etc) to define different types of actions, and URLs to indicate where a request should be sent and what input data to use. When sending or receiving data, complex data structures are typically defined using JSON or XML.
Standardized
BrAPI is an attempt to standardize the commands and data structures needed for typical plant breeding applications.
Specification
At the core, BrAPI is a standardized Specification. BrAPI is not a tool for transporting data, it only documentation which describes how to transport data.


History

Add a History

BrAPI Documentation

Best Practices

Use Cases

Hackathons

Old Documentation

External Resources

GitHub

Apiary

SwaggerHub

BrAPPs

BrAPI Test Server

BrAVA Validation Server