Skip to content

API and CLI

Designed, planned from 0.1

Everything the web interface does can be done from a script, a LIMS such as LabID, a CI job or an AI agent.

  • REST API under /api/v1, described by an OpenAPI file. Errors follow one format, and writes are safe to retry.
  • Events as they happen: live in the browser, by webhooks, or to message systems (MQTT, AMQP, Kafka).
  • The spectio command line, with the same models as depictio's CLI.
  • Tokens for people, robots and services, each limited to what it needs.
# launch, wait, keep the IDs
spectio run launch nf-core/rnaseq@3.27.0 --env demo-hpc --project liver-tc \
  --params params.yaml --samplesheet samples.csv --wait --result-json run.json

# what is waiting for me, then decide
spectio gate list --assigned-to me
spectio gate decide gate_01JB… --approve --exclude S03 --comment "S03: 40 reads"

The commands above show the planned CLI; they do not exist yet.

Design details: API and data model, CLI and shared libraries.