Two classifications
Interactions start in one of two states depending on the product surface they came from. Once feedback is received, an unclassified opportunity can be promoted to confirmed.Unclassified
Applies to HTTP JSON, HTML, and header responses. These are opportunities: the feedback contract is present and valid, but Agent Feedback cannot verify whether an agent consumed or acted on it. Generic agents that do not implement the protocol may ignore the contract entirely. A feedback-aware runtime can still submit deterministically, which promotes the interaction to confirmed.
Confirmed
Applies to MCP tool calls and to any HTTP interaction where a valid outcome is later submitted. Confirmed interactions have explicit, protocol-backed evidence of agent engagement and are the authoritative signal in your dashboard metrics.
Best-effort collection over HTTP is genuinely useful — most agents that read and act on a product response are also capable of following the submit instructions. Confirmed interactions are simply the highest-fidelity signal.
How an interaction gets promoted
An unclassified HTTP interaction becomes confirmed the moment the backend accepts a valid outcome submission against its capability token.
MCP tool calls skip the unclassified state entirely. Because the MCP protocol exposes
report_product_outcome as an explicit registered tool, the interaction is confirmed immediately with mcp evidence.
Customer references
You can pass an optionalcustomerRef to any SDK middleware. This is an opaque string that your own code supplies — for example, an account ID from your auth layer — and it scopes that interaction to one of your customers in the dashboard.
Sessions
Sessions let you group a sequence of related interactions into a single continuity unit — for example, a multi-step task a customer agent performs across several requests. Agent Feedback only creates or joins a session when it can verify the continuity claim through one of the accepted proof methods:- Company-provided: your server explicitly supplies a
sessionRefin the middleware options - MCP: the MCP protocol itself establishes session continuity
- Signed continuation: a signed continuation token proves the request belongs to an existing session
What you see in the dashboard
Each product scopes its own interaction list. For every product you can see:- Interaction count — total instrumented responses over the selected time window
- Classification breakdown — the ratio of confirmed to unclassified interactions
- Outcomes —
success,partial, andfailuretallies with note samples - Sessions — grouped continuity units with their constituent interactions
- Per-product scoping — interactions never bleed across products or workspaces