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

# List runs

> Lists schedule runs (one row per executed fire) newest-first, with a total for
pagination. scope=mine (default) returns only runs of the caller's own schedules;
scope=workspace returns all runs in the workspace and is admin only (403 otherwise).
status filters to all (default), active (created/running/suspended), or failed.
Pass schedule_id for one schedule's history - it is gated owner-or-admin (404
otherwise). limit defaults to 50 (max 200). Requires the schedules:read scope.



## OpenAPI

````yaml GET /v1/api/runs
openapi: 3.1.0
info:
  title: HQ API
  description: >-
    Public HTTP API for HQ. Authenticate with a Personal Access Token
    (`Authorization: Bearer hq_pat_...`) for server-side integrations, or an
    OAuth 2.1 authorization-code + PKCE flow for browser apps acting on a user's
    behalf. Both grant from the same resource:action scope vocabulary; an
    endpoint's required scope is listed under its `security`.
  license:
    name: Apache-2.0
    identifier: Apache-2.0
  version: 1.0.0
servers:
  - url: https://api.hq.zone
    description: HQ API (production)
security: []
tags:
  - name: me
    description: The signed-in user's own account
  - name: conversations
    description: Conversations and their messages
  - name: documents
    description: The content-addressed documents library
  - name: schedules
    description: Scheduled prompts and recurring tasks
  - name: agents
    description: Agents, their skills and integrations
  - name: memory
    description: What the assistant remembers (L5 governance)
  - name: tokens
    description: Personal Access Token management
  - name: billing
    description: Usage and billing
  - name: notifications
    description: In-app notification center
  - name: admin
    description: Workspace administration
  - name: integrations
    description: Workspace integrations (Slack, MCP, skills)
  - name: onboarding
    description: New-workspace onboarding wizard
  - name: auth
    description: Sign-in, sessions, and OAuth
paths:
  /v1/api/runs:
    get:
      tags:
        - runs
      summary: List runs
      description: >-
        Lists schedule runs (one row per executed fire) newest-first, with a
        total for

        pagination. scope=mine (default) returns only runs of the caller's own
        schedules;

        scope=workspace returns all runs in the workspace and is admin only (403
        otherwise).

        status filters to all (default), active (created/running/suspended), or
        failed.

        Pass schedule_id for one schedule's history - it is gated owner-or-admin
        (404

        otherwise). limit defaults to 50 (max 200). Requires the schedules:read
        scope.
      operationId: list_runs
      parameters:
        - name: scope
          in: query
          description: '`mine` (default) or `workspace` (admin only).'
          required: false
          schema:
            type:
              - string
              - 'null'
        - name: status
          in: query
          description: '`all` (default), `active` (created/running/suspended), or `failed`.'
          required: false
          schema:
            type:
              - string
              - 'null'
        - name: schedule_id
          in: query
          description: Restrict to one schedule's history. Visibility-gated owner-or-admin.
          required: false
          schema:
            type:
              - string
              - 'null'
            format: uuid
        - name: order
          in: query
          description: '`newest` (default, started_at DESC) or `oldest` (ASC).'
          required: false
          schema:
            type:
              - string
              - 'null'
        - name: limit
          in: query
          required: false
          schema:
            type:
              - integer
              - 'null'
            format: int64
        - name: offset
          in: query
          required: false
          schema:
            type:
              - integer
              - 'null'
            format: int64
      responses:
        '200':
          description: Runs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunsListResp'
        '400':
          description: Invalid scope/status
        '403':
          description: scope=workspace requires admin
        '404':
          description: schedule_id not visible to caller
      security:
        - bearer_pat:
            - schedules:read
        - oauth2:
            - schedules:read
components:
  schemas:
    RunsListResp:
      type: object
      required:
        - runs
        - total
        - limit
        - offset
      properties:
        limit:
          type: integer
          format: int64
        offset:
          type: integer
          format: int64
        runs:
          type: array
          items:
            $ref: '#/components/schemas/RunJson'
        total:
          type: integer
          format: int64
          description: |-
            Total rows matching the filter (ignoring limit/offset) - the pager's
            denominator.
    RunJson:
      type: object
      required:
        - id
        - status
        - started_at
      properties:
        conversation_id:
          type:
            - string
            - 'null'
          format: uuid
          description: >-
            The Studio thread backing this run's schedule, for a deep-link. See
            the

            module note: this is the schedule's most-recent thread, not
            necessarily

            this exact fire's.
        duration_ms:
          type:
            - integer
            - 'null'
          format: int64
          description: Wall-clock duration once finished (ms); NULL while still in flight.
        error:
          type:
            - string
            - 'null'
          description: Failure detail when status = failed / cancelled.
        finished_at:
          type:
            - string
            - 'null'
          format: date-time
        id:
          type: string
          format: uuid
        owner_display_name:
          type:
            - string
            - 'null'
        owner_external_id:
          type:
            - string
            - 'null'
        owner_user_id:
          type:
            - string
            - 'null'
          format: uuid
        schedule_id:
          type:
            - string
            - 'null'
          format: uuid
          description: >-
            The schedule this run fired from. NULL for a manually-started
            workflow.
        schedule_name:
          type:
            - string
            - 'null'
        started_at:
          type: string
          format: date-time
        status:
          type: string
          description: 'One of: created, running, suspended, completed, failed, cancelled.'
  securitySchemes:
    bearer_pat:
      type: http
      scheme: bearer
      bearerFormat: hq_pat
      description: 'Personal Access Token. Send as `Authorization: Bearer hq_pat_...`.'
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://app.hq.zone/v1/oauth/authorize
          tokenUrl: https://api.hq.zone/v1/oauth/token
          refreshUrl: https://api.hq.zone/v1/oauth/token
          scopes:
            admin: Administer the workspace (users, settings, integrations)
            agents:read: View the agents in your workspace
            agents:write: Create and configure agents
            billing:read: View usage and billing information
            conversations:read: Read your conversations and their messages
            conversations:write: Start conversations and send messages on your behalf
            documents:read: Read your documents library
            documents:write: Upload and manage documents in your library
            memory:read: Read what the assistant remembers about you
            memory:write: Correct or delete what the assistant remembers
            schedules:read: View your scheduled tasks
            schedules:write: Create and manage scheduled tasks
            tables:read: Read your tables and their rows
            tables:write: Create tables and add, edit, or delete rows

````