Browse the docs

GET /runs

Returns the most recent runs, newest first, optionally for one macro.

Details #

Each element is a full run, the same shape as in GET /runs/{id}.

curl -s -H "Authorization: Bearer $TOKEN" "http://127.0.0.1:48080/runs?limit=2&macro=m_4f2a9c"
[
  {
    "id": "r_91c0d2",
    "macroId": "m_4f2a9c",
    "firedBy": { "trigger": "manual", "event": {} },
    "startedAt": "2026-10-24T09:14:02Z",
    "endedAt": "2026-10-24T09:14:02Z",
    "status": "succeeded",
    "dryRun": false,
    "steps": [{ "stepId": "s1", "status": "ok", "startedAt": "2026-10-24T09:14:02Z", "ms": 3 }],
    "variablesAfter": { "key": "DAY-412" }
  }
]

Parameters #

curl --unix-socket "$SWITCHBOARD_HOME/engine.sock" -X GET http://localhost/runs

Recent runs, newest first. The Unix socket needs no token; loopback 127.0.0.1:48080 needs Authorization: Bearer <api-token>.

Gotchas #

  • Over loopback every request needs Authorization: Bearer <token>; see GET /macros.

See also #