# How can I set up CI webhooks for sipgate Conversational Intelligence?

With CI webhooks, conversation data from sipgate calls can be automatically transferred to external systems such as a CRM. This makes it possible to integrate call logs, summaries, and classifications directly into existing processes.

#### Requirements

* You have a destination URL to which the data should be sent.
* Your system is able to process HTTP POST requests with JSON payload and Transfer-Encoding: chunked.
* The webhooks only work for shared channels. Calls made over a private channel do not trigger CI webhooks.

#### Typical use cases

* CRM integration: Automatic transfer of call notes to customer records.
* Support systems: Creating tickets after incoming calls.
* Analytics: Forwarding classifications to a reporting tool.

#### Store webhook destinations

1. Log in as an admin.
2. Open the Conversion Intelligence section.
3. Go to CI Webhooks in that section
4. Enter the desired webhook URL.

#### How it works

* After a call ends, sipgate sends the call data via HTTP POST to the stored webhook URL.
* The data is transmitted as a JSON payload.
* Your system can then store or further process this payload (e.g. in the CRM, ticket system, or internal databases).

Example:\
A call ends ➔ a call log is created ➔ data is automatically forwarded to your database ➔ your team has the information available immediately.

Example payload:

```
{
  "version": "1",
  "call": {
    "id": "pbx-a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "from": "4921163553400",
    "to": "4921163553401",
    "startTime": "2026-04-08T09:22:41.663Z",
    "endTime": "2026-04-08T09:24:04.329Z",
    "duration": 82666,
    "direction": "IN",
    "users": [
      {
        "userId": "w0",
        "accountId": "1234567",
        "fullUserId": "1234567w0",
        "firstName": "Max",
        "lastName": "Mustermann",
        "fullName": "Max Mustermann"
      }
    ],
    "channel": {
      "id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
      "name": "Support Channel"
    }
  },
  "assist": {
    "provider": {
      "llm": "AZURE"
    },
    "transcription": {
      "content": "Caller: Good day, I'm calling about my contract. I received an invoice last week that was higher than expected.\nCallee: Good day, I'd be happy to take a look. Can you give me your customer number?\nCaller: Yes, it's 12345. Also, I'd like to know whether I can change my plan.\nCallee: I can see the invoice. The amount is correct because an additional package was booked. Of course, we can change your plan. I'll send you the options by email.",
      "chunks": [
        {
          "speaker": "CALLER",
          "startTime": 3200,
          "endTime": 12400,
          "content": "Good day, I'm calling about my contract. I received an invoice last week that was higher than expected."
        },
        {
          "speaker": "CALLEE",
          "startTime": 13100,
          "endTime": 18900,
          "content": "Good day, I'd be happy to take a look. Can you give me your customer number?"
        },
        {
          "speaker": "CALLER",
          "startTime": 19500,
          "endTime": 26300,
          "content": "Yes, it's 12345. Also, I'd like to know whether I can change my plan."
        },
        {
          "speaker": "CALLEE",
          "startTime": 27000,
          "endTime": 40100,
          "content": "I can see the invoice. The amount is correct because an additional package was booked. Of course, we can change your plan. I'll send you the options by email."
        }
      ]
    },
    "callScenarios": null,
    "callHeadline": {
      "content": "Invoice inquiry and plan change"
    },
    "summary": {
      "content": "The customer called about an unexpectedly high invoice. The amount was correct because an additional package was active. In addition, a plan change was discussed; the options will be sent by email.",
      "keyPoints": [
        "The invoice was correct — the increased amount resulted from a booked additional package.",
        "The customer wants to change their plan.",
        "The available plan options will be sent by email."
      ],
      "topics": [
        "Invoice",
        "Additional package",
        "Plan change"
      ]
    },
    "actionItems": [
      {
        "content": "Send plan options to the customer by email."
      },
      {
        "content": "Review the additional package and cancel it if necessary."
      }
    ],
    "smallTalkItems": [
      {
        "topic": "Greeting",
        "description": "Both participants greeted each other at the beginning of the conversation."
      }
    ]
  }
}
```

#### Security

To ensure that only requests from sipgate are forwarded to your webhook integration, check the source IP address of the incoming requests. To do this, add the following IP address to your allow list:\
217.116.118.254


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.sipgate.de/cloud-telefonanlage/en/using-sipgate/sipgate-ai-agents/wie-kann-ich-webhooks-fuer-sipgate-ai-agents-einrichten.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
