magic-etl
Installation
SKILL.md
Creating Magic ETL Dataflows Programmatically in Domo
Overview
Magic ETL dataflows in Domo can be created, updated, and executed entirely through the API. The dataflow is defined as a JSON document describing a directed acyclic graph (DAG) of actions — input nodes, transforms, and output nodes.
CLI-First: Use the Java CLI for read/run operations, fall back to REST API for creation.
| Operation | Use CLI? | Use REST API? |
|---|---|---|
| List dataflows | list-dataflow -dt MAGIC |
— |
| Export dataflow definition | list-dataflow -i <ID> -d -f <FILE> |
— |
| Run a dataflow | dataflow-run-now -i <ID> |
POST .../executions (more reliable for new dataflows) |
| Check execution status | list-dataflow -i <ID> -e -l 1 |
GET .../executions?limit=1 |
| Create a dataflow | — | POST /api/dataprocessing/v1/dataflows (dev token works, executes immediately) |
| Update a dataflow | set-dataflow-properties -i <id> -d <file> |
PUT /api/dataprocessing/v1/dataflows/<ID> |
| Rename/enable | set-dataflow-properties -i <id> -n/-e/-s |
PUT /api/dataprocessing/v1/dataflows/<ID>/patch |
Important: Creating dataflows via API (POST) works with developer tokens (confirmed April 2026). The created dataflow can be executed immediately — no UI save required. The domo (ryuu) CLI is for Custom App publishing only; use the Java CLI (domoutil.jar) for dataflow operations.