
Rowan Python API
The rowan package is the official Python client for the Rowan computational
chemistry platform. Submit workflows, poll or stream results, and manage
molecules, proteins, folders, and projects—all from plain Python.
Installation
Authentication
Create an API key on your account page, then either export it as an environment variable or set it directly on the module:
import os
os.environ["ROWAN_API_KEY"] # picked up automatically, or...
import rowan
rowan.api_key = "rowan-sk..."
Working in a shared process?
Use rowan.api_credentials to scope a key to a single with block instead
of setting it globally — handy for multi-tenant scripts or test suites.
Quickstart
This example runs a geometry optimization on isoprene and streams each optimization step as it completes:
- Folders are created on first use — no need to pre-create them in the UI.
- Presets bundle a method, basis set, and corrections into one named choice. See Basic Calculation for the full list and when to use each one.
stream_resultpolls the API and yields an updated result after every optimization step, instead of blocking until the whole workflow finishes.- The final yielded result is the completed workflow — same object you'd get from
workflow.resultafterworkflow.wait().
What's next
-
Workflows
Every Rowan workflow's submit function, settings, and result type, grouped by molecular modeling, property prediction, protein–ligand, spectrometry, and cheminformatics.
-
Objects
Molecule,Protein,Folder,Project,Workflow,Calculation, and the account/API-key types every workflow builds on.