> For the complete documentation index, see [llms.txt](https://help.sipgate.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.sipgate.com/documentation/en/connections-and-integrations/datenabruf-bei-anrufbeginn.md).

# Data retrieval at call start

### When does this make sense?

Data retrieval at call start is suitable for content that changes frequently or varies from call to call. Typical use cases:

* **Check current availability** (e.g. open appointments, stock levels)
* **CRM data** or load customer history
* **Daily-updated instructions** (e.g. special opening hours, promotions)
* **Past interactions** make available to the caller

{% hint style="info" %}
**Note:** The initial data retrieval is intended for specific information about the current call. It does not replace a general knowledge base and is not suitable for extensive content such as PDFs, websites, or documentation. For permanent agent knowledge, use the file upload in the **Knowledge**.
{% endhint %}

### Requirements

* A URL that is accessible via HTTP or HTTPS (HTTPS recommended).
* The endpoint should respond quickly; retrieval takes place at call start.
* The response is embedded as text in the conversation context. Ideally, return well-structured, compact content.

{% hint style="warning" %}
**Important:** Do not use a publicly accessible URL — otherwise third parties could retrieve the transmitted caller data.
{% endhint %}

### How to set up data retrieval

{% stepper %}
{% step %}
**Open the configuration of your AI Agent**
{% endstep %}

{% step %}
**Go to the “Integrations” menu item**
{% endstep %}

{% step %}
**Find the “Data retrieval at call start” section and click the gear icon**
{% endstep %}

{% step %}
**Enter the desired URL in the “Configure data retrieval” dialog.**

Optionally, you can also enable “Force retrieval” so that the retrieval must succeed for the call to take place at all
{% endstep %}

{% step %}
**Click “Save”**
{% endstep %}
{% endstepper %}

The configured URL will then appear directly in the user interface. The content will be automatically retrieved on the next incoming call.

### Which return formats does the agent support?

The agent can only process information from third-party applications if it is returned in a readable text format. The agent cannot directly read PDF files, websites, or other file formats.

**Supported:** Plain text, Markdown, JSON

The desired return format must be specified in the request to the third-party application. The connected server must return the response in this format and set the appropriate [`Content-Type`-header ](ttps://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Content-Type)set.

Examples:

* Plain text: `Content-Type: text/plain`
* Markdown: `Content-Type: text/markdown`
* JSON: `Content-Type: application/json`

### Which parameters are passed to the server?

During the initial data retrieval, the agent can pass information to the connected server so that suitable data about the current call or previous conversations can be found there.

The following parameters are passed:

```json
{
  "callerNumber": "+4915XXXXXXXXX",
  "destinationNumber": "4930xxxxxxx",
  "sessionId": "pbx-<RANDOM_UUID>",
  "assistantId": "<ASSISTANT_ID>"
}
```

**`callerNumber`**\
The phone number of the calling person.

**`destinationNumber`**\
The phone number that the agent was called on. If multiple phone numbers are assigned to the agent, only the number of the current call is still passed.

**`sessionId`**\
The unique ID of the current call. This ID allows the server to clearly assign the data retrieval to a specific conversation. The `sessionId` can also be used for live connections. This allows the server to recognize the same call across multiple queries, for example between the initial data retrieval and later live queries during the call.

**`assistantId`**\
The internal ID of the agent. This ID is uniquely assigned to an agent and helps the server distinguish between multiple agents.

The connected server must be able to process these parameters and provide the appropriate information in the supported return format.

### Option: “Force retrieval”

With the checkbox **Force retrieval** you decide how strictly the agent should handle errors with this retrieval:

* **Disabled** (default): If the URL is not reachable, the call is still connected — just without the dynamic context.
* **Enabled:** If the URL is not reachable, the call is rejected. Only choose this option if the context is essential for the call (e.g. if no meaningful conversation is possible without CRM data).

### Remove data retrieval again

If data retrieval should no longer take place:

1. Open the configuration dialog again via the gear icon.
2. Click **Delete data retrieval**.
3. Confirm in the following dialog with **Delete permanently**.

After that, the section will again show the status **Inactive**. No more data retrieval will take place for future calls.

### Frequently asked questions

<details>

<summary><strong>How long may the endpoint take to respond?</strong></summary>

As short as possible. Data retrieval occurs synchronously at the start of the call. Long response times can therefore delay the start of the conversation.

Retrieval starts while the phone is still ringing and usually takes 2–5 seconds. If no data is available after 5 seconds, the agent continues the conversation without this information.

**What happens if the 5 seconds are exceeded?**

If the endpoint does not respond within 5 seconds, the data retrieval is aborted. The agent then starts the conversation without the requested information. This can happen, for example, if the connected third-party application responds slowly. The transcript does not note whether the data retrieval failed.

</details>

<details>

<summary><strong>What happens if I change the URL?</strong></summary>

The new URL will be automatically retrieved on the next incoming call. There is no cache that needs to be cleared beforehand.

</details>

<details>

<summary><strong>Does this work with any URLs?</strong></summary>

The URL must be accessible via HTTP or HTTPS and contain a valid top-level domain. Entries without a protocol such as `my-company.de` are automatically supplemented with `https://` .

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.com/documentation/en/connections-and-integrations/datenabruf-bei-anrufbeginn.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.
