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

# List tasks



## OpenAPI

````yaml api-reference/openapi.v1.json GET /tasks
openapi: 3.1.0
info:
  title: Aether Public API
  version: 0.1.0
  description: >-
    The versioned, public Aether REST API. Authenticate with an `aether_`
    platform API key or a session token.
servers:
  - url: https://api.runaether.dev/v1
security:
  - bearerAuth: []
paths:
  /tasks:
    get:
      tags:
        - tasks
      summary: List tasks
      operationId: listTasks
      parameters:
        - explode: false
          in: query
          name: page
          schema:
            format: int64
            minimum: 1
            type: integer
        - explode: false
          in: query
          name: limit
          schema:
            format: int64
            maximum: 100
            minimum: 1
            type: integer
        - explode: false
          in: query
          name: status
          schema:
            pattern: >-
              ^(all|(running|awaiting_input|awaiting_ci|merged|unmerged|errored|archived)(,(running|awaiting_input|awaiting_ci|merged|unmerged|errored|archived))*)$
            type: string
        - explode: false
          in: query
          name: order
          schema:
            enum:
              - created_at
              - updated_at
              - agent_sidebar
            type: string
        - explode: false
          in: query
          name: scope
          schema:
            enum:
              - agent_sidebar_main
              - agent_sidebar_reviews
              - agent_sidebar_merged
              - agent_sidebar_archived
            type: string
        - explode: false
          in: query
          name: project_id
          schema:
            format: uuid
            type: string
        - explode: false
          in: query
          name: source
          schema:
            enum:
              - manual
              - ci
              - sentry
              - linear
              - slack
              - automation
              - pr_review
            type: string
        - explode: false
          in: query
          name: started_at_op
          schema:
            enum:
              - before
              - after
              - equal
            type: string
        - explode: false
          in: query
          name: started_at_date
          schema:
            minLength: 1
            type: string
        - explode: false
          in: query
          name: ended_at_op
          schema:
            enum:
              - before
              - after
              - equal
            type: string
        - explode: false
          in: query
          name: ended_at_date
          schema:
            minLength: 1
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                additionalProperties: false
                properties:
                  pagination:
                    $ref: '#/components/schemas/PaginationMeta'
                  tasks:
                    items:
                      discriminator:
                        mapping:
                          awaiting_input:
                            $ref: '#/components/schemas/TaskAwaitingInput'
                          errored:
                            $ref: '#/components/schemas/TaskErrored'
                          processing:
                            $ref: '#/components/schemas/TaskProcessing'
                          queued:
                            $ref: '#/components/schemas/TaskQueued'
                        propertyName: status
                      oneOf:
                        - $ref: '#/components/schemas/TaskQueued'
                        - $ref: '#/components/schemas/TaskProcessing'
                        - $ref: '#/components/schemas/TaskAwaitingInput'
                        - $ref: '#/components/schemas/TaskErrored'
                    type: array
                required:
                  - tasks
                  - pagination
                type: object
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Internal Server Error
components:
  schemas:
    PaginationMeta:
      additionalProperties: false
      properties:
        has_more:
          type: boolean
        page:
          format: int64
          minimum: 1
          type: integer
      required:
        - page
        - has_more
      type: object
    TaskAwaitingInput:
      additionalProperties: false
      properties:
        agent_type:
          enum:
            - codex
            - claude-code
            - opencode
            - cursor
          type: string
        archived_at:
          minLength: 1
          type:
            - string
            - 'null'
        auto_fix_ci:
          type: boolean
        auto_fix_pr_comments:
          type: boolean
        auto_rebase:
          type: boolean
        awaiting_input:
          $ref: '#/components/schemas/TaskAwaitingInputPayload'
        created_at:
          minLength: 1
          type: string
        display_status:
          enum:
            - running
            - awaiting_input
            - awaiting_ci
            - merged
            - unmerged
            - errored
            - archived
          type: string
        feed_updated_at:
          minLength: 1
          type: string
        hardware:
          $ref: '#/components/schemas/HardwareConfig'
        head_branch:
          minLength: 1
          type: string
        id:
          minLength: 1
          type: string
        interaction_mode:
          enum:
            - default
            - plan
          type: string
        last_error:
          type:
            - string
            - 'null'
        latest_sequence:
          format: int64
          maximum: 9007199254740991
          minimum: 0
          type: integer
        latest_status_message:
          type:
            - string
            - 'null'
        latest_status_source:
          type:
            - string
            - 'null'
        model:
          minLength: 1
          type: string
        name:
          minLength: 1
          type: string
        primary_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskPullRequest'
            - type: 'null'
        project_id:
          minLength: 1
          type: string
        pull_requests:
          items:
            $ref: '#/components/schemas/TaskPullRequest'
          type: array
        reasoning_effort:
          enum:
            - ultra
            - max
            - xhigh
            - high
            - medium
            - low
            - ultrathink
            - ultracode
            - none
          type:
            - string
            - 'null'
        review_subject_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskReviewSubjectPullRequest'
            - type: 'null'
        run_context:
          anyOf:
            - $ref: '#/components/schemas/TaskRunContext'
            - type: 'null'
        runtime_timing:
          $ref: '#/components/schemas/TaskRuntimeTiming'
        slash_commands:
          items:
            $ref: '#/components/schemas/TaskSlashCommand'
          type:
            - array
            - 'null'
        source:
          $ref: '#/components/schemas/TaskSource'
        source_metadata:
          additionalProperties: true
          properties: {}
          type:
            - object
            - 'null'
        status:
          enum:
            - awaiting_input
          type: string
        usage:
          $ref: '#/components/schemas/TaskUsage'
        user_id:
          minLength: 1
          type: string
      required:
        - id
        - project_id
        - user_id
        - name
        - agent_type
        - model
        - interaction_mode
        - auto_fix_ci
        - auto_fix_pr_comments
        - auto_rebase
        - status
        - display_status
        - pull_requests
        - primary_pull_request
        - review_subject_pull_request
        - usage
        - runtime_timing
        - hardware
        - source
        - created_at
        - feed_updated_at
        - run_context
        - awaiting_input
      type: object
    TaskErrored:
      additionalProperties: false
      properties:
        agent_type:
          enum:
            - codex
            - claude-code
            - opencode
            - cursor
          type: string
        archived_at:
          minLength: 1
          type:
            - string
            - 'null'
        auto_fix_ci:
          type: boolean
        auto_fix_pr_comments:
          type: boolean
        auto_rebase:
          type: boolean
        completed_at:
          minLength: 1
          type: string
        created_at:
          minLength: 1
          type: string
        display_status:
          enum:
            - running
            - awaiting_input
            - awaiting_ci
            - merged
            - unmerged
            - errored
            - archived
          type: string
        error:
          minLength: 1
          type: string
        feed_updated_at:
          minLength: 1
          type: string
        hardware:
          $ref: '#/components/schemas/HardwareConfig'
        head_branch:
          minLength: 1
          type: string
        id:
          minLength: 1
          type: string
        interaction_mode:
          enum:
            - default
            - plan
          type: string
        last_error:
          type:
            - string
            - 'null'
        latest_sequence:
          format: int64
          maximum: 9007199254740991
          minimum: 0
          type: integer
        latest_status_message:
          type:
            - string
            - 'null'
        latest_status_source:
          type:
            - string
            - 'null'
        model:
          minLength: 1
          type: string
        name:
          minLength: 1
          type: string
        primary_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskPullRequest'
            - type: 'null'
        project_id:
          minLength: 1
          type: string
        pull_requests:
          items:
            $ref: '#/components/schemas/TaskPullRequest'
          type: array
        reasoning_effort:
          enum:
            - ultra
            - max
            - xhigh
            - high
            - medium
            - low
            - ultrathink
            - ultracode
            - none
          type:
            - string
            - 'null'
        review_subject_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskReviewSubjectPullRequest'
            - type: 'null'
        run_context:
          anyOf:
            - $ref: '#/components/schemas/TaskRunContext'
            - type: 'null'
        runtime_timing:
          $ref: '#/components/schemas/TaskRuntimeTiming'
        slash_commands:
          items:
            $ref: '#/components/schemas/TaskSlashCommand'
          type:
            - array
            - 'null'
        source:
          $ref: '#/components/schemas/TaskSource'
        source_metadata:
          additionalProperties: true
          properties: {}
          type:
            - object
            - 'null'
        status:
          enum:
            - errored
          type: string
        usage:
          $ref: '#/components/schemas/TaskUsage'
        user_id:
          minLength: 1
          type: string
      required:
        - id
        - project_id
        - user_id
        - name
        - agent_type
        - model
        - interaction_mode
        - auto_fix_ci
        - auto_fix_pr_comments
        - auto_rebase
        - status
        - display_status
        - pull_requests
        - primary_pull_request
        - review_subject_pull_request
        - usage
        - runtime_timing
        - hardware
        - source
        - created_at
        - feed_updated_at
        - run_context
        - error
        - completed_at
      type: object
    TaskProcessing:
      additionalProperties: false
      properties:
        agent_type:
          enum:
            - codex
            - claude-code
            - opencode
            - cursor
          type: string
        archived_at:
          minLength: 1
          type:
            - string
            - 'null'
        auto_fix_ci:
          type: boolean
        auto_fix_pr_comments:
          type: boolean
        auto_rebase:
          type: boolean
        created_at:
          minLength: 1
          type: string
        display_status:
          enum:
            - running
            - awaiting_input
            - awaiting_ci
            - merged
            - unmerged
            - errored
            - archived
          type: string
        feed_updated_at:
          minLength: 1
          type: string
        hardware:
          $ref: '#/components/schemas/HardwareConfig'
        head_branch:
          minLength: 1
          type: string
        id:
          minLength: 1
          type: string
        interaction_mode:
          enum:
            - default
            - plan
          type: string
        last_error:
          type:
            - string
            - 'null'
        latest_sequence:
          format: int64
          maximum: 9007199254740991
          minimum: 0
          type: integer
        latest_status_message:
          type:
            - string
            - 'null'
        latest_status_source:
          type:
            - string
            - 'null'
        model:
          minLength: 1
          type: string
        name:
          minLength: 1
          type: string
        primary_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskPullRequest'
            - type: 'null'
        project_id:
          minLength: 1
          type: string
        pull_requests:
          items:
            $ref: '#/components/schemas/TaskPullRequest'
          type: array
        reasoning_effort:
          enum:
            - ultra
            - max
            - xhigh
            - high
            - medium
            - low
            - ultrathink
            - ultracode
            - none
          type:
            - string
            - 'null'
        review_subject_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskReviewSubjectPullRequest'
            - type: 'null'
        run_context:
          $ref: '#/components/schemas/TaskRunContext'
        runtime_timing:
          $ref: '#/components/schemas/TaskRuntimeTiming'
        slash_commands:
          items:
            $ref: '#/components/schemas/TaskSlashCommand'
          type:
            - array
            - 'null'
        source:
          $ref: '#/components/schemas/TaskSource'
        source_metadata:
          additionalProperties: true
          properties: {}
          type:
            - object
            - 'null'
        status:
          enum:
            - processing
          type: string
        usage:
          $ref: '#/components/schemas/TaskUsage'
        user_id:
          minLength: 1
          type: string
      required:
        - id
        - project_id
        - user_id
        - name
        - agent_type
        - model
        - interaction_mode
        - auto_fix_ci
        - auto_fix_pr_comments
        - auto_rebase
        - status
        - display_status
        - pull_requests
        - primary_pull_request
        - review_subject_pull_request
        - usage
        - runtime_timing
        - hardware
        - source
        - created_at
        - feed_updated_at
        - run_context
      type: object
    TaskQueued:
      additionalProperties: false
      properties:
        agent_type:
          enum:
            - codex
            - claude-code
            - opencode
            - cursor
          type: string
        archived_at:
          minLength: 1
          type:
            - string
            - 'null'
        auto_fix_ci:
          type: boolean
        auto_fix_pr_comments:
          type: boolean
        auto_rebase:
          type: boolean
        created_at:
          minLength: 1
          type: string
        display_status:
          enum:
            - running
            - awaiting_input
            - awaiting_ci
            - merged
            - unmerged
            - errored
            - archived
          type: string
        feed_updated_at:
          minLength: 1
          type: string
        hardware:
          $ref: '#/components/schemas/HardwareConfig'
        head_branch:
          minLength: 1
          type: string
        id:
          minLength: 1
          type: string
        interaction_mode:
          enum:
            - default
            - plan
          type: string
        last_error:
          type:
            - string
            - 'null'
        latest_sequence:
          format: int64
          maximum: 9007199254740991
          minimum: 0
          type: integer
        latest_status_message:
          type:
            - string
            - 'null'
        latest_status_source:
          type:
            - string
            - 'null'
        model:
          minLength: 1
          type: string
        name:
          minLength: 1
          type: string
        primary_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskPullRequest'
            - type: 'null'
        project_id:
          minLength: 1
          type: string
        pull_requests:
          items:
            $ref: '#/components/schemas/TaskPullRequest'
          type: array
        reasoning_effort:
          enum:
            - ultra
            - max
            - xhigh
            - high
            - medium
            - low
            - ultrathink
            - ultracode
            - none
          type:
            - string
            - 'null'
        review_subject_pull_request:
          anyOf:
            - $ref: '#/components/schemas/TaskReviewSubjectPullRequest'
            - type: 'null'
        run_context:
          anyOf:
            - $ref: '#/components/schemas/TaskRunContext'
            - type: 'null'
        runtime_timing:
          $ref: '#/components/schemas/TaskRuntimeTiming'
        slash_commands:
          items:
            $ref: '#/components/schemas/TaskSlashCommand'
          type:
            - array
            - 'null'
        source:
          $ref: '#/components/schemas/TaskSource'
        source_metadata:
          additionalProperties: true
          properties: {}
          type:
            - object
            - 'null'
        status:
          enum:
            - queued
          type: string
        usage:
          $ref: '#/components/schemas/TaskUsage'
        user_id:
          minLength: 1
          type: string
      required:
        - id
        - project_id
        - user_id
        - name
        - agent_type
        - model
        - interaction_mode
        - auto_fix_ci
        - auto_fix_pr_comments
        - auto_rebase
        - status
        - display_status
        - pull_requests
        - primary_pull_request
        - review_subject_pull_request
        - usage
        - runtime_timing
        - hardware
        - source
        - created_at
        - feed_updated_at
        - run_context
      type: object
    ErrorResponse:
      additionalProperties: false
      properties:
        code:
          type: string
        error:
          minLength: 1
          type: string
      required:
        - error
      type: object
    TaskAwaitingInputPayload:
      discriminator:
        mapping:
          message:
            $ref: '#/components/schemas/TaskAwaitingInputMessage'
          plan:
            $ref: '#/components/schemas/TaskAwaitingInputPlan'
          questions:
            $ref: '#/components/schemas/TaskAwaitingInputQuestions'
        propertyName: kind
      oneOf:
        - $ref: '#/components/schemas/TaskAwaitingInputMessage'
        - $ref: '#/components/schemas/TaskAwaitingInputQuestions'
        - $ref: '#/components/schemas/TaskAwaitingInputPlan'
    HardwareConfig:
      additionalProperties: false
      properties:
        cpu_kind:
          enum:
            - shared
            - performance
          type: string
        cpus:
          format: int64
          maximum: 16
          minimum: 1
          type: integer
        gpu_kind:
          enum:
            - a10
            - l40s
            - a100-40gb
            - a100-80gb
          type:
            - string
            - 'null'
        memory_mb:
          format: int64
          maximum: 32768
          minimum: 256
          type: integer
        volume_size_gb:
          format: int64
          maximum: 500
          minimum: 1
          type: integer
      required:
        - cpu_kind
        - cpus
        - memory_mb
        - volume_size_gb
        - gpu_kind
      type: object
    TaskPullRequest:
      additionalProperties: false
      properties:
        additions:
          format: int64
          minimum: 0
          type: integer
        branch_name:
          minLength: 1
          type: string
        checks_failed:
          format: int64
          minimum: 0
          type: integer
        checks_passed:
          format: int64
          minimum: 0
          type: integer
        checks_total:
          format: int64
          minimum: 0
          type: integer
        ci_status:
          enum:
            - pending
            - passed
            - failed
          type: string
        commits:
          format: int64
          minimum: 0
          type: integer
        deletions:
          format: int64
          minimum: 0
          type: integer
        html_url:
          minLength: 1
          type: string
        lines_changed:
          format: int64
          minimum: 0
          type: integer
        pr_number:
          format: int64
          minimum: 1
          type: integer
        state:
          enum:
            - open
            - closed
            - merged
          type: string
        title:
          type: string
      required:
        - pr_number
        - html_url
        - title
        - checks_passed
        - checks_failed
        - checks_total
        - commits
        - lines_changed
        - additions
        - deletions
      type: object
    TaskReviewSubjectPullRequest:
      additionalProperties: false
      properties:
        additions:
          format: int64
          minimum: 0
          type: integer
        branch_name:
          minLength: 1
          type: string
        checks_failed:
          format: int64
          minimum: 0
          type: integer
        checks_passed:
          format: int64
          minimum: 0
          type: integer
        checks_total:
          format: int64
          minimum: 0
          type: integer
        ci_status:
          enum:
            - pending
            - passed
            - failed
          type: string
        commits:
          format: int64
          minimum: 0
          type: integer
        deletions:
          format: int64
          minimum: 0
          type: integer
        html_url:
          minLength: 1
          type: string
        lines_changed:
          format: int64
          minimum: 0
          type: integer
        pr_number:
          format: int64
          minimum: 1
          type: integer
        review_check_conclusion:
          enum:
            - success
            - failure
            - cancelled
            - neutral
          type: string
        review_trigger:
          enum:
            - automatic
            - comment_command
          type: string
        state:
          enum:
            - open
            - closed
            - merged
          type: string
        title:
          type: string
      required:
        - pr_number
        - html_url
        - title
        - checks_passed
        - checks_failed
        - checks_total
        - commits
        - lines_changed
        - additions
        - deletions
        - review_trigger
      type: object
    TaskRunContext:
      additionalProperties: false
      properties:
        started_at:
          minLength: 1
          type: string
        workspace_id:
          minLength: 1
          type: string
      required:
        - workspace_id
        - started_at
      type: object
    TaskRuntimeTiming:
      discriminator:
        mapping:
          active:
            $ref: '#/components/schemas/TaskRuntimeTimingActive'
          inactive:
            $ref: '#/components/schemas/TaskRuntimeTimingInactive'
        propertyName: state
      oneOf:
        - $ref: '#/components/schemas/TaskRuntimeTimingInactive'
        - $ref: '#/components/schemas/TaskRuntimeTimingActive'
    TaskSlashCommand:
      additionalProperties: true
      properties:
        description:
          type: string
        input:
          additionalProperties: true
          properties:
            hint:
              type: string
          required:
            - hint
          type: object
        name:
          type: string
      required:
        - name
        - description
      type: object
    TaskSource:
      enum:
        - manual
        - ci
        - sentry
        - linear
        - slack
        - automation
        - pr_review
      type: string
    TaskUsage:
      additionalProperties: false
      properties:
        tokens_in:
          format: int64
          maximum: 9007199254740991
          minimum: 0
          type: integer
        tokens_out:
          format: int64
          maximum: 9007199254740991
          minimum: 0
          type: integer
        vm_uptime_seconds:
          format: int64
          minimum: 0
          type: integer
      required:
        - tokens_in
        - tokens_out
        - vm_uptime_seconds
      type: object
    TaskAwaitingInputMessage:
      additionalProperties: false
      properties:
        kind:
          enum:
            - message
          type: string
      required:
        - kind
      type: object
    TaskAwaitingInputPlan:
      additionalProperties: false
      properties:
        input:
          $ref: '#/components/schemas/ProposePlanToolInput'
        kind:
          enum:
            - plan
          type: string
        tool_id:
          minLength: 1
          type: string
      required:
        - kind
        - tool_id
        - input
      type: object
    TaskAwaitingInputQuestions:
      additionalProperties: false
      properties:
        input:
          $ref: '#/components/schemas/AskUserToolInput'
        kind:
          enum:
            - questions
          type: string
        tool_id:
          minLength: 1
          type: string
      required:
        - kind
        - tool_id
        - input
      type: object
    TaskRuntimeTimingActive:
      additionalProperties: false
      properties:
        active_started_at:
          minLength: 1
          type: string
        state:
          enum:
            - active
          type: string
      required:
        - state
        - active_started_at
      type: object
    TaskRuntimeTimingInactive:
      additionalProperties: false
      properties:
        state:
          enum:
            - inactive
          type: string
      required:
        - state
      type: object
    ProposePlanToolInput:
      additionalProperties: true
      properties:
        plan:
          type: string
        summary:
          type: string
      required:
        - summary
        - plan
      type: object
    AskUserToolInput:
      additionalProperties: true
      properties:
        questions:
          items:
            additionalProperties: true
            properties:
              multiSelect:
                type: boolean
              options:
                items:
                  additionalProperties: true
                  properties:
                    description:
                      type: string
                    label:
                      type: string
                  required:
                    - label
                  type: object
                type: array
              question:
                type: string
            required:
              - question
              - options
            type: object
          type: array
      required:
        - questions
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http

````