# Read AgentFeedbackReceipt

feedback.now v1 receiver. Private untrusted reports, inline evidence, 90-day retention; never changes public content. HTTP and MCP writes share 60 submissions/hour per source and 240/hour site-wide. Obtain user approval when required by your host. Receipt IDs are bearer references; receipts contain status only. Acceptance means stored, not verified. No automatic submission retries.

Operation: optionsAgentFeedbackReceipt
OPTIONS /api/v1/receipts/{id}

Access: anonymous. Automatic retries: none. Redirects: manual. Request body limit: 0 bytes.
Default timeout: 30 seconds. Response limit: 16 MiB. Pagination is opt-in and bounded; an exhausted bound reports incomplete execution.

[HTML reference](/developers/api/optionsAgentFeedbackReceipt) · [Authoritative schemas](/api/openapi.json)

## Wire contract

```json
{
  "operationId": "optionsAgentFeedbackReceipt",
  "summary": "Read AgentFeedbackReceipt",
  "tags": [
    "Agent feedback"
  ],
  "description": "feedback.now v1 receiver. Private untrusted reports, inline evidence, 90-day retention; never changes public content. HTTP and MCP writes share 60 submissions/hour per source and 240/hour site-wide. Obtain user approval when required by your host. Receipt IDs are bearer references; receipts contain status only. Acceptance means stored, not verified. No automatic submission retries.",
  "x-public-access": "anonymous",
  "x-public-side-effect": "none",
  "x-public-body-limit": 0,
  "parameters": [
    {
      "name": "id",
      "in": "path",
      "required": true,
      "schema": {
        "type": "string",
        "pattern": "^rcpt_[a-f0-9]{32}$"
      }
    }
  ],
  "responses": {
    "204": {
      "description": "CORS preflight"
    }
  }
}
```

## Synthetic examples

### curl

```bash
curl --fail-with-body --max-time 30 --max-filesize 16777216 --request OPTIONS 'https://irvinebroque.com/api/v1/receipts/rcpt_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
```

### TypeScript

```typescript
import { PublicApi } from '@irvinebroque/public-api';
const api = new PublicApi();
const result = await api.feedback.receiptOptions({
  "id": "rcpt_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
});
console.log(result.status, result.headers.get('content-type')); // Keep transient capabilities in memory.
```

### CLI

```bash
irvinebroque feedback receipt-options --id 'rcpt_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
```
