## Убрать условие из группы уведомлений

`DELETE /v1/notifications/groups/:groupId/conditions`

Убирает из группы, созданной пользователем, одно условие — пару модуля и события, названную в параметрах запроса.

## Параметры

| Параметр | Тип | Обяз. | Описание |
|----------|-----|:-----:|---------|
| `groupId` (path) | number | да | Идентификатор группы — значение `tag` группы с `isEditable: true` из [списка групп](/docs/notifications/groups/list), переданное числом |
| `module` (query) | string | да | Модуль условия, от 1 до 255 символов, передаётся один раз. Модули группы — ключи `conditions.moduleConditions` в [списке групп](/docs/notifications/groups/list) |
| `event` (query) | string | да | Событие условия, от 1 до 255 символов, передаётся один раз. События модуля — массив `events` под его ключом в `conditions.moduleConditions` |

## Примеры

### curl — личный ключ

```bash
curl -X DELETE "https://vibecode.bitrix24.tech/v1/notifications/groups/12/conditions?module=calendar&event=invite" \
  -H "X-Api-Key: YOUR_API_KEY"
```

### curl — OAuth-приложение

```bash
curl -X DELETE "https://vibecode.bitrix24.tech/v1/notifications/groups/12/conditions?module=calendar&event=invite" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"
```

### JavaScript — личный ключ

```javascript
const params = new URLSearchParams({ module: 'calendar', event: 'invite' })
const res = await fetch(`https://vibecode.bitrix24.tech/v1/notifications/groups/12/conditions?${params}`, {
  method: 'DELETE',
  headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})

const { success } = await res.json()
console.log('Условие убрано:', success)
```

### JavaScript — OAuth-приложение

```javascript
const params = new URLSearchParams({ module: 'calendar', event: 'invite' })
const res = await fetch(`https://vibecode.bitrix24.tech/v1/notifications/groups/12/conditions?${params}`, {
  method: 'DELETE',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { success } = await res.json()
console.log('Условие убрано:', success)
```

## Поля ответа

| Поле | Тип | Описание |
|------|-----|---------|
| `success` | boolean | Всегда `true` при успехе |
| `data.result` | boolean | Всегда `true`. Признак успеха — HTTP-код `200`, а не значение |

## Пример ответа

HTTP 200:

```json
{
  "success": true,
  "data": {
    "result": true
  }
}
```

## Пример ответа при ошибке

400 — не передано событие `event`:

```json
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "Query parameter `event` must be a non-empty string of up to 255 characters."
  }
}
```

## Ошибки

| HTTP | Код | Описание |
|------|-----|----------|
| 400 | `INVALID_PARAMS` | `groupId` не положительное целое число, в том числе метка системной группы вроде `mention` |
| 400 | `INVALID_PARAMS` | `module` или `event` не передан, пустой, длиннее 255 символов или передан дважды. Имя параметра — в `message` |
| 400 | `INVALID_PARAMS` | Передан другой параметр запроса или поле тела, либо тело не JSON-объект. Имя — в `message` |
| 404 | `ENTITY_NOT_FOUND` | Группы нет — удалена или принадлежит другому пользователю. Код портала `GROUP_NOT_FOUND` — в поле `error.b24Code`. На портале с языком интерфейса, отличным от русского и английского, тот же отказ приходит как `422 BITRIX_ERROR` — ориентируйтесь на `error.b24Code` |
| 422 | `BITRIX_ERROR` | Битрикс24 отклонил удаление, код портала — в поле `error.b24Code` |
| 403 | `SCOPE_DENIED` | У ключа нет скоупа `im` |
| 403 | `WRITE_BLOCKED_READONLY_KEY` | Ключ в режиме «только чтение» |
| 401 | `TOKEN_MISSING` | У ключа нет настроенных токенов |

Полный список общих ошибок API — [Ошибки](/docs/errors).

## Известные особенности

- Удаление последнего условия удаляет и саму группу: она пропадает из [списка групп](/docs/notifications/groups/list). Чтобы заменить единственное условие группы, сначала [добавьте новое](/docs/notifications/groups/conditions-create), затем уберите старое.
- Запрос с парой модуля и события, которой в группе нет, тоже отвечает `200` с `data.result: true`. Такой ответ не подтверждает, что условие было в группе, — сверяйтесь со списком групп.

## Смотрите также

- [Группы уведомлений](/docs/notifications/groups)
- [Добавить условие в группу уведомлений](/docs/notifications/groups/conditions-create)
- [Удалить группу уведомлений](/docs/notifications/groups/delete)
- [Список групп уведомлений](/docs/notifications/groups/list)
