#Обновить бота

PATCH /v1/bots/:botId

Обновляет свойства бота. Передавайте только те поля, которые хотите изменить.

Две формы body — обе валидны. Платформа принимает как плоскую запись (та же, что у POST /v1/bots), так и Bitrix24-нативную с обёрткой fields. При наличии fields в теле запрос пробрасывается в Bitrix24 как есть; иначе известные top-level поля автоматически разворачиваются в fields.properties.* / fields.*. Используйте ту, что удобнее — поведение идентично.

#Поля запроса (body)

Параметр (плоский) Параметр (B24-native) Тип Описание
name fields.properties.name string Новое имя бота
lastName fields.properties.lastName string Новая фамилия
workPosition fields.properties.workPosition string Новая должность
color fields.properties.color string Новый цвет аватара
gender fields.properties.gender string Пол: M или F
avatar fields.properties.avatar string URL нового аватара
eventMode fields.eventMode string Режим событий: fetch или webhook
webhookUrl fields.webhookUrl string URL для push-уведомлений
isHidden fields.isHidden boolean Скрыть из списка контактов
isReactionsEnabled fields.isReactionsEnabled boolean Разрешить реакции
backgroundId fields.backgroundId string Фон чата: azure, mint, steel, slate, teal, cornflower, sky, peach, frost

#Примеры

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

Terminal
curl -X PATCH https://vibecode.bitrix24.tech/v1/bots/42 \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "fields": {
      "properties": { "name": "Новое имя", "color": "MINT" },
      "eventMode": "fetch"
    }
  }'

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

Terminal
curl -X PATCH https://vibecode.bitrix24.tech/v1/bots/42 \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "fields": {
      "properties": { "name": "Новое имя", "color": "MINT" },
      "eventMode": "fetch"
    }
  }'

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/bots/42', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    fields: {
      properties: { name: 'Новое имя', color: 'MINT' },
      eventMode: 'fetch',
    },
  }),
})
const { data } = await res.json()

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/bots/42', {
  method: 'PATCH',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    fields: {
      properties: { name: 'Новое имя', color: 'MINT' },
      eventMode: 'fetch',
    },
  }),
})

#Поля ответа

Поле Тип Описание
data boolean true при успешном обновлении

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

JSON
{
  "success": true,
  "data": true
}

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

403 — бот принадлежит другому ключу:

JSON
{
  "success": false,
  "error": {
    "code": "BOT_ACCESS_DENIED",
    "message": "This bot belongs to a different API key"
  }
}

#Ошибки

HTTP Код Описание
400 INVALID_BOT_ID botId не является числом
404 BOT_NOT_FOUND Бот не найден
403 BOT_ACCESS_DENIED Бот принадлежит другому API-ключу
403 SCOPE_DENIED API-ключ не имеет скоупа imbot
401 TOKEN_MISSING API-ключ не имеет настроенных токенов

Полный список общих ошибок API — Ошибки.

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

Симметрия с POST. PATCH принимает как плоский body ({ name, eventMode, ... }), так и B24-нативный с обёрткой fields. POST использует плоский — PATCH теперь так же. Если в body есть ключ fields, платформа считает body B24-нативным и пробрасывает в Bitrix24 как есть (escape hatch для совместимости). Иначе — нормализует.

type нельзя изменить: поле type не принимается при обновлении.

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