> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get workflow run

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

Reads one run with its step-by-step log.

`steps` walks the tasks the run executed in order, each with its status, timing, and error if it failed. `definition_version_id` names the version the run executed, which can be older than the workflow's current one.

Each step also carries the data that went into it and came out of it. Those fields are not documented here because their shape is whatever your workflow passes around, but they are in the response.

This endpoint is limited to 120 requests per minute.

<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>

<Note>This endpoint accepts a personal API key. Workspace API keys are not authorized for it and are rejected with a 403.</Note>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json get /api/apps/{app_id}/workflows/{workflow_id}/runs/{run_id}
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - ApiKeyAuth: []
paths:
  /api/apps/{app_id}/workflows/{workflow_id}/runs/{run_id}:
    get:
      summary: Get workflow run
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Reads one run with its step-by-step log.


        `steps` walks the tasks the run executed in order, each with its status,
        timing, and error if it failed. `definition_version_id` names the
        version the run executed, which can be older than the workflow's current
        one.


        Each step also carries the data that went into it and came out of it.
        Those fields are not documented here because their shape is whatever
        your workflow passes around, but they are in the response.


        This endpoint is limited to 120 requests per minute.


        <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>


        <Note>This endpoint accepts a personal API key. Workspace API keys are
        not authorized for it and are rejected with a 403.</Note>
      operationId: get_run_api_apps__app_id__workflows__workflow_id__runs__run_id__get
      parameters:
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the app whose workflows you want to work with.
            title: App Id
          description: ID of the app whose workflows you want to work with.
          example: 6820f3a4e7b91d003c45a1f2
        - name: workflow_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              ID of the workflow, as returned in `id` by [List
              workflows](/api-reference/list-workflows).
            title: Workflow Id
          description: >-
            ID of the workflow, as returned in `id` by [List
            workflows](/api-reference/list-workflows).
          example: 68b1c0d4e7b91d003c45a1f2
        - name: run_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              ID of the run, as returned in `run_id` by [List runs for a
              workflow](/api-reference/list-runs-for-a-workflow).
            title: Run Id
          description: >-
            ID of the run, as returned in `run_id` by [List runs for a
            workflow](/api-reference/list-runs-for-a-workflow).
          example: 0195f2a1-4c3e-7b21-9f0d-2a5c8e1b4d77
      responses:
        '200':
          description: The run and its steps.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunDetailResponse'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            You don't have access to this app, the app does not exist, the app
            still runs the older automations engine instead of workflows, or you
            used a workspace API key.
        '404':
          description: >-
            There is no workflow with this ID on this app, or no run with this
            ID on that workflow.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    RunDetailResponse:
      properties:
        run_id:
          type: string
          title: Run Id
          description: ID of the run.
          example: 0195f2a1-4c3e-7b21-9f0d-2a5c8e1b4d77
        workflow_id:
          type: string
          title: Workflow Id
          description: ID of the workflow that ran.
          example: 68b1c0d4e7b91d003c45a1f2
        workflow_name:
          type: string
          title: Workflow Name
          description: Name of that workflow at the time of the run.
          default: ''
          example: Email me new signups
        trigger_type:
          type: string
          title: Trigger Type
          description: What started the run.
          default: ''
          example: scheduled
        status:
          type: string
          title: Status
          description: >-
            How the run is going: `running`, `completed`, `failed`, or
            `cancelled`.
          example: completed
        started_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Started At
          description: When the run started, as an ISO 8601 timestamp.
          example: '2026-08-25T09:12:44Z'
        completed_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Completed At
          description: When the run finished. `null` while it is still running.
          example: '2026-08-25T09:12:46Z'
        duration_ms:
          type: integer
          title: Duration Ms
          description: How long the run took, in milliseconds.
          default: 0
          example: 1840
        steps_count:
          type: integer
          title: Steps Count
          description: Steps the run executed.
          default: 0
          example: 3
        error_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Message
          description: Why the run failed. `null` when it did not fail.
          example: The email step failed because the recipient address was missing.
        is_test_run:
          type: boolean
          title: Is Test Run
          description: '`true` when the run was started by hand rather than by its trigger.'
          default: false
          example: false
        ai_analysis:
          anyOf:
            - type: string
            - type: 'null'
          title: Ai Analysis
          description: >-
            Stored failure explanation, once [Analyze a failed workflow
            run](/api-reference/analyze-a-failed-workflow-run) has generated
            one. `null` until then.
          example: >-
            The email step failed because the recipient address was missing from
            the trigger payload.
        steps:
          items:
            additionalProperties: true
            type: object
          type: array
          title: Steps
          description: >-
            The tasks the run executed, in order. Each carries `task_name`,
            `task_type`, `status`, `started_at`, `completed_at`, `duration_ms`
            and `error_message`, plus the data that went into and came out of
            the step, whose shape is whatever your workflow passes around.
          example:
            - completed_at: '2026-08-25T09:12:46Z'
              duration_ms: 1840
              error_message: ''
              started_at: '2026-08-25T09:12:44Z'
              status: completed
              task_name: send_email
              task_type: call
        credits_consumed:
          type: number
          title: Credits Consumed
          description: Credits the run used.
          default: 0
          example: 0.5
        status_reason:
          type: string
          title: Status Reason
          description: >-
            Why the run failed or was cancelled. Empty on runs that finished
            successfully.
          default: ''
          example: ''
        definition_version_id:
          type: string
          title: Definition Version Id
          description: >-
            Version the run executed, which can be older than the workflow's
            current one. Read it with [Get workflow
            version](/api-reference/get-workflow-version).
          default: ''
          example: 9f2c1a7b3e5d84f60c1b2a9e7d4f8c3b6a5e2d1f0c9b8a7e6d5c4b3a2f1e0d9c
      type: object
      required:
        - run_id
        - workflow_id
        - status
      title: RunDetailResponse
      description: Single run with step-by-step event log.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: Personal API key.

````