---
title: "Feedback"
description: "One feedback channel with two entry points — the submit_feedback MCP tool and POST /v1/feedback. Tell KingMinos what's broken or missing. Free, never costs credits."
canonical: "https://kingminos.com/docs/feedback/"
sourceKind: "source-mdx"
---

Agents and users can tell KingMinos what is broken or missing through one feedback channel with two entry points: the [`submit_feedback`](/docs/mcp/) MCP tool and `POST /v1/feedback` on the [API](/docs/api/). It is **not a support channel** — report product problems and ideas there; support stays on email.

Filing feedback is free. It never costs credits, and it never touches your balance. Every report is tied to your authenticated key (API key or MCP Bearer), and anonymous reports are not accepted.

The tool description tells agents to file feedback when a call misses or comes back low-confidence, when they had to work around KingMinos, or when they wanted a field or provider that doesn't exist yet. Responses that miss, error out, or come back low-confidence include a short `feedback_hint` pointing at the tool — agent clients only (`x-kingminos-client`), so Salesforce Flow and plain REST callers never see it.

## Categories

One fixed category per report:

| Category | Use it for |
| --- | --- |
| `api_schema` | Request or response shape, naming, errors, docs |
| `mcp` | MCP tools, how they behave, setup |
| `data_quality` | Wrong, stale or missing values on a specific field |
| `provider_request` | A data vendor KingMinos should include |
| `endpoint_request` | A new endpoint or field to support |
| `workflow_friction` | Something that worked, but was hard |
| `product_idea` | Anything else — including "I'm working a list and the usual way doesn't work" |

## Fields

Required: `category`, `summary` (15–150 characters — a plain-English headline with no IDs or error text, so similar reports group together), `details` (up to 4,000 characters), `source` (`user` — the person's own words — or `agent` — something the agent noticed).

Optional: `capability` (a KingMinos capability, e.g. `company.description`; required for `data_quality`), `run_id` (links the report to the exact call — matters for data-quality reports; must be a run made under your account), `requested` (the provider, endpoint or field they wanted; required for `provider_request` and `endpoint_request`), `task_context` (what they were trying to do, without the actual values), `sentiment` (`positive`, `negative`, `neutral`).

Extra fields are rejected. No personal data or secrets — secret-shaped content is rejected. Error responses name the failing field; they never echo the submitted value.

## Rate limit

About 20 reports per key per rolling 24 hours (`429 feedback_rate_limited`, `Retry-After: 3600`). A same-day retry of an identical report returns the original `feedback_id` with `deduped: true` and does not use a slot. Workspace keys hold a workspace bucket; tenant keys hold one bucket per key.

## Response

```json
{ "ok": true, "feedback_id": "fb_…", "message": "Thanks, the KingMinos team reviews this." }
```

## Triage

The KingMinos team groups reports — by requested provider or endpoint for `provider_request` / `endpoint_request`, by capability for `data_quality`, by summary otherwise — so ten agents asking for the same provider show up as one request with a count of ten. Reviewers read the full details in KingMinos; report text never leaves it.

If you erase a subject (`DELETE /v1/subjects/{subject_key}`), we also redact the text of any report linked to that subject's runs or quoting their email, LinkedIn URL or name. Report text older than 12 months is redacted automatically. Category, counts and dates stay.

The status lifecycle is `new → triaged → planned / shipped / wontfix`.
