What is an outcome?
An outcome is a label assigned to a completed call that summarises its result. It lives inside theanalysis object on the call record, set automatically after the call ends. You can also set or override it manually, and you can create your own custom outcome labels for your workspace.
Where to find it:
Built-in outcome labels
OneInbox ships with a set of platform-level outcomes available to every account:| Outcome (as stored) | What it means | Typical trigger |
|---|---|---|
Appointment Booked | A meeting or demo was scheduled | Caller agreed to a specific time |
Not Interested | Caller explicitly declined | ”Not interested”, “take me off your list” |
Not Connected | No conversation happened | Unanswered, busy, immediate hang-up |
Voicemail | Voicemail greeting detected | Voicemail detection enabled and triggered |
Interested | Caller engaged but did not commit | Positive conversation, no booking |
null | No outcome classified | Call too short or ambiguous |
How auto-classification works
After every call ends, OneInbox reads the transcript and assigns an outcome automatically. No configuration needed. A few things to know:- Classification happens post-call.
analysis.outcomeisnullduring an active call. Fetch the record after the call ends. analysis.summaryexplains the reasoning. If an outcome looks wrong, read the summary to understand what the model saw in the conversation.- Custom outcomes are also used. If you have created custom outcome labels (see below), the agent uses those in addition to the built-in set when classifying calls.
Reading outcomes reliably
Stop the call
Send a stop request to end the session. If the agent already ended the call via the
end_call tool, this is a no-op.Wait 2–3 seconds
The transcript and analysis are written asynchronously after the call session closes. A short wait ensures the data is ready.
Custom outcome labels
You can create custom outcome labels specific to your workspace. The agent uses these alongside the built-in labels when classifying calls — so if you add “Hot Lead” as a custom outcome, the AI will start assigning it when a call matches that description.List call outcomes
Returns both the built-in platform labels (always available) and any custom labels you have created for your workspace.Create a custom outcome
Add a new outcome label to your workspace. Any casing is accepted — e.g."Hot Lead" or "demo_scheduled". Once created, the agent starts using it automatically when classifying future calls.
| Field | What it does |
|---|---|
label | The outcome name. Any casing is accepted — stored and displayed as-is |
description | Optional. Explains to the AI when this outcome applies. More detail = more accurate classification |
Update a custom outcome
Rename a label or deactivate it. Deactivating (is_active: false) hides the outcome from future auto-classification but preserves it on historical call records — no data is lost.
| Field | What it does |
|---|---|
label | New label name — updates how it appears on call records going forward |
is_active | false = hides this outcome from new classification while keeping historical data intact |