> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clarionhealth.com/llms.txt
> Use this file to discover all available pages before exploring further.

# End of Call

> Receive real-time notifications when a call ends

## Overview

The End of Call webhook is triggered immediately after each individual call completes. This allows you to receive real-time updates about call outcomes, transcripts, and analysis data.

## Webhook Payload

When a call ends, Clarion sends a POST request to your configured webhook URL with the following payload:

<ParamField body="id" type="integer" required>
  The unique identifier for the call.
</ParamField>

<ParamField body="assistant_id" type="integer" required>
  The ID of the assistant that handled the call.
</ParamField>

<ParamField body="started_at" type="string">
  ISO 8601 timestamp when the call started.
</ParamField>

<ParamField body="ended_at" type="string">
  ISO 8601 timestamp when the call ended.
</ParamField>

<ParamField body="call_status" type="string" required>
  The status of the call. Possible values: `queued`, `ringing`, `in-progress`, `forwarding`, `ended`.
</ParamField>

<ParamField body="duration_ms" type="integer">
  The duration of the call in milliseconds.
</ParamField>

<ParamField body="ended_reason" type="string">
  The reason why the call ended (e.g., `customer-ended`, `assistant-ended`).
</ParamField>

<ParamField body="transcript" type="string">
  Full conversation transcript with speaker labels (`AI:` and `User:`).
</ParamField>

<ParamField body="source_number" type="string">
  The phone number that initiated the call (E.164 format).
</ParamField>

<ParamField body="destination_number" type="string">
  The phone number that received the call (E.164 format).
</ParamField>

<ParamField body="call_type" type="string">
  The type of call (e.g., `outboundPhoneCall`, `inboundPhoneCall`).
</ParamField>

<ParamField body="analysis" type="object">
  Call analysis metrics and custom data extractions.

  <Expandable title="Analysis properties">
    <ParamField body="repetition_count" type="integer">
      Number of times the assistant had to repeat information.
    </ParamField>

    <ParamField body="interruption_count" type="integer">
      Number of times the conversation was interrupted.
    </ParamField>

    <ParamField body="custom" type="object">
      Custom analysis fields configured for your assistant.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="summary" type="string">
  AI-generated summary of the call.
</ParamField>

<ParamField body="outcome" type="string">
  The outcome of the call (e.g., `resolved`, `unresolved`, `voicemail`).
</ParamField>

<ParamField body="failure_reason" type="string">
  If the call was unsuccessful, this indicates the reason. Possible values: `declined`, `escalated`, `requested-callback`, `customer-dropped`, `assistant-ended`, `opt-out`.
</ParamField>

<ParamField body="voicemail_message" type="string">
  Content of voicemail message if one was left.
</ParamField>
