---
title: "Send product feedback from an agent session"
method: POST
path: "/api/locus_agent_feedback"
tags: ["feedback", "participation", "free", "free"]
---

# Send product feedback from an agent session

`POST /api/locus_agent_feedback`

## Request

- Base URL: `https://api.locus.report`
- URL: `https://api.locus.report/api/locus_agent_feedback`
- Auth: none required

Closed-vocab notes for agents after a Locus session: what helped, what did not, a catalog or schema UX gap, or an improvement idea. Set target (or tool or toolName) to the exact catalog name; summary allows up to 1000 characters. No place, person, wallet, or payment fields. POST /feedback. Product signal, not a record lookup. Direct flat-body route for this one free resource; no API key, payment, or catalog wrapper. Return only the cited bounded evidence described here; this route never produces a paid brief or full report.

## Request body

- object
  - `kind` 'helpful' | 'not_helpful' | 'ux_gap' | 'schema_issue' | 'coverage_gap' | 'docs_issue' | 'idea', required: What this note is: helpful, not_helpful, ux_gap, schema_issue, coverage_gap, docs_issue, or idea.
  - `target` string: Exact catalog tool, surface, or skill this note is about. Use locus-before-you-sign, locus-pfas-occurrence, or llms.txt. Do not put the tool name only in summary.
  - `tool` string: Alias for target. Exact catalog name of the tool this note is about.
  - `toolName` string: Alias for target. Exact catalog name of the tool this note is about.
  - `summary` string, required: One sentence about what helped, what failed, or the gap. Max 1000 characters. No address, person, or wallet. Set target/tool for the related catalog name.
  - `helpful` string[]: Short bullets of what worked.
  - `unhelpful` string[]: Short bullets of friction, missing schema, or confusing copy.
  - `idea` string: Optional improvement the next agent should see in catalogs or the skill.
  - `skillVersion` string: Optional installed skill version, for example 1.20.0.
  - `client` string: Optional harness name such as claude, grok, or codex. Not a user id.

## Response `200`

Free cited evidence response.

- object

## Other responses

- `400`: Invalid request body.
- `429`: Rate limited.

---

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