Skip to content

withfeedback

Collect feedback and testimonials from your customers, moderate them, and put the good ones on your site.

Everything below is one product with two halves. You collect through a hosted page, an embeddable widget, a survey, a CSV import or the API. You then approve what you want to use, and display it as a wall or a carousel on your own pages.

  • Getting started

    From signup to a testimonial on your own site.

  • API

    REST over HTTPS, token or OAuth2, scoped per resource.

  • MCP server

    Moderate from Claude or Cursor, without a browser.

  • CLI

    withfeedback in your terminal or CI.

The shape of it

flowchart LR
    A[Hosted page] --> M
    B[Widget] --> M
    C[Survey / NPS] --> M
    D[CSV import] --> M
    E[API / MCP / CLI] --> M
    M[Moderation queue] -->|you approve| P[Approved]
    P --> W[Wall / carousel widget]
    P --> API[API + webhooks]

Two rules run through the whole product, and they are worth knowing before you start:

Nothing becomes public without a person approving it

Every submission arrives pending, whatever door it came through β€” and that includes anything the AI moderation flags as good. Approval is an action a human takes. There is no setting that publishes automatically.

Display needs consent, separately

A submission is only shown publicly when it is approved and the person gave display consent. Those are two different facts, stored separately. A withdrawal removes the item from every embed and deletes the video.

For developers

The API, the MCP server and the CLI all speak to the same resources and honour the same permissions and scopes. Nothing in the dashboard is unavailable to them.

I want to… Read
Call the API from my backend Authentication β†’ Scopes
Post a submission from my own front end Public plane
React to a new testimonial Webhooks
Moderate from my editor MCP server
Script it in CI CLI
Put a video recorder on my site Video

The full machine-readable contract is the OpenAPI schema at https://withfeedback.com/api/schema/, with browsable versions at /api/docs/ (Swagger UI) and /api/redoc/.