Cytobank Application Programming Interface (API)
API stands for application programming interface. An API is the set of instructions and available options for how two pieces of software can interact. Just as a graphical user interface (GUI) offers a visual interface for humans to interact with a software application, an API offers a non-graphical interface that other software applications can use to interact with a particular software application.
We’ve seen emerging needs among scientists and research organizations the world over that are driving the development of our API. These needs often demand functionality beyond that given by basic browser-based analysis sessions, with themes including connecting the Cytobank platform directly to other information systems, allowing batch processing and chaining of native functionality, and supporting pull and push of data, configurations, statistics, and attachments from the Cytobank platform to support external pipelines, algorithms, and studies.
The value of the Cytobank API is realized in the flexibility it confers for connecting the Cytobank platform to any other non-Cytobank pipelines, workflows, systems, divisions, or data stores. Regardless of the language used -- R, Python, Matlab, Java, Ruby, Perl, etc. -- data and configurations can be programmatically pulled from or pushed to Cytobank via the API.
The possibilities are vast, but some examples include:
- Run any algorithm on data stored in Cytobank: The list of algorithms to help analyze data is growing continuously. Use the Cytobank API coupled to any algorithm to script the retrieval, processing, and reupload of results back to Cytobank.
- Data and attachment upload: Write a program that sends data to the Cytobank cloud automatically. This could be used for uploading large amounts of data in a less supervised fashion, or for linking custom analysis results back into a Cytobank experiment.
- Compliance: Create a script that scans a computer for FCS files then checks to make sure they are safely in Cytobank, and reports if they aren't. No data left behind.
- Connecting cross-disciplinary workflows: Allow bioinformaticians, statisticians, and the rest of the organizational orchestra to script the consumption of data produced and initially analyzed by biologists. Afterwards, attach the custom analysis results back to the Cytobank Experiment.
- Connecting information systems: Make transfers of data and information from Cytobank into ELNs and centralized repositories an automated process.
Figure 1. Visual Overview of the High-Level Themes Driving Development of the Cytobank API.
Get Started Using the Cytobank API
Our API opens the Cytobank platform to workflows and creative use far beyond the native functionality of Cytobank. The resources below will help you get started: