> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sixtyfour.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Report Wrong Data

> Send a correction or report a problem, then check its review status.

Send `POST /feedback` with a rating, a message, or field verdicts. Include the task or workflow row when you have it; leave out `target` to report a problem with the API, docs, or a tool.

## Send a report

This example reports a problem with a [People Intelligence](https://docs.sixtyfour.ai/api-reference/endpoint/people-intelligence.md) response. Replace the message with what happened. Reuse the same `Idempotency-Key` when retrying this report; use a new key for a different report.

```bash cURL theme={null}
curl --fail-with-body https://api.sixtyfour.ai/feedback \
  -H 'X-API-Key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: email-review-001' \
  -d '{
    "category": "outdated_data",
    "message": "The returned email bounces. The person has changed employers.",
    "operation": "POST /people-intelligence",
    "source": {"kind": "agent", "agent_name": "lead-reviewer"}
  }'
```

```python Python theme={null}
import json
from urllib.request import Request, urlopen

request = Request(
    "https://api.sixtyfour.ai/feedback",
    data=json.dumps({
        "category": "outdated_data",
        "message": "The returned email bounces. The person has changed employers.",
        "operation": "POST /people-intelligence",
        "source": {"kind": "agent", "agent_name": "lead-reviewer"},
    }).encode(),
    headers={
        "X-API-Key": "YOUR_API_KEY",
        "Content-Type": "application/json",
        "Idempotency-Key": "email-review-001",
    },
)
with urlopen(request) as response:
    print(json.load(response))
```

```javascript JavaScript theme={null}
const response = await fetch("https://api.sixtyfour.ai/feedback", {
  method: "POST",
  headers: {
    "X-API-Key": "YOUR_API_KEY",
    "Content-Type": "application/json",
    "Idempotency-Key": "email-review-001",
  },
  body: JSON.stringify({
    category: "outdated_data",
    message: "The returned email bounces. The person has changed employers.",
    operation: "POST /people-intelligence",
    source: { kind: "agent", agent_name: "lead-reviewer" },
  }),
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());
```

The receipt includes the ID to keep for checking status:

```json theme={null}
{
  "id": "6a0b5d0e-8f1e-4c2a-b7d3-9e8f7a6b5c4d",
  "already_submitted": false,
  "target": null,
  "fields_recorded": 0,
  "created_at": "2026-11-05T18:22:11Z"
}
```

## Identify the result and correction

Add `target` and `fields` to the request when you can identify the result:

```json theme={null}
{
  "target": {"type": "task", "task_id": "enrich_7d1c0e52-5b8f-4c1a-9f0e-3a2b1c4d5e6f"},
  "fields": [{
    "path": "email",
    "verdict": "outdated",
    "returned": "jane@acme.com",
    "correct": "jane@newco.com",
    "evidence_urls": ["https://www.linkedin.com/in/janedoe"]
  }]
}
```

Replace the example task ID with the `task_id` from your async response or webhook. For a synchronous enrichment, use its `X-Correlation-ID` response header. If a request failed before creating a task, leave out `target` and include its `correlation_id` in `message`.

For a workflow row, use `{"type":"workflow_row","run_id":"YOUR_JOB_ID","block":2,"row":37}`: `run_id` is the `job_id` from `POST /workflows/run`, `block` is the results file's `block_number`, and `row` is its `_row_id`.

Use `wrong` for an incorrect value, `outdated` for a value that was right once, `missed` when a value exists but we returned nothing, or `correct` to confirm a value. Leave unreviewed fields out. Leave out `correct` when you don't know the right value; an explicit `null` reports that the right value is empty.

## Check review status

Use the receipt's `id` with the same team credentials:

```bash theme={null}
curl --fail-with-body https://api.sixtyfour.ai/feedback/6a0b5d0e-8f1e-4c2a-b7d3-9e8f7a6b5c4d \
  -H 'X-API-Key: YOUR_API_KEY'
```

The response includes your report, its `channel`, `status`, and `status_updated_at`. Status starts at `received`, changes to `reviewed` when the team has examined it, and to `fixed` when the reported issue is resolved. A status change does not rewrite a result you already downloaded. Access to feedback follows access to its target.

## From an MCP agent

Call `sixtyfour_send_feedback` with the same report in `feedback` and a stable `idempotency_key`. Then call `sixtyfour_get_feedback` with the returned ID to check its status. Ask your agent: “Report this incorrect email to Sixtyfour, include the task ID and evidence, and save the feedback ID.”

See the [MCP setup guide](https://docs.sixtyfour.ai/developer-tools/mcp-setup.md) to connect these tools.

## Errors

For error responses (400, 403, etc.), see [Handling Errors](https://docs.sixtyfour.ai/api-reference/errors.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.