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

# Post-Call-Webhook

> Nach Abschluss eines Anrufs gesendeter Webhook mit extrahierten Variablen und Anrufdaten

Der Post-Call-Webhook wird automatisch nach Abschluss jedes Anrufs an Ihre angegebene Webhook-URL gesendet. Dieser Webhook enthält Anrufdetails, extrahierte Variablen, Transkript und optional die Aufzeichnungs-URL.

## Webhook-Konfiguration

Um Post-Call-Webhooks zu aktivieren:

1. Konfigurieren Sie die Webhook-URL Ihres Assistenten in den [Assistenteneinstellungen](/ai-assistants/settings/post-call-actions#webhook-configuration)
2. Aktivieren Sie "Post call webhook" in der [Assistentenkonfiguration](/ai-assistants/settings/post-call-actions#webhook-configuration)
3. Definieren Sie Post-Call-Variablen, die die KI extrahieren soll

## Anfrage-Format

Der Webhook wird als POST-Anfrage an Ihre konfigurierte URL mit folgender JSON-Payload gesendet:

### Payload-Struktur

<ResponseField name="id" type="integer">
  Eindeutiger Bezeichner des Anrufs
</ResponseField>

<ResponseField name="customer_phone" type="string">
  Telefonnummer des Kunden im E.164-Format (z.B. "+1234567890") oder null, falls nicht verfügbar
</ResponseField>

<ResponseField name="assistant_phone" type="string">
  Vom Assistenten verwendete Telefonnummer im E.164-Format oder null, falls nicht verfügbar
</ResponseField>

<ResponseField name="duration" type="integer">
  Dauer des Anrufs in Sekunden
</ResponseField>

<ResponseField name="status" type="string">
  Endstatus des Anrufs (z.B. "completed", "busy", "failed")
</ResponseField>

<ResponseField name="extracted_variables" type="object">
  Von der KI extrahierte Variablen basierend auf Ihrer Post-Call-Schema-Konfiguration

  <Expandable title="Beispiel extrahierte Variablen">
    <ResponseField name="status" type="boolean">
      Ob das Anrufziel erreicht wurde
    </ResponseField>

    <ResponseField name="summary" type="string">
      Anrufzusammenfassung in wenigen Worten
    </ResponseField>

    <ResponseField name="custom_variable" type="string|number|boolean">
      Beliebige benutzerdefinierte Variablen, die Sie in der Assistentenkonfiguration definiert haben
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="input_variables" type="object">
  Variablen, die vor Beginn des Anrufs an den Assistenten übergeben wurden
</ResponseField>

<ResponseField name="transcript" type="string">
  Vollständiges Transkript der Konversation
</ResponseField>

<ResponseField name="recording_url" type="string">
  URL zum Herunterladen der Anrufaufzeichnung (nur enthalten, wenn "Include recording in webhook" in den [Assistenteneinstellungen](/ai-assistants/settings/post-call-actions#webhook-configuration) aktiviert ist)
</ResponseField>

<ResponseField name="created_at" type="string">
  ISO 8601-Zeitstempel, wann der Anruf initiiert wurde
</ResponseField>

<ResponseField name="finished_at" type="string">
  ISO 8601-Zeitstempel, wann der Anruf abgeschlossen wurde (verwendet updated\_at aus dem Anrufdatensatz)
</ResponseField>

<ResponseField name="lead" type="object">
  Lead-Informationen (nur bei Kampagnenanrufen enthalten)

  <Expandable title="Lead-Eigenschaften">
    <ResponseField name="id" type="integer">
      Eindeutiger Bezeichner des Leads
    </ResponseField>

    <ResponseField name="phone_number" type="string">
      Telefonnummer des Leads
    </ResponseField>

    <ResponseField name="variables" type="object">
      Mit dem Lead verknüpfte Variablen
    </ResponseField>

    <ResponseField name="status" type="string">
      Aktueller Status des Leads
    </ResponseField>

    <ResponseField name="created_at" type="string">
      Wann der Lead erstellt wurde
    </ResponseField>

    <ResponseField name="updated_at" type="string">
      Wann der Lead zuletzt aktualisiert wurde
    </ResponseField>

    <ResponseField name="campaign" type="object">
      Kampagneninformationen (falls verfügbar)

      <Expandable title="Kampagnen-Eigenschaften">
        <ResponseField name="id" type="integer">
          Kampagnen-ID
        </ResponseField>

        <ResponseField name="name" type="string">
          Kampagnenname
        </ResponseField>

        <ResponseField name="status" type="string">
          Kampagnenstatus
        </ResponseField>

        <ResponseField name="allowed_hours_start_time" type="string">
          Erlaubte Startzeit der Kampagne
        </ResponseField>

        <ResponseField name="allowed_hours_end_time" type="string">
          Erlaubte Endzeit der Kampagne
        </ResponseField>

        <ResponseField name="allowed_days" type="array">
          Erlaubte Tage der Kampagne
        </ResponseField>

        <ResponseField name="max_calls_in_parallel" type="integer">
          Maximale gleichzeitige Anrufe für die Kampagne
        </ResponseField>

        <ResponseField name="max_retries" type="integer">
          Maximale Wiederholungsversuche für Leads
        </ResponseField>

        <ResponseField name="retry_interval" type="integer">
          Wiederholungsintervall in Minuten
        </ResponseField>

        <ResponseField name="created_at" type="string">
          Wann die Kampagne erstellt wurde
        </ResponseField>

        <ResponseField name="updated_at" type="string">
          Wann die Kampagne zuletzt aktualisiert wurde
        </ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 Post-Call-Webhook-Anfrage theme={null}
  {
    "id": 12345,
    "customer_phone": "+1234567890",
    "assistant_phone": "+1987654321",
    "duration": 125,
    "status": "completed",
    "extracted_variables": {
      "status": true,
      "summary": "Kunde an Produktdemo interessiert",
      "lead_quality": "high",
      "next_action": "schedule_demo"
    },
    "input_variables": {
      "customer_name": "John Doe",
      "product_interest": "Pro Plan"
    },
    "transcript": [
      {
        "text": "Hallo! Hier ist Sarah von Website Excellence Builders. Wie geht es Ihnen heute?",
        "type": "transcript",
        "sender": "bot",
        "timestamp": 1756812511.315143
      },
      {
        "text": "Hallo, mir geht es gut, danke für den Anruf.",
        "type": "transcript",
        "sender": "human",
        "timestamp": 1756812514.104436
      },
      {
        "text": "Ich rufe an, um Ihnen von unseren neuen Produktfunktionen zu erzählen.",
        "type": "transcript",
        "sender": "bot",
        "timestamp": 1756812522.918859
      },
      {
        "text": "Das klingt interessant, erzählen Sie mir mehr.",
        "type": "transcript",
        "sender": "human",
        "timestamp": 1756812525.234567
      }
    ],
    "formatted_transcript": "KI: Hallo! Hier ist Sarah von Website Excellence Builders. Wie geht es Ihnen heute?\nKunde: Hallo, mir geht es gut, danke für den Anruf.\nKI: Ich rufe an, um Ihnen von unseren neuen Produktfunktionen zu erzählen.\nKunde: Das klingt interessant, erzählen Sie mir mehr.",
    "recording_url": "https://ki.web-wb.de/storage/recordings/call-12345.mp4",
    "created_at": "2025-01-15T10:30:00.000000Z",
    "finished_at": "2025-01-15T10:32:05.000000Z",
    "lead": {
      "id": 789,
      "phone_number": "+1234567890",
      "variables": {
        "source": "website",
        "interest_level": "high"
      },
      "status": "contacted",
      "created_at": "2025-01-15T09:00:00.000000Z",
      "updated_at": "2025-01-15T10:32:05.000000Z",
      "campaign": {
        "id": 456,
        "name": "Produktdemo-Kampagne",
        "status": "active",
        "allowed_hours_start_time": "09:00",
        "allowed_hours_end_time": "17:00",
        "allowed_days": ["monday", "tuesday", "wednesday", "thursday", "friday"],
        "max_calls_in_parallel": 5,
        "max_retries": 3,
        "retry_interval": 60,
        "created_at": "2025-01-15T08:00:00.000000Z",
        "updated_at": "2025-01-15T08:00:00.000000Z"
      }
    }
  }
  ```
</ResponseExample>

## Webhook-Einstellungen

Sie können die folgenden Optionen für Ihren Post-Call-Webhook konfigurieren:

* **Send webhook only on completed**: Webhook nur für erfolgreich abgeschlossene Anrufe senden
* **Include recording in webhook**: Das Feld `recording_url` in der Payload einschließen
* **Custom variables**: Benutzerdefinierte Variablen definieren, die die KI aus der Konversation extrahieren soll

## Wichtige Hinweise

* Die Felder `customer_phone` und `assistant_phone` können `null` sein, wenn die Information nicht verfügbar ist
* Das Feld `recording_url` ist nur enthalten, wenn Sie "Include recording in webhook" in Ihren [Assistenteneinstellungen](/ai-assistants/settings/post-call-actions#webhook-configuration) aktiviert haben
* Das Objekt `lead` ist nur bei Anrufen enthalten, die Teil einer Kampagne sind
* Das Objekt `extracted_variables` enthält die Variablen, die Sie in der Post-Call-Schema-Konfiguration Ihres Assistenten definiert haben
