List workflow runs for an app

Changed on

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns runs across every workflow on the app, newest first.

Set status to return only runs in one state. Set since to return only runs that started after a moment in time.

<Warning>The response includes fields beyond the ones documented here. Don't rely on undocumented response fields, as they can change at any time.</Warning>

get/api/apps/{app_id}/workflows/runs

Request

  • Base URL: https://app.base44.com
  • URL: https://app.base44.com/api/apps/{app_id}/workflows/runs
  • Auth: HTTP bearer

Path parameters

app_idstring required

ID of the app whose workflows you want to work with.

Query parameters

limitinteger

Most runs to return.

offsetinteger

How many runs to skip, for paging.

statusstring

Keep only runs in this state, for example failed.

sincestring

Keep only runs that started at or after this ISO 8601 datetime.

Response

Runs across the app's workflows, newest first.

run_idstring required

ID of the run.

workflow_idstring required

ID of the workflow that ran.

workflow_namestring

Name of that workflow at the time of the run.

trigger_typestring

What started the run: scheduled, entity, connector, in_app_agent, app_user_auth, app_publish, app_payment, webhook, or goal_file. See Triggers for what each one fires on. A run started through Run a workflow now with no payload to replay reports manual instead.

statusstring required

How the run is going: running, completed, failed, or cancelled. See Workflow status for how this compares to the workflow's own status.

started_atstring nullable

When the run started, as an ISO 8601 UTC timestamp.

completed_atstring nullable

When the run finished, as an ISO 8601 UTC timestamp. This is null while it is still running.

duration_msinteger

How long the run took, in milliseconds. This is 0 while it is still running.

steps_countinteger

Steps the run executed.

error_messagestring nullable

Why the run failed. This is null when it did not fail.

is_test_runboolean

This is true when the run was started by hand through Run a workflow now, rather than by its trigger.

credits_consumednumber

Credits the run used.

status_reasonstring

Why the run failed or was cancelled. Empty on runs that finished successfully.

Example response

[
  {
    "run_id": "0195f2a1-4c3e-7b21-9f0d-2a5c8e1b4d77",
    "workflow_id": "68b1c0d4e7b91d003c45a1f2",
    "workflow_name": "Email me new signups",
    "trigger_type": "scheduled",
    "status": "completed",
    "started_at": "2026-08-25T09:12:44Z",
    "completed_at": "2026-08-25T09:12:46Z",
    "duration_ms": 1840,
    "steps_count": 3,
    "error_message": "The email step failed because the recipient address was missing.",
    "credits_consumed": 0.5
  }
]

Changes

    • breaking

      query request parameter since list-of-types was narrowed by removing types null

    • breaking

      query request parameter status list-of-types was narrowed by removing types null

    • info

      for the query request parameter since, the type was generalized from no type to string

    • info

      for the query request parameter status, the type was generalized from no type to string

    • info

      the security scope read_only was added to the endpoint's security scheme PersonalAccessTokenAuth

    • info

      the security scope full_access was removed from the endpoint's security scheme PersonalAccessTokenAuth