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

# whatsapp.user.preferences

> Происходит, когда пользователь WhatsApp отключает маркетинговые сообщения или возобновляет их получение.

Используйте `whatsapp.user.preferences` для обработки этого события на вашей конечной точке Webhook.

## Триггеры

Происходит, когда пользователь WhatsApp отключает маркетинговые сообщения или возобновляет их получение.

Подпишитесь на `whatsapp.user.preferences`, когда будете [настраивать конечную точку Webhook](https://docs.ycloud.com/ru/api-reference/guides/api-fundamentals/configure-webhooks.md).

## Синтаксис

YCloud отправляет HTTP-запрос `POST` на настроенный вами URL-адрес Webhook. Ниже показан один из вариантов полезной нагрузки. Значения в угловых скобках являются плейсхолдерами; их типы перечислены в разделе **Параметры**. Необязательные поля и другие варианты описаны ниже.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "<ID>",
  "type": "whatsapp.user.preferences",
  "apiVersion": "<API_VERSION>",
  "createTime": "<CREATE_TIME>",
  "whatsappUserPreference": {
    "wabaId": "<WABA_ID>",
    "businessPhoneNumber": "<BUSINESS_PHONE_NUMBER>",
    "businessPhoneId": "<BUSINESS_PHONE_ID>",
    "contactName": "<CONTACT_NAME>",
    "contactPhoneNumber": "<CONTACT_PHONE_NUMBER>",
    "userId": "<USER_ID>",
    "parentUserId": "<PARENT_USER_ID>",
    "detail": "<DETAIL>",
    "category": "<CATEGORY>",
    "value": "<VALUE>",
    "timestamp": "<TIMESTAMP>"
  }
}
```

## Параметры

Проверьте HTTP-заголовок `YCloud-Signature` перед обработкой тела JSON. См. раздел [проверка подписи](https://docs.ycloud.com/ru/api-reference/guides/api-fundamentals/configure-webhooks.md).

### Оболочка события

| Параметр | Тип | Обязательный | Описание |
| - | - | - | - |
| `id` | string | Да | Уникальный идентификатор события. Минимальная длина: `6`. Максимальная длина: `128`. |
| `type` | string | Да | Всегда `whatsapp.user.preferences`. |
| `apiVersion` | string | Да | Версия API, использованная для формирования этого события. |
| `createTime` | string (date-time) | Да | Время создания события в формате [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). Например, `2022-06-01T12:00:00.000Z`. |

### Полезная нагрузка события

| Параметр | Тип | Обязательный | Описание |
| - | - | - | - |
| `whatsappUserPreference` | object | Нет | Специфичная для события полезная нагрузка `whatsappUserPreference`. |

Четыре общих поля оболочки обязательны. Поля полезной нагрузки зависят от варианта события. В каждой таблице объектов статус **Обязательный** применяется, если присутствует родительский объект. Необязательные поля могут быть опущены; наличие поля в примере не делает его обязательным.

#### whatsappUserPreference

| Параметр | Тип | Обязательный | Описание |
| - | - | - | - |
| `wabaId` | string | Нет | Идентификатор WhatsApp Business Account. |
| `businessPhoneNumber` | string | Нет | Номер телефона в формате [E.164](https://en.wikipedia.org/wiki/E.164). |
| `businessPhoneId` | string | Нет | Идентификатор номера телефона. |
| `contactName` | string | Нет | Имя пользователя WhatsApp. |
| `contactPhoneNumber` | string | Нет | Номер телефона пользователя WhatsApp. Номер телефона в формате [E.164](https://en.wikipedia.org/wiki/E.164). |
| `userId` | string | Нет | Идентификатор пользователя WhatsApp в рамках компании (BSUID). |
| `parentUserId` | string | Нет | Родительский идентификатор пользователя WhatsApp в рамках компании. Опускается, если родительские BSUID не включены. |
| `detail` | string | Нет | Описание предпочтений по маркетинговым сообщениям. |
| `category` | string | Нет | Категория предпочтений, переданная WhatsApp, например `marketing_messages`. |
| `value` | string | Нет | Предпочтение по маркетинговым сообщениям. |
| `timestamp` | string | Нет | Метка времени Unix, указывающая, когда сработал вебхук. |

## Пример

Следующий фрагмент JSON представляет собой тело запроса, доставляемое на ваш приемник. Идентификаторы, номера телефонов и другие значения учетной записи приведены для наглядности.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "evt_example_whatsapp_user_preferences",
  "type": "whatsapp.user.preferences",
  "apiVersion": "v2",
  "createTime": "2026-05-26T12:00:00.000Z",
  "whatsappUserPreference": {
    "wabaId": "whatsapp-business-account-id",
    "businessPhoneNumber": "+12025550123",
    "businessPhoneId": "1234567890123456",
    "contactName": "Example customer",
    "contactPhoneNumber": "+12025550124",
    "userId": "US.13491208655302741918",
    "parentUserId": "US.ENT.11815799212886844830",
    "detail": "User requested to stop marketing messages",
    "category": "marketing_messages",
    "value": "stop",
    "timestamp": "1779796800000"
  }
}
```

После проверки подписи и надежного сохранения события верните ответ `2xx`. Длительные операции выполняйте асинхронно.

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
HTTP/1.1 200 OK
```

Пошаговые сценарии см. в разделе [примеры с пояснениями](https://docs.ycloud.com/ru/api-reference/guides/examples/webhook-examples/whatsapp-inbound-message-webhook-examples).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.