A Call has ended and the statusCallbackUrl
is being invoked. This is a notification only; All PerCL commands will be ignored.
If full-call recording was requested for this call (via startRecordCall
), the recording information will be included here. Note this is different from recordUtterance
, and there is the separate record
webhook for this command. If a recordUtterance was in progress for a call when the call was completed, any recording for that command will have the record
webhook invoked separately for it.
If circumstances caused a zero-length recording to be done, such as a call being hung up very quickly after a startRecordCall was requested, then this webhook will have empty/zero information for the recording.
Request Parameter | Type | Description |
---|
requestType | string | Context or reason why this request is being made. Will be callStatus - A Call has ended and the statusCallbackUrl is being invoked. |
callId | string | Unique identifier for this Call, generated by FreeClimb. |
accountId | string | Account ID associated with your account. |
from | string | Phone number of the party that initiated the Call (in E.164 format). |
to | string | Phone number provisioned to the customer and to which this Call is directed (in E.164 format). |
callStatus | string | Descriptive status for the Call. Valid values are:
•completed - Call ended after having been connected.
•busy - Caller received a busy signal.
•failed - Call could not be completed as dialed, most likely because the phone number was non-existent.
•noAnswer - Call ended without being answered.
•canceled - Call was canceled via the REST API while queued or ringing. |
callEndedReason | string | Enhanced status for the Call with additional information where available. Valid values are:
•busy - Caller received a busy signal.
•failed - Call could not be completed as dialed, most likely because the phone number was non-existent.
•noAnswer - Call ended without being answered.
•callCanceled - For outbound calls: it was canceled via the REST API while queued or ringing. For inbound calls: it was canceled at the caller's end.
•farEndHangup - The phone FreeClimb was connected to was hung up.
•appHangup - The FreeClimb application hung up the call.
•appReject - The FreeClimb application rejected the inbound call before it could be answered.
•appNoPercl - FreeClimb hung up the call because the application provided no percl when it was expected and needed to continue the call context.
•appInvalidPercl - There was an error with the percl provided by the application. See logs for more information.
•conferenceTerminated - The call was in a conference and the conference was terminated which automatically hangs up the call.
•conferenceEmptied - The call was in a conference and the conference was emptied which automatically hangs up the call.
•removedFromConference - The call was removed from conference and was not added with a URL to invoke the leaveConference webhook. In this case, the call is hung up.
•machineDetected - A fax or answering machine was detected for an outbound call and the option to hang up was specified.
•webhookFailed - FreeClimb encountered a failure invoking a webhook on the application to get more PerCL. See logs for more information.
•webhookInvalidResponse - FreeClimb got a bad response invoking a webhook on the application to get more PerCL. See logs for more information.
•voiceDisabled - The FreeClimb number is not voice enabled.
•configErrorNoApplication - The phone number owned by the account has no Application resource defined for it.
•configErrorNoVoiceUrl - The Application resource linked to the phone number has no voice url defined for it.
•maxRedirectsError - The call reached maximum redirect commands (256) indicating possible looping, so call was hung up. See logs for more information.
•perclProcessingError - An error was encountered processing PerCL for the call. See logs for more information.
•internalError - An internal error was encountered. See logs for more information. If this error persists, please contact FreeClimb support.
•grpcHangup - Hangup occurred via GRPC.
•maxDuration - Hangup occurred because call duration exceeded FreeClimb maximum of 6 hours. |
direction | string | String describing the direction of the Call – inbound for inbound calls, outbound for Calls initiated via the REST API, or outboundDial for Calls initiated by the OutDial command. |
conferenceId | string | This is set to null. |
queueId | string | This is set to null. |
callDuration | integer | Duration in seconds of the just-completed Call. This is the total duration including ring time. To see more detailed information including connected vs. total duration and start/end time, that is available by doing a GET on the call via the REST API. |
recordingUrl | | URL of the phone Call's recorded audio. |
recordingId | | ID of the Recording from this Call. |
recordingDurationSec | | Duration of the recorded audio rounded up to the nearest second (in seconds). |
parentCallId | string | ID of the Call that created this leg (child call). |