---
title: "Public Feedback"
method: POST
path: "/v1/feedback"
---

# Public Feedback

`POST /v1/feedback`

## Request

- Base URL: `https://api.storyflo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.storyflo.com/v1/feedback`
- Auth: none declared

Site-wide feedback intake. Fan-out via operator_alerts
(Telegram primary, Slack fallback). We do NOT persist this in
the DB — the goal is "land in the operator's eyes within seconds",
not a structured analytics surface. Build a real backing table
later when the volume justifies it.

## Request body

- PublicFeedbackBody: Generic site-wide feedback. Distinct from /v1/listener/{token}/feedback which is the per-article save/dismiss signal — this one captures the inline widget's free-text + 👍/👎.
  - `rating` string, required
  - `score` integer, nullable
  - `comment` string, nullable
  - `page` string, nullable
  - `listener_token` string, nullable

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/storyflo/apis/storyflo-inference-router.md) · [All operations](https://skmtc.dev/storyflo/apis/storyflo-inference-router/llms.txt) · [OpenAPI document](https://skmtc.dev/storyflo/apis/storyflo-inference-router/revisions/c3a1a735ac7a?raw)
