---
title: "Rate a response"
method: POST
path: "/requestor/queries/{id}/responses/{responseId}/rate"
tags: ["Queries"]
---

# Rate a response

`POST /requestor/queries/{id}/responses/{responseId}/rate`

## Request

- Base URL: `https://www.getabrain.ai/api/v1`
- URL: `https://www.getabrain.ai/api/v1/requestor/queries/{id}/responses/{responseId}/rate`
- Auth: one of:
  - API key in header `X-API-Key` and API key in header `X-API-Secret`
  - HTTP bearer

Idempotent upsert: rating the same response again returns 201 and OVERWRITES the previous score/feedback (it is not a 409). The small platform-funded feedback reward is credited only once per response and never for simulated / test-mode responses.

## Path parameters

- `id` string, uuid, required
- `responseId` string, uuid, required

## Request body

- object
  - `score` integer, required
  - `feedback_text` string

## Response `201`

Rated (re-rating overwrites; also credits the requestor a small platform-funded reward the first time quality feedback is left on a real response)

- object
  - `response_id` string
  - `score` integer
  - `feedback_text` string, nullable
  - `worker_new_quality_score` number
  - `worker_new_rating_count` integer
  - `worker_suspended` boolean
  - `reward_credited_cents` integer: Platform-funded credit earned for this rating (0 on re-rate and for simulated/test-mode responses)
  - `total_reward_cents` integer: Running total of feedback rewards credited

## Other responses

- `400`: Request failed validation
- `401`: Missing or invalid authentication
- `403`: Authenticated but not permitted (suspended account or not the resource owner)
- `404`: Resource not found

---

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