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¯o=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.