Set a call's outcome
Set a call’s post-call outcome: what happened, a number for it, and data to attach.
Send only the fields to change: null clears one, and custom_metadata replaces the whole
object. A new custom_outcome joins the agent’s list of post-call outcomes, which the web
app’s analytics and filters use. Answers with the updated call. The same calls can be updated
as read with GET /v1/calls/{id}. To find a call by the customer’s number, list the agent’s
calls with customer_phone_number and limit=1: the newest call comes first.
Authorizations
An org API key: Authorization: Bearer phk_…
Headers
Optional. Must be the key's org.
Path Parameters
The call's ID.
Body
The post-call outcome to set. Send only the fields to change; null clears one.
Any JSON object to attach to the call, up to 32 KB. It replaces the whole object stored before. An object the call can't store, such as one nested more than 20 levels deep or with a list directly inside a list, is a 400.
The outcome, in your own words, such as Booked. 1 to 255 characters. It's added to the agent's list of post-call outcomes.
1 - 255A number to go with the outcome, such as a deal value.
Response
Successful Response
One call with its call analysis. The transcript and recording have their own endpoints.
Action items the conversation left for the customer.
The agent that handled the call.
The Phonely number on the call, as recorded: usually E.164, such as +14155550100.
The outbound campaign that placed the call, if any.
Data your integration attached to the call, as sent. null when none.
The post-call outcome your integration set, such as Booked. null when none.
A number your integration set with the outcome, such as a deal value. null when none.
The name the customer gave. null when they gave none.
The customer on the call, as recorded: usually E.164, but Anonymous or a SIP address when they withheld their number. null for web calls.
How long the call lasted. null when not recorded, as for a call that never connected.
When the call ended. null while it is still in progress.
Why the call ended. null when it was not recorded. Known values: assistant_ended_call, assistant_forwarded_call, customer_ended_call, hangup_during_warm_transfer, max_duration_reached, silence_timeout, no_answer, user_busy, call_failed, voicemail, no_one_engaged, pre_screen_hangup, greeting_hangup, pre_greeting_hangup, greeting_timeout, pre_call_rejected, pipeline_error, unknown_error, unsure. More can be added, so handle values you don't recognize.
Why a person should follow up, and who.
The call's ID.
Whether a person should follow up with the customer.
Key points from the conversation.
A longer summary from call analysis, up to six sentences.
A date mentioned on the call, such as an appointment.
An email address mentioned on the call.
A time mentioned on the call, as HH:mm (24-hour).
The type of this object, always call.
"call"The call's outcome, as the agent's call analysis labels it.
The call's purpose, in a few words.
The customer's sentiment: from call analysis, unless someone changed it in the web app. Known values: positive, negative, neutral, unsure. More can be added, so handle values you don't recognize.
When the call started, or was queued if it never connected.
Where the call is in its lifecycle. Known values: completed, ended, in_progress, in_warm_transfer, queued, queueing, redial_scheduled, cancelled, dnc, failed, transferred_sold, transferred_not_sold, transferred_pending_sale, rev_share_pending_qualification, transferred_busy, transferred_no_answer, transferred_failed. More can be added, so handle values you don't recognize.
A short summary from call analysis.
How the call happened. Known values: inbound_phone_call, outbound_phone_call, warm_transfer, web_call, web_chat, messaging_session, call_and_messaging, pay_per_call, unknown. More can be added, so handle values you don't recognize.
Questions the agent didn't answer.
When a warm transfer to a person began. null when there was none.

