---
title: "GET /v2/list-test-runs/{test_case_batch_job_id}"
method: GET
path: "/v2/list-test-runs/{test_case_batch_job_id}"
---

# GET /v2/list-test-runs/{test_case_batch_job_id}

`GET /v2/list-test-runs/{test_case_batch_job_id}`

List test case jobs (test runs) for a batch test job with pagination

## Path parameters

- `test_case_batch_job_id` string, required

## Query parameters

- `limit` integer
- `pagination_key` string

## Response `200`

Test case jobs retrieved successfully

- object
  - `pagination_key` string — Pagination key for the next page.
  - `has_more` boolean — Whether more results are available.
  - `items` TestCaseJob[]
    - `test_case_job_id` string, required — Unique identifier for the test case job
    - `status` 'in_progress' | 'pass' | 'fail' | 'error', required — Status of the test case job
    - `test_case_definition_id` string, required — ID of the test case definition used
    - `test_case_definition_snapshot` TestCaseDefinition, required
      - `name` string, required — Name of the test case definition
      - `response_engine` union, required — Response engine for test cases. Custom LLM is not supported.
        - ResponseEngineRetellLm
          - `type` 'retell-llm', required — type of the Response Engine.
          - `llm_id` string, required — id of the Retell LLM Response Engine.
          - `version` number, nullable — Version of the Retell LLM Response Engine.
        - ResponseEngineConversationFlow
          - `type` 'conversation-flow', required — type of the Response Engine.
          - `conversation_flow_id` string, required — ID of the Conversation Flow Response Engine.
          - `version` number, nullable — Version of the Conversation Flow Response Engine.
      - `user_prompt` string, required — User prompt to simulate in the test case
      - `metrics` string[], required — Array of metric names to evaluate
      - `dynamic_variables` object, required — Dynamic variables to inject into the response engine
      - `tool_mocks` ToolMock[], required — Mock tool calls for testing
        - `tool_name` string, required — Name of the tool to mock
        - `input_match_rule` union, required
          - object
            - `type` 'any', required — Match any input of the tool
          - object
            - `type` 'partial_match', required — Match only calls with specific arguments
            - `args` object, required — Arguments to match. Only provided fields will be checked
        - `output` string, required — The output of the tool call that will be fed into the LLM. Should be a JSON string.
        - `result` boolean, nullable — For tool calls like transfer_call that require a boolean result. Optional for most tools.
      - `llm_model` 'gpt-4.1' | 'gpt-4.1-mini' | 'gpt-4.1-nano' | 'gpt-5' | 'gpt-5-mini' | 'gpt-5-nano' | 'gpt-5.1' | 'gpt-5.2' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5.4-nano' | 'gpt-5.5' | 'claude-4.5-sonnet' | 'claude-4.6-sonnet' | 'claude-4.5-haiku' | 'gemini-2.5-flash-lite' | 'gemini-3.0-flash' | 'gemini-3.1-flash-lite', required — Available LLM models for agents.
      - `test_case_definition_id` string, required — Unique identifier for the test case definition
      - `type` 'simulation', required — Type of test case definition
      - `creation_timestamp` integer, required — Timestamp when the test case definition was created (milliseconds since epoch)
      - `user_modified_timestamp` integer, required — Timestamp when the test case definition was last modified (milliseconds since epoch)
    - `transcript_snapshot` object, nullable — Snapshot of the transcript generated during test execution. Can be either ConversationFlowPlaygroundSnapshot or RetellLlmPlaygroundSnapshot
    - `result_explanation` string, nullable — Explanation of the test result
    - `creation_timestamp` integer, required — Timestamp when the test case job was created (milliseconds since epoch)
    - `user_modified_timestamp` integer, required — Timestamp when the test case job was last modified (milliseconds since epoch)

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `404` — Not Found
- `429` — Too Many Requests
- `500` — Internal Server Error

---

[API](https://skmtc.net/retellai/apis/retell-sdk.md) · [All operations](https://skmtc.net/retellai/apis/retell-sdk/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/retellai/retell-sdk/versions/2a182bedbfc5/schema)
