---
title: "Record one anonymous actionable-offer outcome"
method: POST
path: "/api/v1/outcomes"
---

# Record one anonymous actionable-offer outcome

`POST /api/v1/outcomes`

## Request

- Base URL: `https://andrewsfreebies.com`
- URL: `https://andrewsfreebies.com/api/v1/outcomes`
- Auth: none declared

Accepts one worked, ineligible, or terms-differed selection for a current trial or redeemable-savings record. Public-benefit records are excluded. The report contains no free text or visitor identifier and is not linked to a prior handoff or provider completion record.

## Request body

- OutcomeFeedbackInput
  - `record_type` 'trial' | 'entitlement', required
  - `record_id` string, required
  - `outcome` 'worked' | 'ineligible' | 'terms-differed', required
  - `source_context` string: Optional normalized presentation source. Unrecognized values become api.

## Response `201`

Anonymous voluntary report recorded

- OutcomeFeedbackReceipt
  - `api_version` '1.24', required
  - `recorded` true, required
  - `outcome` 'worked' | 'ineligible' | 'terms-differed', required
  - `record` object, required
    - `record_type` 'trial' | 'entitlement', required
    - `record_id` string, required
    - `corpus` 'trial' | 'redeemable-savings', required
  - `interpretation` string, required

## Other responses

- `400`: Invalid report or non-actionable public-benefit record
- `404`: Catalog record not found
- `413`: Request body too large
- `503`: Outcome telemetry unavailable

---

[API](https://skmtc.dev/andrewsfreebies/apis/andrew-s-freebies-api.md) · [All operations](https://skmtc.dev/andrewsfreebies/apis/andrew-s-freebies-api/llms.txt) · [OpenAPI document](https://skmtc.dev/andrewsfreebies/apis/andrew-s-freebies-api/revisions/2e23a7a12f7a?raw)
