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

# Синхронізація даних через вебхук

> Отримайте назад у свою систему все, що агент дізнався за дзвінок, одразу після його завершення.

Попередня сторінка описувала передавання даних у дзвінок через API Trigger і `initial_context`. Тепер про зворотний бік: як платформа надсилає те, що дізналась, назад у вашу систему після завершення дзвінка.

Ці видобуті дані живуть у `gathered_context`. Тож повна картина: `initial_context` — це те, що ваш бекенд надсилає в дзвінок, `gathered_context` — це те, що платформа видобуває з нього. Вузол **Webhook** — це спосіб отримати `gathered_context` назад.

## Крок 1: Додайте вузол

Натисніть **Додати вузол**, прокрутіть униз — знайдете вузол **Webhook**. Додайте його й відкрийте.

## Крок 2: Задайте ендпоінт

Перше, що побачите — URL ендпоінта. Вставте сюди URL вебхука вашого бекенду. Ще тестуєте? Використайте безкоштовний URL з [webhook.site](https://webhook.site), скопіюйте свій унікальний URL і вставте в платформу.

Встановіть метод **POST**. Якщо бекенду потрібна автентифікація, додайте bearer-токен чи API-ключ тут же.

## Крок 3: Побудуйте шаблон тіла запиту

Це найважливіша частина — вона визначає, який саме JSON надсилає платформа. Включіть обидва типи контексту: поля `initial_context` (наприклад, імʼя, сума боргу) і поля `gathered_context` (наприклад, сума до сплати, спосіб оплати, тональність розмови).

```json theme={null}
{
  "name": "{{initial_context.name}}",
  "debt_words": "{{initial_context.debt_words}}",
  "amount_user_will_pay": "{{gathered_context.amount_user_will_pay}}",
  "payment_method": "{{gathered_context.payment_method}}",
  "sentiment": "{{gathered_context.sentiment}}"
}
```

<Warning>
  Назви змінних у шаблоні тіла мають точно збігатися з назвами полів контексту. Якщо змінну неможливо визначити, поле лишається в тілі запиту з порожнім значенням.
</Warning>

## Крок 4: Збережіть і опублікуйте

Збережіть вузол вебхука, потім опублікуйте агента.

## Крок 5: Перевірте

Запустіть тестовий дзвінок. Коли він завершиться, поверніться до вашого приймача вебхуків. Побачите один запит з `initial_context` (те, що ви передали в дзвінок) і `gathered_context` (те, що платформа видобула з розмови) в одному JSON.

Це повний цикл: ваш бекенд надсилає `initial_context` у платформу, платформа проводить дзвінок і видобуває `gathered_context`, а вузол вебхука надсилає фінальні структуровані дані назад у ваш бекенд. Для продакшну замініть URL з webhook.site на реальний URL вашого бекенду.

## Далі

* **Підключіть реальний номер телефону**: [Підключення телефонії](/getting-started/connect-telephony) — про підключення Twilio, щоб ці дзвінки йшли по-справжньому.
* **Повний перелік змінних і варіантів автентифікації**: див. [довідник Webhook](/voice-agent/webhook) і [довідник для розробників з Webhook Payloads](/developer/webhooks).
