# imbot.command.register

URL: https://chugunov.pro/api-bitrix24/chat-bots/outdated/commands/imbot-command-register/
Проверено на Битрикс24 REST API, обновлено 11.09.2026 (ревизия источника fb39d6c).
Источник: официальная документация Битрикс24 (bitrix-tools/b24-rest-docs, лицензия MIT, © Bitrix). Справочник независимый, официальной документацией не является.

Добавить команду
Scope: `imbot`
Кто может выполнять метод: пользователь приложения, которое зарегистрировало чат-бота

> Устаревший метод. Развитие метода остановлено. Используйте imbot.v2.Command.register.

## Описание

Метод `imbot.command.register` регистрирует команду для чат-бота.

## Параметры

- `BOT_ID` `integer` — обязательный. Идентификатор чат-бота. Получить идентификатор бота можно с помощью метода [imbot.bot.list](https://chugunov.pro/api-bitrix24/chat-bots/outdated/bots/imbot-bot-list/)
- `COMMAND` `string` — обязательный. Текст команды, которую пользователь вводит в чате. Можно использовать латинские буквы и цифры без пробелов и специальных символов
- `EVENT_COMMAND_ADD` `string` — обязательный. URL обработчика события [ONIMCOMMANDADD](https://chugunov.pro/api-bitrix24/chat-bots/outdated/commands/events/on-im-command-add/), который вызывается при использовании команды
- `LANG` `array` — обязательный. Массив локализаций команды. Структура описана [ниже](#lang)
- `COMMON` `string` — необязательный. Доступность команды:
  - `Y` - команда доступна в любых чатах
  - `N` - команда доступна только там, где есть бот
  По умолчанию - `N`
- `HIDDEN` `string` — необязательный. Видимость команды:
  - `Y` - скрытая команда
  - `N` - видимая команда
  По умолчанию - `N`
- `EXTRANET_SUPPORT` `string` — необязательный. Доступность команды пользователям экстранета:
  - `Y` - доступна
  - `N` - недоступна
  По умолчанию - `N`
- `CLIENT_ID` `string` — необязательный. Параметр обязателен только для вебхуков. Передавайте тот же CLIENT_ID, который был указан при регистрации чат-бота

### Параметр LANG

- `LANGUAGE_ID` `string` — обязательный. Идентификатор языка, например `ru` или `en`
- `TITLE` `string` — обязательный. Название команды на выбранном языке
- `PARAMS` `string` — необязательный. Подсказка по параметрам команды на выбранном языке

## Ответ

HTTP-статус: 200

```json
{
    "result": 99,
    "time": {
        "start": 1772088116,
        "finish": 1772088116.785232,
        "duration": 0.7852320671081543,
        "processing": 0,
        "date_start": "2026-02-26T09:41:56+03:00",
        "date_finish": "2026-02-26T09:41:56+03:00",
        "operating_reset_at": 1772088716,
        "operating": 0.49926185607910156
    }
}
```

### Возвращаемые данные

- `result` `integer`. Идентификатор зарегистрированной команды
- `time` `time`. Информация о времени выполнения запроса

## Ошибки

HTTP-статус: 400

```json
{
    "error": "COMMAND_ERROR",
    "error_description": "Command isn't specified"
}
```

- `EVENT_COMMAND_ADD_ERROR` — Handler for "Command add" event isn't specified. Не передан параметр `EVENT_COMMAND_ADD`
- `EVENT_COMMAND_ADD_ERROR` — Wrong handler URL. Передан невалидный URL обработчика события добавления команды
- `COMMAND_ERROR` — Command isn't specified. Не указан текст команды
- `BOT_ID_ERROR` — Bot not found. Чат-бот не найден
- `APP_ID_ERROR` — Bot was installed by another rest application. Чат-бот зарегистрирован другим приложением
- `LANG_ERROR` — Lang set can't be empty. Не передан массив локализаций `LANG`
- `WRONG_REQUEST` — Command can't be created. Не удалось зарегистрировать команду

## Примеры запроса

### cURL (Webhook)

```bash
curl -X POST /
-H "Content-Type: application/json" /
-H "Accept: application/json" /
-d '{"BOT_ID":1291,"COMMAND":"echo","EVENT_COMMAND_ADD":"https://example.com/bot/command.php","LANG":[{"LANGUAGE_ID":"ru","TITLE":"Эхо","PARAMS":"текст"},{"LANGUAGE_ID":"en","TITLE":"Echo","PARAMS":"text"}],"COMMON":"Y","HIDDEN":"N","EXTRANET_SUPPORT":"N","CLIENT_ID":"**put_your_client_id_here**"}' /
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/imbot.command.register
```

### cURL (OAuth)

```bash
curl -X POST /
-H "Content-Type: application/json" /
-H "Accept: application/json" /
-d '{"BOT_ID":1291,"COMMAND":"echo","EVENT_COMMAND_ADD":"https://example.com/bot/command.php","LANG":[{"LANGUAGE_ID":"ru","TITLE":"Эхо","PARAMS":"текст"},{"LANGUAGE_ID":"en","TITLE":"Echo","PARAMS":"text"}],"COMMON":"Y","HIDDEN":"N","EXTRANET_SUPPORT":"N","auth":"**put_access_token_here**"}' /
https://**put_your_bitrix24_address**/rest/imbot.command.register
```

### JS

```js
try
{
    const response = await $b24.callMethod(
        'imbot.command.register',
        {
            BOT_ID: 1291,
            COMMAND: 'echo',
            EVENT_COMMAND_ADD: 'https://example.com/bot/command.php',
            LANG: [
                { LANGUAGE_ID: 'ru', TITLE: 'Эхо', PARAMS: 'текст' },
                { LANGUAGE_ID: 'en', TITLE: 'Echo', PARAMS: 'text' }
            ],
            COMMON: 'Y',
            HIDDEN: 'N',
            EXTRANET_SUPPORT: 'N'
        }
    );
    
    const result = response.getData().result;
    console.log('Created element with ID:', result);
    processResult(result);
}
catch( error )
{
    console.error('Error:', error);
}
```

### PHP

```php
try {
    $response = $b24Service
        ->core
        ->call(
            'imbot.command.register',
            [
                'BOT_ID' => 1291,
                'COMMAND' => 'echo',
                'EVENT_COMMAND_ADD' => 'https://example.com/bot/command.php',
                'LANG' => [
                    ['LANGUAGE_ID' => 'ru', 'TITLE' => 'Эхо', 'PARAMS' => 'текст'],
                    ['LANGUAGE_ID' => 'en', 'TITLE' => 'Echo', 'PARAMS' => 'text']
                ],
                'COMMON' => 'Y',
                'HIDDEN' => 'N',
                'EXTRANET_SUPPORT' => 'N'
            ]
        );

    $result = $response
        ->getResponseData()
        ->getResult();

    echo 'Success: ' . print_r($result, true);
    processData($result);

} catch (Throwable $e) {
    error_log($e->getMessage());
    echo 'Error adding product row: ' . $e->getMessage();
}
```

### BX24.js

```js
BX24.callMethod(
    'imbot.command.register',
    {
        BOT_ID: 1291,
        COMMAND: 'echo',
        EVENT_COMMAND_ADD: 'https://example.com/bot/command.php',
        LANG: [
            { LANGUAGE_ID: 'ru', TITLE: 'Эхо', PARAMS: 'текст' },
            { LANGUAGE_ID: 'en', TITLE: 'Echo', PARAMS: 'text' }
        ],
        COMMON: 'Y',
        HIDDEN: 'N',
        EXTRANET_SUPPORT: 'N'
    },
    function(result)
    {
        if (result.error())
            console.error(result.error());
        else
            console.dir(result.data());
    }
);
```

### PHP CRest

```php
require_once('crest.php');

$result = CRest::call(
    'imbot.command.register',
    [
        'BOT_ID' => 1291,
        'COMMAND' => 'echo',
        'EVENT_COMMAND_ADD' => 'https://example.com/bot/command.php',
        'LANG' => [
            ['LANGUAGE_ID' => 'ru', 'TITLE' => 'Эхо', 'PARAMS' => 'текст'],
            ['LANGUAGE_ID' => 'en', 'TITLE' => 'Echo', 'PARAMS' => 'text']
        ],
        'COMMON' => 'Y',
        'HIDDEN' => 'N',
        'EXTRANET_SUPPORT' => 'N'
    ]
);

echo '<PRE>';
print_r($result);
echo '</PRE>';
```

### Go

```go
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "imbot.command.register", b24.Params{
	"BOT_ID":            1291,
	"COMMAND":           "echo",
	"EVENT_COMMAND_ADD": "https://example.com/bot/command.php",
	"LANG": []b24.Params{
		{
			"LANGUAGE_ID": "ru",
			"TITLE":       "Эхо",
			"PARAMS":      "текст",
		},
		{
			"LANGUAGE_ID": "en",
			"TITLE":       "Echo",
			"PARAMS":      "text",
		},
	},
	"COMMON":           "Y",
	"HIDDEN":           "N",
	"EXTRANET_SUPPORT": "N",
	"CLIENT_ID":        "**put_your_client_id_here**",
})
if err != nil {
	return fmt.Errorf("imbot.command.register: %w", err)
}

var value b24.ID
if err := json.Unmarshal(res.Result, &value); err != nil {
	return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("результат:", value)
```

Оригинал в официальной документации: https://apidocs.bitrix24.ru/api-reference/chat-bots/outdated/commands/imbot-command-register.html
