imbot.v2.Bot.update
Обновить бота
Описание
Метод imbot.v2.Bot.update обновляет свойства бота.
Параметры
botId
integer
обязательный
ID бота
botToken
string
необязательный
Уникальный токен авторизации бота. Обязателен при авторизации через вебхук, не нужен для OAuth.
Передавайте тот же botToken, который был указан при регистрации чат-бота
fields
object
обязательный
Обновляемые поля. Структура объекта описана ниже
Параметр fields
properties
object
необязательный
Свойства профиля бота. Описание параметров — ниже
isHidden
boolean
необязательный
Скрытый бот. Допустимые значения: true, false
isReactionsEnabled
boolean
необязательный
Поддержка реакций. Допустимые значения: true, false
isSupportOpenline
boolean
необязательный
Поддержка Открытых линий. Допустимые значения: true, false
backgroundId
string
необязательный
Фон чата бота. Передайте null для сброса на фон пользователя. Доступные значения — в таблице фонов. Невалидное значение нормализуется в null
eventMode
string
необязательный
Режим доставки событий: fetch или webhook
webhookUrl
string
необязательный
URL обработчика событий (применяется при eventMode = webhook)
botToken
string
необязательный
Новый botToken для ротации токена бота. Авторизация запроса выполняется старым токеном, переданным на верхнем уровне в параметре botToken. Пустая строка или строка из пробелов игнорируется. Максимальная длина — 40 символов.
Подробнее — в разделе Ротация botToken
Параметр properties
name
string
необязательный
Имя бота
lastName
string
необязательный
Фамилия бота
workPosition
string
необязательный
Должность бота (отображается в профиле)
color
string
необязательный
Цвет аватара, доступные цвета.
Если указан некорректно — игнорируется
gender
string
необязательный
Пол. Допустимые значения: M, F
avatar
file
необязательный
Аватар. Передавайте строку Base64 без префикса data:*/*;base64,.
Как подготовить данные: Как загружать файлы
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"botId":456,"botToken":"my_bot_token","fields":{"properties":{"name":"Updated Bot"},"isHidden":true}}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/imbot.v2.Bot.update
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"botId":456,"fields":{"properties":{"name":"Updated Bot"},"isHidden":true},"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/imbot.v2.Bot.update
try {
const response = await $b24.callMethod('imbot.v2.Bot.update', {
botId: 456,
fields: {
properties: { name: 'Updated Bot' },
isHidden: true,
},
});
const { result } = response.getData();
console.log('result:', result);
} catch (error) {
console.error('Error:', error);
}
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.imbot.v2.bot.update(
bot_id=456,
fields={
"properties": {
"name": "Updated Bot",
},
"isHidden": True,
},
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'imbot.v2.Bot.update',
[
'botId' => 456,
'fields' => [
'properties' => ['name' => 'Updated Bot'],
'isHidden' => true,
],
]
);
$result = $response
->getResponseData()
->getResult();
echo 'result: '. print_r($result, true);
} catch (Throwable $exception) {
error_log($exception->getMessage());
echo 'Error: '. $exception->getMessage();
}
BX24.callMethod(
'imbot.v2.Bot.update',
{
botId: 456,
fields: {
properties: { name: 'Updated Bot' },
isHidden: true,
},
},
function(result) {
if (result.error()) {
console.error(result.error().ex);
} else {
console.log(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'imbot.v2.Bot.update',
[
'botId' => 456,
'fields' => [
'properties' => ['name' => 'Updated Bot'],
'isHidden' => true,
],
]
);
if (!empty($result['error'])) {
echo 'Error: '. $result['error_description'];
} else {
echo 'Success';
}
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "imbot.v2.Bot.update", b24.Params{
"botId": 456,
"botToken": "my_bot_token",
"fields": b24.Params{
"properties": b24.Params{
"name": "Updated Bot",
},
"isHidden": true,
},
})
if err != nil {
return fmt.Errorf("imbot.v2.Bot.update: %w", err)
}
// Форма ответа показана ниже на этой странице.
fmt.Printf("%s\n", res.Result)
Ответ
HTTP-статус: 200
{
"result": {
"bot": {
"id": 456,
"code": "support_bot",
"type": "bot",
"isHidden": true,
"isSupportOpenline": false,
"isReactionsEnabled": true,
"backgroundId": null,
"language": "ru",
"moduleId": "rest",
"eventMode": "fetch",
"countMessage": 150,
"countCommand": 3,
"countChat": 12,
"countUser": 45
},
"users": [
{
"id": 456,
"active": true,
"name": "Updated Bot",
"bot": true,
"type": "bot"
}
]
},
"time": {
"start": 1728626400.123,
"finish": 1728626400.234,
"duration": 0.111,
"processing": 0.045,
"date_start": "2024-10-11T10:00:00+03:00",
"date_finish": "2024-10-11T10:00:00+03:00"
}
}
Обработка ошибок
HTTP-статус: 400
{
"error": "BOT_NOT_FOUND",
"error_description": "Bot not found"
}
| Код | Описание | Значение |
|---|---|---|
BOT_TOKEN_NOT_SPECIFIED |
Bot token is not specified | Не указан botToken. Обязателен при авторизации через вебхук |
BOT_ID_REQUIRED |
Bot ID is required | Не указан botId |
BOT_NOT_FOUND |
Bot not found | Бот не найден |
BOT_OWNERSHIP_ERROR |
Bot is registered by another application | Бот зарегистрирован другим приложением |
BOT_INVALID_EVENT_MODE |
Invalid event mode | Невалидный режим доставки событий |
BOT_INVALID_CALLBACK |
Invalid callback URL | Невалидный URL обработчика |
BOT_AVATAR_INCORRECT_TYPE |
Avatar must be an image | Аватар должен быть изображением (image/*) |
BOT_AVATAR_INCORRECT_SIZE |
Avatar exceeds maximum size | Размер аватара превышает максимум (5000×5000 px) |
BOT_TOKEN_ROTATION_FAILED |
Bot token rotation failed | Ротация botToken не выполнена. Обобщенный код ошибки — причина не раскрывается, чтобы не подтверждать существование чужих токенов |

