---
title: "Record actual test observations for this revision. Agent evidence is not human approval."
method: POST
path: "/api/v1/rules/{id}/tests"
---

# Record actual test observations for this revision. Agent evidence is not human approval.

`POST /api/v1/rules/{id}/tests`

## Request

- Base URL: `https://human4ai.ai`
- URL: `https://human4ai.ai/api/v1/rules/{id}/tests`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `__Host-h4a`

## Path parameters

- `id` string, required

## Headers

- `Idempotency-Key` string

## Request body

- object
  - `revision` integer, required
  - `kind` 'positive' | 'boundary', required
  - `input` string, required
  - `expected` string, required
  - `actual` string, required
  - `verdict` 'pass' | 'fail', required
  - `note` string, required

## Response `200`

Successful operation; single resource or {items,nextCursor} for lists.

## Other responses

- `201`: Created resource, or the original resource on an idempotent replay.
- `400`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `401`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `403`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `404`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `409`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `413`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `415`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `429`: Structured error; see error.code. Cross-workspace IDs also return 404.
- `503`: Structured error; see error.code. Cross-workspace IDs also return 404.

---

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