---
search:
  tags:
    - V1
    - POST
seo:
  description: >-
    Create a Supabase-backed v1 test run, create linked evaluation_runs,…
    Reference for the POST /v1/projects/{projectId}/test-runs endpoint in the
    Judgeval API.
sidebar:
  label: Prepare and queue test run
  badge: POST
title: Prepare and queue test run
type: openapi-operation
---
Create a Supabase-backed v1 test run, create linked evaluation_runs, and enqueue judge evaluation work.

`POST /v1/projects/{projectId}/test-runs`

**Request body** (`application/json`, required)

- `test_run_id` (string<uuid>) — Reuse an owned, pending platform agent run instead of creating a new run.
- `test_config_id` (string, required)
- `name` (string)
- `dataset_version_id` (string)
- `dataset_version_number` (number)
- `judge_versions` (object[])
- `source` (string)
- `agent_errors` (object[])
- `agent_traces` (object[])

Request body example:

```json
{
  "test_run_id": "01dbc221-8963-4bd7-8591-4a1f9d286862",
  "test_config_id": "string",
  "name": "string",
  "dataset_version_id": "string",
  "dataset_version_number": 0,
  "judge_versions": [
    {
      "judge_id": "string",
      "name": "string",
      "version": "string",
      "major_version": 0,
      "minor_version": 0
    }
  ],
  "source": "sdk",
  "agent_errors": [
    {
      "example_id": "string",
      "error": "string"
    }
  ],
  "agent_traces": [
    {
      "example_id": "string",
      "agent_offline_trace_id": "string"
    }
  ]
}
```

**Responses**

- `200` — Response for status 200
- `402` — Response for status 402
- `404` — Response for status 404
- `409` — Response for status 409
- `422` — Response for status 422
- `429` — Response for status 429

Response example, 200:

```json
{
  "test_run": {
    "id": "string",
    "organization_id": "string",
    "project_id": "string",
    "user_id": "string",
    "test_config_id": "string",
    "dataset_id": "string",
    "dataset_version_id": "string",
    "source": "sdk",
    "status": "pending",
    "name": "string",
    "error_message": "string",
    "created_at": "string",
    "updated_at": "string",
    "started_at": "string",
    "completed_at": "string"
  },
  "dataset": {
    "dataset_id": "string",
    "organization_id": "string",
    "project_id": "string",
    "name": "string",
    "schema": {},
    "current_version": 0,
    "created_at": "string",
    "updated_at": "string",
    "creator_id": "string",
    "entries": 0,
    "test_config_count": 0
  },
  "dataset_version": {
    "version_id": "string",
    "dataset_id": "string",
    "organization_id": "string",
    "project_id": "string",
    "version_number": 0,
    "created_at": "string",
    "user_id": "string",
    "item_count": 0
  },
  "examples": [
    {
      "example_id": "string",
      "organization_id": "string",
      "project_id": "string",
      "data": {},
      "metadata": {},
      "managed_metadata": {},
      "created_at": "string",
      "user_id": "string"
    }
  ],
  "judges": [
    {
      "judge_id": "string",
      "judge_name": "string",
      "judge_type": "string",
      "score_type": "string",
      "judge_major_version": 0,
      "judge_minor_version": 0
    }
  ],
  "evaluation_runs": [
    {
      "run_id": "string",
      "judge_name": "string",
      "example_id": "string",
      "test_run_id": "string",
      "judge_id": "string",
      "judge_major_version": 0,
      "judge_minor_version": 0
    }
  ],
  "ui_results_url": "string"
}
```
