Skip to main content
This page is part of an AI coding agent skill and is written for agents, not humans. For the human-readable Base44 docs, see the developer documentation.

base44 workflows runs

List workflow runs for this app, newest first. This is the fastest way to answer “did my scheduled work fail, and why” — each failed run carries the task that failed and the underlying error.

Syntax

This command can run from a linked project, or outside a project when you pass --app-id <id> or set BASE44_APP_ID.

Options

Examples

Output

Each run shows its start time, status, workflow name, trigger type, and duration. Failed and cancelled runs also show the error:
With --json, each run is a record: runId, workflowId, workflowName, triggerType, status, startedAt, completedAt, durationMs, stepsCount, errorMessage, isTestRun, statusReason.

Notes

  • Trigger types: scheduled (cron), entity, connector, in_app_agent, app_user_auth, app_publish, app_payment, webhook, goal_file — plus manual, which is what a run is stamped with when it was dispatched without a trigger type at all (a “run now” typically lands here).
  • Test runs are included. Runs fired via “run now” (including the dashboard’s test button) carry a test tag appended to the trigger type in the output (e.g. (scheduled, test)) and isTestRun: true in JSON. If you just created a workflow and fired it to verify, your run WILL appear — marked as a test run.
  • A failed run’s errorMessage names the failing task and, when a backend function was the cause, includes the function’s HTTP failure. To dig further into that function’s own logs, use base44 logs --function <name> — and remember function logs can take ~30s to appear.
  • --limit tops out at 200 and there is no paging flag, so a busy app’s older runs cannot be reached from the CLI. Narrow with --since and --status rather than assuming a full page is the whole history.
  • statusReason is a typed reason populated only for failed/cancelled runs (e.g. insufficient_credits); read it together with status.
  • Apps that predate Workflows (legacy automations) are not readable via this command; it fails with an explanation rather than returning an empty list.
  • An empty result tells you whether the app has no workflows at all, or has workflows but no matching runs — read the message, don’t assume.