curl
# One POST submits the whole graph
curl -X POST $BASE/api/v1/workflows \
-H "Authorization: Bearer $KEY" \
-d '{
"name":"ci",
"nodes":[
{"ref":"build","image":"node:20","command":["npm","run","build"]},
{"ref":"test","image":"node:20","command":["npm","test"],"retries":1},
{"ref":"deploy","image":"alpine","command":["sh","-c","echo deploying"]},
{"ref":"alert","image":"alpine","command":["sh","-c","echo paging"]}
],
"edges":[
{"from":"build","to":"test","condition":"on_success"},
{"from":"test","to":"deploy","condition":"on_success"},
{"from":"test","to":"alert","condition":"on_failure"}
]
}'
# 202 {"workflow_id":"01K...","status":"pending"}
# Each node = one run = one track_id