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

# List Results

> List test results



## OpenAPI

````yaml get /test_framework/v1/results/
openapi: 3.1.0
info:
  title: Cekura API
  version: v1
  description: >-
    Complete API documentation for the Cekura platform. This API provides
    endpoints for testing, observing, and evaluating AI voice agents — including
    managing agents, running evaluators, defining metrics, and analyzing call
    quality.
servers:
  - url: https://api.cekura.ai
security: []
paths:
  /test_framework/v1/results/:
    get:
      tags:
        - test_framework
      description: >-
        List test results.


        To filter by status, use `results_retrieve(id=result_id)` and inspect
        `status` directly ('running', 'completed', 'failed') — there is no
        list-level status filter.


        **Result status:** a result marked `failed` indicates infrastructure
        failures (e.g. connection errors, websocket handshake failures), not
        metric evaluation failures. `success_runs_count` counts runs that
        reached terminal state regardless of connection errors. See
        `results_retrieve().failed_reasons` for the breakdown.


        **Scenarios filter note:** filtering by `scenarios` may return duplicate
        result rows when a result contains multiple runs of the same scenario —
        deduplicate by `result.id` if needed.


        After triggering a run, poll `results_retrieve(id=result_id)` until
        `status` is 'completed' or 'failed'.
      operationId: results-list
      parameters:
        - name: page
          required: false
          in: query
          description: A page number within the paginated result set.
          schema:
            type: integer
        - name: page_size
          required: false
          in: query
          description: Number of results to return per page.
          schema:
            type: integer
        - in: query
          name: agent_id
          schema:
            type: integer
          description: Filter by agent ID
        - in: query
          name: project_id
          schema:
            type: integer
          description: Filter by project ID
        - in: query
          name: search
          schema:
            type: string
          description: Filter by Result name
        - in: query
          name: scenarios
          schema:
            type: string
          description: >-
            Filter by scenario IDs — comma-separated string (e.g.
            '24270,24271'), not a JSON array.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedResultList'
          description: ''
      security:
        - api_key: []
components:
  schemas:
    PaginatedResultList:
      type: object
      required:
        - count
        - results
      properties:
        count:
          type: integer
          example: 123
        next:
          type: string
          nullable: true
          format: uri
          example: http://api.example.org/accounts/?page=4
        previous:
          type: string
          nullable: true
          format: uri
          example: http://api.example.org/accounts/?page=2
        results:
          type: array
          items:
            $ref: '#/components/schemas/Result'
    Result:
      type: object
      properties:
        id:
          type: integer
          readOnly: true
          description: |

            Unique identifier for the Result
            Example: `123`
        name:
          type: string
          description: |

            Name of the Result
            Example: `"Test Result 1"`
          maxLength: 255
        agent:
          type: integer
          readOnly: true
          description: |

            ID of the AI agent that was tested
            Example: `123`
        agent_name:
          type: string
          readOnly: true
          description: |

            Name of the AI agent that was tested
            Example: `"Test Agent 1"`
        agent_inbound:
          type: boolean
          readOnly: true
          description: >

            Whether the agent is configured for inbound calls (true) or outbound
            calls (false)

            Example: `true` or `false`
        status:
          enum:
            - running
            - completed
            - failed
            - pending
            - in_progress
            - evaluating
            - in_queue
            - timeout
            - cancelled
            - scaling_up
          type: string
          x-spec-enum-id: 623e22fc1eb17833
          default: pending
          description: |-

            Current status of the result


            * `running` - Running
            * `completed` - Completed
            * `failed` - Failed
            * `pending` - Pending
            * `in_progress` - In Progress
            * `evaluating` - Evaluating
            * `in_queue` - In Queue
            * `timeout` - Timeout
            * `cancelled` - Cancelled
            * `scaling_up` - Scaling Up
        success_rate:
          type: number
          format: double
          default: 0
          description: Success rate of the test runs as a decimal (0.0 to 1.0)
        run_as_text:
          type: boolean
          default: false
          description: |

            Whether this test was run in text mode instead of voice mode
            Example: `true` or `false`
        is_cronjob:
          type: string
          readOnly: true
          description: |

            Whether this result was created by a scheduled cronjob
            Example: `true` or `false`
        runs:
          type: object
          additionalProperties: {}
          description: >-
            Run summaries for this result. For full run data including
            transcripts and metric scores, fetch the result detail endpoint —
            there `runs` is a dict keyed by run ID.
          readOnly: true
        met_expected_outcome_count:
          type: string
          readOnly: true
          description: |

            Number of test runs that met the expected outcome criteria
            Example: `10`
        total_expected_outcome_count:
          type: string
          readOnly: true
          description: |

            Total number of test runs that were evaluated for expected outcomes
            Example: `10`
        total_runs_count:
          type: string
          readOnly: true
          description: |

            Total number of test runs associated with this result
            Example: `10`
        completed_runs_count:
          type: string
          readOnly: true
          description: |

            Number of test runs that have completed successfully
            Example: `10`
        success_runs_count:
          type: string
          readOnly: true
          description: |

            Number of test runs that were marked as successful
            Example: `10`
        failed_runs_count:
          type: string
          readOnly: true
          description: |

            Number of test runs that failed or encountered errors
            Example: `10`
        scenarios:
          type: object
          additionalProperties: {}
          description: |

            List of scenario names used in the test runs for this result
            Example:
            ```json
            [
                {
                    "id": 123,
                    "name": "Scenario 1"
                },
                {
                    "id": 456,
                    "name": "Scenario 2"
                }
            ]
            ```
          readOnly: true
        run_type:
          type:
            - string
            - 'null'
          readOnly: true
          description: Run Execution Type
        created_at:
          type: string
          format: date-time
          readOnly: true
          description: |

            Timestamp when this test result was created
            Example: `2021-01-01 00:00:00`
        updated_at:
          type: string
          format: date-time
          readOnly: true
          description: Timestamp when this test result was last updated
      required:
        - name
  securitySchemes:
    api_key:
      type: apiKey
      name: X-CEKURA-API-KEY
      in: header
      description: >-
        API Key Authentication. It should be included in the header of each
        request.

````