---
title: "Read or finalize an agent test timeline"
method: POST
path: "/v1/tests/report"
tags: ["agent-testing", "synthetic", "timeline"]
---

# Read or finalize an agent test timeline

`POST /v1/tests/report`

## Request

- Base URL: `https://api.402rates.com`
- URL: `https://api.402rates.com/v1/tests/report`
- Auth: none declared

Read calls, timestamps, operations and resulting state. Optional finalization freezes the run. A linked repeat includes the previous frozen report while retained. No score, certification or judgment of the agent.

## Headers

- `X-Test-Access-Token` string: Secret short-lived run token. Omitted from reports. MCP client history may retain this argument.

## Request body

- union
  - object: Empty HTTP input returns guidance only; it performs no run operation and requires no run token.
    - `run_id` string: Run identifier from start_agent_test.
    - `finalize` boolean: True freezes the run and prevents further actions. Omitted means read only.
  - object
    - `run_id` string, required: Run identifier from start_agent_test.
    - `finalize` boolean: True freezes the run and prevents further actions. Omitted means read only.

## Response `200`

Successful response

- union
  - object
    - `status` 'input_required', required
  - AgentTestReportV1Json (unresolved $ref)
  - AgentTestReportV2Json (unresolved $ref)

## Other responses

- `400`: Invalid test input
- `401`: Run token required or invalid
- `405`: POST required
- `409`: Run or action conflict
- `410`: Run no longer available
- `413`: Input exceeds 8192 bytes
- `415`: application/json required
- `429`: Test limit reached
- `503`: Test service unavailable

---

[API](https://skmtc.dev/402rates/apis/402rates-com.md) · [All operations](https://skmtc.dev/402rates/apis/402rates-com/llms.txt) · [OpenAPI document](https://skmtc.dev/402rates/apis/402rates-com/revisions/483a9d0a3f0b?raw)
