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

# List test runs for agent

> List an agent's test runs with their results



## OpenAPI

````yaml /api-reference/openapi.json get /agent-tests/agent/{agent_uuid}/runs
openapi: 3.1.0
info:
  title: Calibrate Public API
  version: 0.1.0
  description: Programmatic API for CI/automation. Pass your key in the `X-API-Key` header.
servers:
  - url: https://api.calibrate.artpark.ai
    description: Production
security: []
paths:
  /agent-tests/agent/{agent_uuid}/runs:
    get:
      tags:
        - agent-tests
      summary: List test runs for agent
      description: List an agent's test runs with their results
      operationId: get_agent_test_runs_agent_tests_agent__agent_uuid__runs_get
      parameters:
        - name: agent_uuid
          in: path
          required: true
          schema:
            type: string
            description: Agent whose test runs to list
            examples:
              - f47ac10b-58cc-4372-a567-0e02b2c3d479
            title: Agent Uuid
          description: Agent whose test runs to list
        - name: type
          in: query
          required: false
          schema:
            anyOf:
              - enum:
                  - llm-unit-test
                  - llm-benchmark
                type: string
              - type: 'null'
            description: |-
              Filter by run type. Omit to return both:
              - `llm-unit-test`: single runs of an agent's tests
              - `llm-benchmark`: multi-model comparisons
            title: Type
          description: |-
            Filter by run type. Omit to return both:
            - `llm-unit-test`: single runs of an agent's tests
            - `llm-benchmark`: multi-model comparisons
        - name: status
          in: query
          required: false
          schema:
            anyOf:
              - $ref: '#/components/schemas/TaskStatus'
              - type: 'null'
            description: Filter by run status. Omit for all statuses
            title: Status
          description: Filter by run status. Omit for all statuses
        - name: has_failures
          in: query
          required: false
          schema:
            anyOf:
              - type: boolean
              - type: 'null'
            description: >-
              Filter by whether the run has any failing test case or model.
              `true` returns only runs with failures (or errors), `false` only
              clean runs. Omit for both
            title: Has Failures
          description: >-
            Filter by whether the run has any failing test case or model. `true`
            returns only runs with failures (or errors), `false` only clean
            runs. Omit for both
        - name: limit
          in: query
          required: false
          schema:
            anyOf:
              - type: integer
                maximum: 1000000
                minimum: 1
              - type: 'null'
            description: Maximum number of items to return. Omit for no limit (all items)
            title: Limit
          description: Maximum number of items to return. Omit for no limit (all items)
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
            description: Number of items to skip before returning results
            default: 0
            title: Offset
          description: Number of items to skip before returning results
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedResponse_AgentTestRunListItem_'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - ApiKeyAuth: []
components:
  schemas:
    TaskStatus:
      type: string
      enum:
        - queued
        - in_progress
        - cancelled
        - done
        - failed
      title: TaskStatus
    PaginatedResponse_AgentTestRunListItem_:
      properties:
        items:
          items:
            $ref: '#/components/schemas/AgentTestRunListItem'
          type: array
          title: Items
          description: The page of results
        total:
          type: integer
          title: Total
          description: Total number of items matching the query, before pagination
        limit:
          anyOf:
            - type: integer
            - type: 'null'
          title: Limit
          description: The applied `limit` (null when unbounded)
        offset:
          type: integer
          title: Offset
          description: The applied `offset`
          default: 0
      type: object
      required:
        - items
        - total
      title: PaginatedResponse[AgentTestRunListItem]
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    AgentTestRunListItem:
      properties:
        uuid:
          type: string
          maxLength: 36
          minLength: 36
          title: Uuid
          description: Test run job ID
          examples:
            - a3b2c1d0-e5f4-3210-abcd-ef1234567890
        name:
          type: string
          title: Name
          description: >-
            Display name, such as `Run 1` for a unit test or `Benchmark 1` for a
            benchmark
        status:
          $ref: '#/components/schemas/TaskStatus'
          description: Current status of the run
        type:
          type: string
          enum:
            - llm-unit-test
            - llm-benchmark
          title: Type
          description: |-
            What kind of run this is:
            - `llm-unit-test`: a single run of the agent's tests
            - `llm-benchmark`: a multi-model comparison
        updated_at:
          type: string
          title: Updated At
          description: When the run was last updated (ISO 8601 UTC)
        total_tests:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total Tests
          description: Total number of test cases
        passed:
          anyOf:
            - type: integer
            - type: 'null'
          title: Passed
          description: Number of test cases that passed
        failed:
          anyOf:
            - type: integer
            - type: 'null'
          title: Failed
          description: Number of test cases that failed
        results:
          anyOf:
            - items:
                $ref: '#/components/schemas/TestRunCaseSummary'
              type: array
            - type: 'null'
          title: Results
          description: >-
            Flat pass/fail summary for each test case (fetch the run detail for
            full results)
        latency_ms:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          description: Aggregated latency in milliseconds, as `{p50, p95, p99, count}`
        cost:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          description: Aggregated cost as `{mean, min, max, count}` (USD)
        total_tokens:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          description: Aggregated token usage as `{mean, min, max, count}`
        model_results:
          anyOf:
            - items:
                $ref: '#/components/schemas/ModelRunSummary'
              type: array
            - type: 'null'
          title: Model Results
          description: >-
            Flat summary for each model in a benchmark run (fetch the benchmark
            detail for full results)
        error:
          type: boolean
          title: Error
          description: True if the run failed
          default: false
        is_public:
          type: boolean
          title: Is Public
          description: Whether the run is shared publicly
          default: false
        share_token:
          anyOf:
            - type: string
            - type: 'null'
          title: Share Token
          description: Token for building the public share URL
      type: object
      required:
        - uuid
        - name
        - status
        - type
        - updated_at
      title: AgentTestRunListItem
    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
    TestRunCaseSummary:
      properties:
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
          description: Name of the test case
        passed:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Passed
          description: Whether the case passed (null if it errored or is still running)
      type: object
      title: TestRunCaseSummary
      description: >-
        Flat summary for one test case in the run-LIST endpoints. Carries only

        enough to render a run's pass/fail breakdown and a case name. The full
        detail

        for each case (agent output, judge verdicts, reasoning, latency, cost,
        the

        test-case definition) lives on the run-DETAIL endpoint

        (`GET /agent-tests/run/{task_id}`).
    ModelRunSummary:
      properties:
        model:
          type: string
          title: Model
          description: Model name these results are for
          examples:
            - openai/gpt-4.1
        success:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Success
          description: Whether this model's run succeeded
        message:
          type: string
          title: Message
          description: Status or result message for this model
          default: ''
        total_tests:
          anyOf:
            - type: integer
            - type: 'null'
          title: Total Tests
          description: Total test cases for this model
        passed:
          anyOf:
            - type: integer
            - type: 'null'
          title: Passed
          description: Number of test cases that passed for this model
        failed:
          anyOf:
            - type: integer
            - type: 'null'
          title: Failed
          description: Number of test cases that failed for this model
      type: object
      required:
        - model
      title: ModelRunSummary
      description: >-
        Flat summary for one model in a benchmark run-LIST item. The full
        results

        for each case of a model live on the benchmark detail endpoint

        (`GET /agent-tests/benchmark/{task_id}`), not here.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for authentication

````