---
title: "Read authorized feedback receipts for the current item review"
method: POST
path: "/internal/llm/public-feedback-history"
tags: ["result-admission"]
---

# Read authorized feedback receipts for the current item review

`POST /internal/llm/public-feedback-history`

## Request

- Base URL: `/` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/internal/llm/public-feedback-history`
- Auth: HTTP bearer

Requires the same fenced worker credential and admitted ITEM review. Returns confirmed same-item, same-developer copy history; a refused read is not an empty history.

## Response `200`

OK

- PublicFeedbackHistory: One authorized history read. <code>publicationContext</code> names this exact response: preparation of a public piece composed from it must send it back unchanged.
  - `contractVersion` integer, required
  - `history` History, required
    - `feedback` Entry[]
      - `basedOn` Basis[], required
        - `outcome` 'MET' | 'NOT_MET' | 'DOES_NOT_APPLY' | 'COULD_NOT_DETERMINE', required
        - `practiceSlug` string, required
        - `practiceVersionId` string, nullable, required
        - `resultId` string, uuid, required
      - `body` string, nullable, required
      - `bodyUnavailable` boolean, required
      - `copies` Copy[], required
        - `body` string, nullable, required
        - `endLine` integer, nullable, required
        - `externalRef` string, nullable, required
        - `externalUrl` string, nullable, required
        - `id` string, uuid, required
        - `kind` 'SUMMARY' | 'LINE_NOTE' | 'FILE_NOTE' | 'CHAT_TURN', required
        - `path` string, nullable, required
        - `postedAt` string, date-time, required
        - `side` 'OLD' | 'NEW' | 'null', nullable, required
        - `startLine` integer, nullable, required
        - `state` 'PLANNED' | 'WRITE_STARTED' | 'POSTED' | 'FAILED' | 'WITHHELD' | 'RETRACTED', required
      - `currentness` 'CURRENT' | 'STALE' | 'UNVERIFIABLE', required
      - `deliveredAt` string, date-time, required
      - `destination` 'ON_WORK' | 'PRACTICE_PAGE' | 'CONVERSATION', required
      - `id` string, uuid, required
      - `itemVersion` string, nullable, required
      - `state` 'AWAITING_APPROVAL' | 'READY' | 'DELIVERED' | 'UNCONFIRMED' | 'WITHHELD' | 'REJECTED' | 'REPLACED' | 'FAILED', required
      - `withdrawn` boolean, required
    - `item` ItemRef
      - `container` string, nullable, required
      - `id` string, required
      - `kind` string, required
      - `label` string, required
      - `parentId` string, nullable, required
      - `path` string, nullable, required
      - `provider` 'GITHUB' | 'GITLAB' | 'SLACK' | 'OUTLINE' | 'null', nullable, required
      - `removedAt` string, date-time, nullable, required
      - `title` string, nullable, required
      - `url` string, nullable, required
  - `publicationContext` string, nullable, required
  - `readAt` string, date-time, required

## Changes

- **2026-10-18** `1db7a5af415c`: 1 info
  - added the required property `publicationContext` to the response with the `200` status
- **2026-10-17** `4b8a89bf492c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/hephaestus-build/apis/hephaestus-api/changes/internal/llm/public-feedback-history/post.md)

---

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