---
title: "Re-run the scenarios from a completed test result"
method: POST
path: "/test_framework/v2/results/{id}/rerun/"
tags: ["test_framework"]
---

# Re-run the scenarios from a completed test result

`POST /test_framework/v2/results/{id}/rerun/`

## Request

- Base URL: `https://api.cekura.ai`
- URL: `https://api.cekura.ai/test_framework/v2/results/{id}/rerun/`
- Auth: one of:
  - API key in header `X-CEKURA-API-KEY`
  - HTTP bearer
  - HTTP bearer
  - API key in header `X-VOCERA-SHAREABLE-LINK-TOKEN`
  - HTTP bearer

Re-execute every scenario from a completed result against the same agent, creating a new result with a fresh set of runs. The connection mode (voice or text) and provider are inherited from the original runs. Consumes simulation credits (one run per scenario) and launches live calls, so the new result populates asynchronously.

## Path parameters

- `id` integer, required

## Response `200`

- Result
  - `id` integer: Unique identifier for the Result Example: `123`
  - `name` string, required: Name of the Result Example: `"Test Result 1"`
  - `agent` integer: ID of the AI agent that was tested Example: `123`
  - `agent_name` string: Name of the AI agent that was tested Example: `"Test Agent 1"`
  - `agent_inbound` boolean: Whether the agent is configured for inbound calls (true) or outbound calls (false) Example: `true` or `false`
  - `status` 'running' | 'completed' | 'failed' | 'pending' | 'in_progress' | 'evaluating' | 'in_queue' | 'timeout' | 'cancelled' | 'scaling_up': 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` number, double: Percentage of runs that passed, 0 to 100
  - `run_as_text` boolean: Whether this test was run in text mode instead of voice mode Example: `true` or `false`
  - `is_cronjob` string: Whether this result was created by a scheduled cronjob Example: `true` or `false`
  - `created_via` string, nullable: How this result was started: user (dashboard), api, mcp, cli, sdk, schedule or agent (the Cekura agent). Null when unknown.
  - `created_by` UserInline
    - `id` integer, nullable
    - `name` string, required
    - `email` string, email, nullable
  - `api_key` ResultApiKey
    - `id` integer, required
    - `name` string, required
    - `created_by` UserInline, required
      - `id` integer, nullable
      - `name` string, required
      - `email` string, email, nullable
  - `runs` object: 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.
  - `met_expected_outcome_count` string: Number of test runs that met the expected outcome criteria Example: `10`
  - `total_expected_outcome_count` string: Total number of test runs that were evaluated for expected outcomes Example: `10`
  - `total_runs_count` string: Total number of test runs associated with this result Example: `10`
  - `completed_runs_count` string: Number of test runs that have completed successfully Example: `10`
  - `success_runs_count` string: Number of test runs that were marked as successful Example: `10`
  - `failed_runs_count` string: Number of test runs that failed or encountered errors Example: `10`
  - `scenarios` object: List of scenario names used in the test runs for this result Example: ```json [ { "id": 123, "name": "Scenario 1" }, { "id": 456, "name": "Scenario 2" } ] ```
  - `run_type` string, nullable: Run Execution Type
  - `agent_version` AgentVersionSummary
    - `history_id` integer, required: History record ID of the agent version
    - `version_id` string, nullable, required: Version label, e.g. "v12"
    - `version_name` string, nullable, required: Optional name given to the version
    - `is_current` boolean, required: Whether this is the agent's current version
  - `created_at` string, date-time: Timestamp when this test result was created Example: `2021-01-01 00:00:00`
  - `updated_at` string, date-time: Timestamp when this test result was last updated

## Changes

- **2026-11-03** `a6fb6a739212`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/cekura/apis/cekura-api/changes/test_framework/v2/results/:id/rerun/post.md)

---

[API](https://skmtc.dev/cekura/apis/cekura-api.md) - [All operations](https://skmtc.dev/cekura/apis/cekura-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cekura/apis/cekura-api/revisions/a6fb6a739212?raw)
