Programmatic Access to Cytoscape Features

In this chapter, you will learn how to use Cytoscape from command line and scripts.



Cytoscape has intuitive graphical user interface for interactive network data integration, analysis, and visualization. It is a great way for exploratory data analysis, but what happens if you have hundreds of data files or need to ask someone to execute your data analysis workflows? It is virtually impossible to apply same operations to hundreds of networks manually with GUI, and more importantly, although you can save your results as session files, you cannot save your workflows if your analysis is based on point-and-click GUI operation. Recording workflows is the key feature for reproducible data analysis, but it was a missing feature in past versions for Cytoscape. The latest version of Cytoscape has several options to script and automate your workflows.

Options for Programmatic Access

There are two ways to access Cytoscape programmatically: Commands and RESTful API.


Commands is the built-in Cytoscape feature to automate your workflow as a simple script. You can learn more about this feature in this section:

Sample Scripts



In some cases, you may need to use fully featured programming languages, such as Python, R, Ruby, or JavaScript,

Commands REST API

In addition to running scripts, Commands have REST API to access the

By default, this feature is disables. To run REST server for Commands, please follow these steps:

  1. Open a terminal session:
    • PowerShell (For windows)

    • Terminal or [[|iTerm]] (For Mac)
    • Terminal (For Linux)
  2. Start Cytoscape from command-line:
    • For Mac/Linux
      For Windows



cyREST is available from

Debugging your workflows


Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux