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

# List runs

> List workflow and agent runs with cursor pagination.



## OpenAPI

````yaml /api-reference/openapi.json get /api/v1/runs
openapi: 3.1.0
info:
  title: Eigenpal API
  version: 1.0.0
  description: >-
    Public REST API for inspecting automations, starting and monitoring runs,
    managing files, collecting human reviews, and running evaluations.
  contact:
    name: Eigenpal
    url: https://eigenpal.com
  license:
    name: Apache-2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
  - url: https://studio.eigenpal.com
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Metadata
    description: Authenticate and inspect the current API context.
  - name: Automations
    description: >-
      Inspect runnable workflow and agent automations, their versions, triggers,
      and source sync state.
  - name: Runs
    description: >-
      Start, monitor, retry, review, and debug automation runs, including
      artifacts.
  - name: Reviews
    description: >-
      Record human review verdicts, manage corrected outputs, and monitor review
      health.
  - name: Files
    description: Upload reusable files for later run or dataset use.
  - name: Evaluation
    description: >-
      Manage datasets, examples, evaluators, experiment batches, evaluator
      scores, and run promotion workflows.
paths:
  /api/v1/runs:
    get:
      tags:
        - Runs
      summary: List runs
      description: List workflow and agent runs with cursor pagination.
      operationId: runs.list
      parameters:
        - in: query
          name: type
          schema:
            type: string
        - in: query
          name: source
          schema:
            type: string
        - in: query
          name: status
          schema:
            type: string
        - in: query
          name: trigger
          schema:
            type: string
        - in: query
          name: triggeredBy
          schema:
            type: string
        - in: query
          name: sourceRef
          schema:
            type: string
        - in: query
          name: batchId
          schema:
            type: string
        - in: query
          name: exampleId
          schema:
            type: string
        - in: query
          name: exampleIdContains
          schema:
            type: string
        - in: query
          name: from
          schema:
            type: string
        - in: query
          name: to
          schema:
            type: string
        - in: query
          name: createdAfter
          schema:
            type: string
        - in: query
          name: createdBefore
          schema:
            type: string
        - in: query
          name: completedAfter
          schema:
            type: string
        - in: query
          name: completedBefore
          schema:
            type: string
        - in: query
          name: cursor
          schema:
            type: string
        - in: query
          name: offset
          schema:
            type: integer
            minimum: 0
            maximum: 9007199254740991
        - in: query
          name: limit
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - in: query
          name: ids
          schema:
            type: string
        - in: query
          name: experiments
          schema:
            type: string
        - in: query
          name: sort
          schema:
            type: string
        - in: query
          name: order
          schema:
            type: string
        - in: query
          name: reviewStatus
          schema:
            type: string
        - in: query
          name: reviewVerdict
          schema:
            type: string
        - in: query
          name: hasReview
          schema:
            type: string
        - in: query
          name: noReview
          schema:
            type: string
        - in: query
          name: hasCorrections
          schema:
            type: string
        - in: query
          name: reviewNoteContains
          schema:
            type: string
        - in: query
          name: reviewCreatedAfter
          schema:
            type: string
        - in: query
          name: reviewCreatedBefore
          schema:
            type: string
        - in: query
          name: reviewUpdatedAfter
          schema:
            type: string
        - in: query
          name: reviewUpdatedBefore
          schema:
            type: string
        - in: query
          name: reviewClosedAfter
          schema:
            type: string
        - in: query
          name: reviewClosedBefore
          schema:
            type: string
        - in: query
          name: sinceLastClosed
          schema:
            type: string
        - in: query
          name: sampleRate
          schema:
            description: >-
              Keep runs whose `sampleRank` is below this threshold (0–1). Pages
              may return fewer than `limit` rows when filtered.
            type: string
          description: >-
            Keep runs whose `sampleRank` is below this threshold (0–1). Pages
            may return fewer than `limit` rows when filtered.
      responses:
        '200':
          description: Runs page
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunsListResponse'
        '400':
          description: Validation error. Request shape did not match the spec.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
        '401':
          description: Missing or invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
        '403':
          description: API key lacks required scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
        '413':
          description: Payload too large. Upload exceeded the per-request size cap.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
        '429':
          description: Rate limit exceeded
          headers:
            Retry-After:
              description: Seconds until the next request may succeed
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorEnvelope'
components:
  schemas:
    RunsListResponse:
      type: object
      properties:
        runs:
          type: array
          items:
            $ref: '#/components/schemas/RunListItem'
        nextCursor:
          anyOf:
            - type: string
            - type: 'null'
      required:
        - runs
        - nextCursor
      additionalProperties: false
    ApiErrorEnvelope:
      type: object
      properties:
        issues:
          type: array
          items:
            $ref: '#/components/schemas/ApiErrorIssue'
        requestId:
          type: string
          description: Request id echoed via the x-request-id header
        hint:
          description: Suggested fix for known error patterns
          type: string
        docsUrl:
          description: Link to relevant docs
          type: string
      required:
        - issues
        - requestId
      additionalProperties: false
    RunListItem:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - workflow
            - agent
        finished:
          type: boolean
          description: True when the run has reached a terminal status.
        sampleRank:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Deterministic pseudo-random rank in [0, 1) for this run within the
            tenant. Use with a sample rate threshold to review a stable subset.
        timing:
          $ref: '#/components/schemas/RunTiming'
        source:
          $ref: '#/components/schemas/RunSource'
        trigger:
          $ref: '#/components/schemas/RunTrigger'
        eval:
          $ref: '#/components/schemas/RunEval'
          description: Present only when the run is eval-scoped.
        error:
          $ref: '#/components/schemas/RunError'
          description: >-
            Terminal failure message. Null when the run succeeded or is still in
            flight.
        execution:
          $ref: '#/components/schemas/RunExecutionMeta'
      required:
        - id
        - type
        - finished
        - sampleRank
        - timing
        - source
        - trigger
        - execution
      additionalProperties: false
    ApiErrorIssue:
      type: object
      properties:
        field:
          type: string
          description: JSON path of the offending field, or "<root>"
        message:
          type: string
          description: Human-readable error message
        code:
          type: string
          description: >-
            Machine-readable error code (e.g. invalid_value, not_found,
            api_trigger_disabled, manual_trigger_disabled)
        severity:
          type: string
          enum:
            - error
            - warning
          description: Issue severity
      required:
        - field
        - message
        - code
        - severity
      additionalProperties: false
    RunTiming:
      type: object
      properties:
        createdAt:
          type: string
        startedAt:
          anyOf:
            - type: string
            - type: 'null'
        completedAt:
          anyOf:
            - type: string
            - type: 'null'
        durationMs:
          anyOf:
            - type: number
            - type: 'null'
        cancelRequestedAt:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            When the user requested cancel; status may still be `running` until
            the worker stops.
      required:
        - createdAt
        - startedAt
        - completedAt
        - durationMs
        - cancelRequestedAt
      additionalProperties: false
    RunSource:
      type: object
      properties:
        id:
          type: string
          description: Owning workflow id or agent id.
        name:
          anyOf:
            - type: string
            - type: 'null'
        version:
          anyOf:
            - type: string
            - type: 'null'
          description: Workflow version label (workflow runs only).
        versionId:
          description: Captured workflow version id (workflow runs only).
          anyOf:
            - type: string
            - type: 'null'
        slug:
          description: Agent slug (agent runs only).
          anyOf:
            - type: string
            - type: 'null'
        model:
          description: LLM model used (agent runs only).
          anyOf:
            - type: string
            - type: 'null'
        git:
          description: Git provenance (agent runs only).
          anyOf:
            - $ref: '#/components/schemas/RunSourceGit'
            - type: 'null'
        implementationAvailable:
          description: >-
            Whether the live workflow/agent implementation still exists (`GET
            /api/v1/runs/:id` detail only).
          type: boolean
        automationFound:
          description: >-
            Whether the owning automation registry row still exists (`GET
            /api/v1/runs/:id` detail only).
          type: boolean
        currentVersion:
          description: >-
            Current released workflow version label when the source is live
            (`GET /api/v1/runs/:id` detail only).
          anyOf:
            - type: string
            - type: 'null'
      required:
        - id
        - name
        - version
      additionalProperties: false
    RunTrigger:
      type: object
      properties:
        type:
          anyOf:
            - type: string
            - type: 'null'
        by:
          anyOf:
            - type: object
              properties:
                id:
                  type: string
                name:
                  anyOf:
                    - type: string
                    - type: 'null'
                email:
                  type: string
              required:
                - id
                - name
                - email
              additionalProperties: false
            - type: 'null'
        email:
          description: >-
            Inbound email trigger details (agent runs, `expand=input` not
            required).
      required:
        - type
        - by
      additionalProperties: false
    RunEval:
      type: object
      properties:
        example:
          anyOf:
            - type: string
            - type: 'null'
          description: Eval example label (agent example name or workflow example id).
        exampleId:
          description: Workflow eval example folder id (workflow runs only).
          anyOf:
            - type: string
            - type: 'null'
        score:
          anyOf:
            - type: number
            - type: 'null'
        passed:
          anyOf:
            - type: boolean
            - type: 'null'
      required:
        - example
        - score
        - passed
      additionalProperties: false
    RunError:
      anyOf:
        - type: string
        - type: 'null'
    RunExecutionMeta:
      type: object
      properties:
        status:
          $ref: '#/components/schemas/ExecutionStatus'
        schemaValid:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            Whether the completed output matched the workflow or agent output
            schema.
        batchId:
          anyOf:
            - type: string
            - type: 'null'
          description: Experiment batch id when the run is part of a batch.
        retry:
          $ref: '#/components/schemas/RunExecutionRetry'
        review:
          description: Lightweight review state for run list rows.
          anyOf:
            - $ref: '#/components/schemas/RunReviewSummary'
            - type: 'null'
      required:
        - status
        - schemaValid
        - batchId
        - retry
      additionalProperties: false
    RunSourceGit:
      type: object
      properties:
        requestedRef:
          anyOf:
            - type: string
            - type: 'null'
        resolvedRef:
          anyOf:
            - type: string
            - type: 'null'
        resolvedTag:
          anyOf:
            - type: string
            - type: 'null'
        commitSha:
          anyOf:
            - type: string
            - type: 'null'
      required:
        - requestedRef
        - resolvedRef
        - resolvedTag
        - commitSha
      additionalProperties: false
    ExecutionStatus:
      type: string
      enum:
        - created
        - pending
        - running
        - waiting
        - finalizing
        - completed
        - failed
        - cancelled
        - rejected
    RunExecutionRetry:
      type: object
      properties:
        number:
          type: number
          description: Retry attempt index (0 = original run).
        previousRunId:
          anyOf:
            - type: string
            - type: 'null'
          description: Run id of the prior attempt in the retry chain.
        nextRun:
          anyOf:
            - type: object
              properties:
                id:
                  type: string
                status:
                  type: string
              required:
                - id
                - status
              additionalProperties: false
            - type: 'null'
          description: Retry run spawned from this run, if any.
      required:
        - number
        - previousRunId
        - nextRun
      additionalProperties: false
    RunReviewSummary:
      type: object
      properties:
        verdict:
          anyOf:
            - type: string
              enum:
                - correct
                - incorrect
            - type: 'null'
        status:
          type: string
          enum:
            - open
            - closed
            - wont_fix
        hasNote:
          type: boolean
          description: True when review notes were left.
        correctionCount:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Number of field/file corrections.
      required:
        - verdict
        - status
        - hasNote
        - correctionCount
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        API key issued from Settings → API Keys. Pass as `Authorization: Bearer
        <key>`.

````