Software Factory
Modules

Feedback

Collect customer feedback, organize recurring themes, and connect product signals to delivery work.

The Feedback module gives your team a central place to collect, review, and organize reports from customers and end users. It turns individual reports into grouped product signals that can inform requirements, planning, and implementation.

  • Feedback is an individual customer or end-user report, including its submitter, written content, and attachments. Each item gets an FB-N ID.
  • Themes group related patterns so teams can identify repeated needs, requests, or pain points. Each theme gets a THM-N ID.

Use Feedback to keep customer signals connected to product planning instead of scattering them across notes, isolated tickets, or unsupported roadmap guesses.

Reporting feedback

Your application or internal tools can send reports through the Feedback Integration API. Teammates can also log a report by hand, as described in Reviewing feedback.

To get a key, open the Feedback module's Connect tab and select Create Key under Credentials. Copy the Feedback API Key right away, because the full key is shown only once. If you lose it, Regenerate Key gives you a new one, and integrations that still use the old key stop working.

The Connect tab also shows your Feedback Endpoint, a Server-side Code Example, and an AI Integration Prompt you can give an AI coding tool to set up the integration. Call the endpoint from your backend so the key stays private:

POST /v2/reporting-api/feedback
X-API-Key: sf-rpt-...
Content-Type: application/json

{
  "end_user_email": "customer@example.com",
  "content": "Feedback text in Markdown",
  "attachments": [
    {
      "file_name": "screenshot.png",
      "file_key": "file-key-from-the-upload-step",
      "file_size": 123456,
      "mime_type": "image/png"
    }
  ]
}

end_user_email and content are required, and content can't be blank. attachments is optional. Don't send any other fields, such as title. The endpoint rejects fields it doesn't recognize, and 8090 Software Factory sets feedback titles itself.

The response contains the new item's feedback number. For example, 123 appears in the Inbox as FB-123:

{
  "feedback_number": 123
}

Attach files

Upload each file before you create the feedback that references it:

Request an upload URL

POST /v2/reporting-api/feedback/attachments/presigned-url
X-API-Key: sf-rpt-...
Content-Type: application/json

{
  "file_name": "screenshot.png",
  "mime_type": "image/png",
  "file_size": 123456
}

The response contains an upload_url and a file_key.

Upload the file

Send the file in a PUT request to upload_url, with the same Content-Type you declared. The URL expires soon after you get it, so upload right away.

Reference the file

Add the file to attachments when you create the feedback, with its file_key, file_name, file_size, and mime_type. The file_size must match the size of the file you uploaded.

Attachment limits:

  • Up to 5 attachments per feedback item.
  • Up to 10 MB per file. Videos can be up to 200 MB.
  • Supported types are PNG, JPEG, GIF, and WebP images, PDF, MP4, WebM, and QuickTime video, and text formats such as plain text, Markdown, CSV, JSON, XML, and YAML. Text files must be UTF-8.

Reviewing feedback

New reports appear in the Feedback Inbox as FB-N items with the status To Process. By default, the Inbox is grouped by status, with the newest reports first. To find the reports that need attention:

  • Search the list.
  • Use Display Settings to group by Status, End User, or Labels, or to change the sort.
  • Use the Filter button to narrow the list by End User, Status, Labels, or Created date.

To log a report yourself, select + Feedback, enter the End User Email and Description, add any attachments, and select Submit.

Open an item to read the full submission and its Attachments, see its Connected Themes and Connected Work Orders, and discuss it with your team in Activity. Each item has one of three statuses:

StatusMeaning
To ProcessThe report still needs review. New reports start here.
ProcessedThe team understands the report and has connected it to the right theme.
IgnoredThe team decided the report needs no action.

Change the status from the item, from the table, or for several selected items at once.

Themes

Themes turn related reports into product signals. A theme has:

  • A title and a brief, which is the description that sums up the problem
  • Quotes from the feedback behind it
  • Status: Unresolved, Planned, Declined, or Resolved
  • Type: Bug, Feature Request, Enhancement, or Other
  • Priority: No Priority, Urgent, High, Medium, or Low
  • Feature, Assignee, and Labels
  • Connected Work Orders

Create a theme with + Theme in the toolbar or on a group header. The Create Theme dialog asks for a title, type, priority, and description, and optionally a feature and an assignee.

By default, the Themes table is grouped by Status and sorted by Quotes, so the themes with the most evidence come first. To change that:

  • Use Display Settings to group by Status, Priority, Type, Assignee, Feature, or Labels, or to change the sort.
  • Use the Filter button to narrow the table by Type, Priority, Status, Feature, Assignee, Labels, or Created date.

Quotes

Quotes are exact passages from feedback. They connect a theme to users' words and keep planning grounded in evidence.

To add a quote, select text in a feedback item's description and choose Link to Theme. Pick a theme, or select Create New Theme, then select Link to Selected. To change a quote later, select its highlight and choose Unlink, or Edit Link to move it to another theme.

To connect feedback or a theme to the work order that addresses it, open the work order, select the gear in its Context section, and pick the items under Feedback or Themes. The link then appears under Connected Work Orders on the feedback item and the theme.

When a feedback item has no connected themes or work orders, or a theme has no connected work orders, Triage with Agent drafts a request in the agent chat to create or connect one.

Mentions and labels

@-mention feedback and themes by their FB-N and THM-N IDs in documents, work order descriptions, and the agent chat. Both also appear in global search.

Feedback items and themes use the same labels as Work Orders. Manage them in Settings → Modules → Work Orders → Labels.

Feedback triage automation

Use the Triage Feedback automation to organize feedback as it arrives instead of waiting for someone to review the Inbox. Add it from the Recommended section of the Automations page. It runs each time feedback is created, with the permissions of the person who added the automation. For each new item, it:

  1. Reads the whole item, including its attachments and team comments.
  2. Assigns a feature when the item clearly maps to one.
  3. Matches the item to an existing theme, or creates a new theme with a brief.
  4. Extracts one representative quote for the theme.
  5. Updates the theme brief when the new evidence changes its scope or impact.
  6. Checks whether a work order already covers the theme.
  7. Marks the item Processed, unless it is a bug report that lacks reproduction steps or a root cause.

If the automation can't finish an item, it leaves the item as To Process and explains why in the automation's run history. This happens when it can't read an attachment, can't tell which feature the item belongs to, or finds that the closest theme is already resolved. It doesn't create work orders on its own. When a theme has no work order, it reports that in the run instead.

Agent capabilities

The agent can list, read, create, and edit feedback and themes. It links feedback to themes with quotes, adds labels, connects work orders, and marks items processed. It can read long reports and text attachments in full. Before it deletes feedback or a theme, it asks you to confirm.

Built-in skills guide this work:

  • Triage Feedback matches feedback to themes and extracts quotes, as in the automation above.
  • Groom Themes merges overlapping themes, splits or renames themes, and resolves stale ones.
  • Create Theme Work Order checks whether a theme's work orders cover it and proposes one when they don't.
  • Theme Writing sets how themes are named, described, and prioritized, with templates for bug, enhancement, and feature request themes.

Migrating from Validator

The Validator API was retired on August 1, 2026.

The Validator API is no longer available

Every Validator endpoint now returns 410 Gone. New submissions must use the Feedback Integration API and a Feedback API Key. Feedback you sent through Validator is still in the Feedback module.

Replace each Validator endpoint with its successor:

Validator endpointReplacement
POST /integration/validator/feedbackPOST /v2/reporting-api/feedback
POST /integration/validator/feedback/attachments/presigned-urlPOST /v2/reporting-api/feedback/attachments/presigned-url
/external-api/validator/actions and every path under it/v2/external-api/feedback/items and /v2/external-api/feedback/themes

Change the endpoints

Send requests to the replacement paths in the table above.

Replace the API key

For the reporting endpoints, send a Feedback API Key (sf-rpt-...) in the X-API-Key header instead of a Validator key in X-App-Key. The /v2/external-api/feedback endpoints use a project External API key (sofa-ext-...), sent as Authorization: Bearer <key>. Create one under Settings → API Keys → External API.

Update the payload

Send the feedback text in the content field, and stop sending a title.

See the API reference for request and response details.

Continue with Support & Community when you need help or want to share product feedback with the 8090 Software Factory team.

On this page