---
title: "Submit feedback on an agent run"
method: POST
path: "/v1/runs/{id}/feedback"
tags: ["runs"]
---

# Submit feedback on an agent run

`POST /v1/runs/{id}/feedback`

Records a rating on an agent run artifact. The rating can be POSITIVE or NEGATIVE. Attribution defaults to the authenticated user; API-key callers are attributed to their account instead.

## Path parameters

- `id` string, required

## Headers

- `Authorization` string, required

## Request body

- object
  - `rating` 'POSITIVE' | 'NEGATIVE', required — Rating value to record for this artifact.
  - `artifact_id` string, uuid, required — Identifier of the artifact to rate.
  - `comment` string, nullable — Optional free-text comment explaining the rating. Whitespace is stripped server-side; empty or whitespace-only strings are normalized to null.

## Response `201`

feedback recorded successfully

- TypeAgentsRunFeedback — POSITIVE or NEGATIVE rating on an agent run artifact.
  - `object` string, required — Object type identifier.
  - `id` string, uuid, required — Unique identifier for the feedback record.
  - `run_id` string, uuid, required — Identifier of the agent run the feedback is attached to.
  - `rating` 'POSITIVE' | 'NEGATIVE', required — Rating value submitted by the reviewer.
  - `artifact_id` string, uuid, required — Identifier of the artifact within the run that was rated.
  - `comment` string, nullable, required — Optional free-text comment submitted with the rating.
  - `reviewer` TypeAgentsRunFeedbackReviewer, required — The actor that submitted the feedback. Sidepanel/session callers attribute to a User; API-key callers attribute to the Account.
    - `type` 'User' | 'Account', required — Class of the reviewer record.
    - `id` string, uuid, required — Identifier of the reviewer record.
  - `superseded_prior` boolean, required — True if a prior active rating from the same reviewer for the same (run, artifact) tuple was superseded by this new rating.
  - `created_at` string, date-time, required — Timestamp when the feedback was created.

## Other responses

- `404` — agent run not found
- `422` — request payload is missing or invalid

---

[API](https://skmtc.net/middesk/apis/middesk-api.md) · [All operations](https://skmtc.net/middesk/apis/middesk-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/middesk/middesk-api/revisions/f849b82a42e1/schema)
