Блог Горошко Андрея Bitrix24,PHP Делегировать задание бизнес-процесса bizproc.task.delegate

Делегировать задание бизнес-процесса bizproc.task.delegate

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Делегировать задание бизнес-процесса bizproc.task.delegate», разберем архитектурные особенности и предоставим готовые к интеграции примеры кода.

Делегировать задание бизнес-процесса bizproc.task.delegate

> Scope: bizproc
>
> Кто может выполнять метод: любой пользователь, ответственный за задание бизнес-процесса

Метод делегирует задание бизнес-процесса. Делегировать можно только свое задание.

Параметры метода

Название
тип
Описание
TASK_IDS
array
Список идентификаторов заданий.

Получить идентификаторы можно методом bizproc.task.list

FROM_USER_ID
integer
Идентификатор пользователя, от которого задачи будут делегированы.

Получить идентификатор пользователя можно методом user.get

TO_USER_ID*
integer
Идентификатор пользователя, которому задачи будут делегированы.

Получить идентификатор пользователя можно методом user.get.

Кому можно делегировать, зависит от настроек задания: только подчиненным, всем сотрудникам или никому.

Примеры кода

  • cURL (Webhook)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"TASK_IDS":[1128,1129,1130],"FROM_USER_ID":15,"TO_USER_ID":37}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/bizproc.task.delegate
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"TASK_IDS":[1128,1129,1130],"FROM_USER_ID":15,"TO_USER_ID":37,"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/bizproc.task.delegate
  • JS
    try
    {
        const response = await $b24.callMethod(
            'bizproc.task.delegate',
            {
                TASK_IDS: [1128, 1129, 1130],
                FROM_USER_ID: 15,
                TO_USER_ID: 37,
            }
        );
        
        const result = response.getData().result;
        console.log('Delegated tasks:', result);
        
        processResult(result);
    }
    catch( error )
    {
        console.error('Error:', error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'bizproc.task.delegate',
                [
                    'TASK_IDS' => [1128, 1129, 1130],
                    'FROM_USER_ID' => 15,
                    'TO_USER_ID' => 37,
                ]
            );

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

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

    } catch (Throwable $e) {
        error_log($e->getMessage());
        echo 'Error delegating task: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        'bizproc.task.delegate',
        {
            'TASK_IDS': [1128, 1129, 1130],
            'FROM_USER_ID': 15,
            'TO_USER_ID': 37,
        },
        function(result)
        {
            if(result.error())
                alert("Error: " + result.error());
            else
                console.log(result.data());
        }
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'bizproc.task.delegate',
        [
            'TASK_IDS' => [1128, 1129, 1130],
            'FROM_USER_ID' => 15,
            'TO_USER_ID' => 37
        ]
    );

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

Обработка ответа

HTTP-статус: 200

{
    "result": true,
    "time": {
        "start": 1748526089.625516,
        "finish": 1748526089.656787,
        "duration": 0.03127098083496094,
        "processing": 0.008746147155761719,
        "date_start": "2025-05-29T16:41:29+03:00",
        "date_finish": "2025-05-29T16:41:29+03:00",
        "operating_reset_at": 1748526689,
        "operating": 0
    }
}

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

Название
тип
Описание
result
boolean
Возвращает true, если задание делегировано успешно
time
time
Информация о времени выполнения запроса

Обработка ошибок

HTTP-статус: 400

{
    "error": "ERROR_INVALID_USER_ID",
    "error_description": "Invalid FROM_USER_ID"
}

Возможные коды ошибок

КодСообщение об ошибкеОписание
ERROR_TASK_VALIDATIONInvalid TASK_IDSНекорректные идентификаторы задач или не передан параметр TASK_IDS
ERROR_INVALID_USER_IDInvalid FROM_USER_IDНекорректный или отсутствующий идентификатор пользователя, от которого идет делегирование
ERROR_INVALID_USER_IDInvalid TO_USER_IDНекорректный или отсутствующий идентификатор пользователя, которому идет делегирование
ERROR_DELEGATION_NOT_ALLOWEDПользователь не является ответственным за заданиеПользователь, указанный в параметре FROM_USER_ID не является ответственным за задание
ERROR_DELEGATION_NOT_ALLOWEDДелегирование заданий доступно только для интранет-пользователейПользователь, указанный в параметре TO_USER_ID, не является интранет-пользователем
ERROR_DELEGATION_NOT_ALLOWEDПеречисление ошибок через символ ;В методе можно передать несколько заданий. Если возникнут ошибки в нескольких заданиях, они вернуться перечислением через символ ;
  • [](./index)
  • [](./bizproc-task-list)
  • [](./bizproc-task-complete)

💡 Экспертное мнение и рекомендации

Ключевые выводы по теме «Делегировать задание бизнес-процесса bizproc.task.delegate»:

Использование современных стандартов D7 при работе с bizproc.task.delegate позволяет писать чистый, масштабируемый и безопасный код. Не забывайте обрабатывать исключения (try/catch) и проверять права доступа текущего пользователя перед выполнением критических операций.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Пункт редактирования блока LANDING_BLOCKПункт редактирования блока LANDING_BLOCK

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Пункт редактирования блока LANDING_BLOCK», проанализируем лучшие практики и

Создание оптового портала для дистрибьюторов медицинских расходных материаловСоздание оптового портала для дистрибьюторов медицинских расходных материалов

Разработка и внедрение профессионального B2B-портала и дилерского кабинета на 1С-Битрикс позволяет кардинально сократить издержки отдела оптовых продаж, перевести дилеров на самообслуживание 24/7 и исключить ошибки ручного ввода заказов. Услуга «Создание

Создание личного кабинета подрядчика для строительного холдинга с актами КС-2 и КС-3Создание личного кабинета подрядчика для строительного холдинга с актами КС-2 и КС-3

Разработка и внедрение профессионального B2B-портала и дилерского кабинета на 1С-Битрикс позволяет кардинально сократить издержки отдела оптовых продаж, перевести дилеров на самообслуживание 24/7 и исключить ошибки ручного ввода заказов. Услуга «Создание