Обновить задачу tasks.task.update

Scope: tasks

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

Метод tasks.task.update обновляет задачу.

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

Обязательные параметры отмечены *

Название
тип

Описание

id*
integer

Идентификатор задачи.

Идентификатор задачи можно получить при создании новой задачи или старым методом получения списка задач

fields*
object

Значения полей задачи для обновления.
Описание всех полей задачи

Примеры кода

Как использовать примеры в документации

Вызов нового api отличается добавлением параметра /api/ в запросе:

https://{адрес_установки}/rest/api/{id_пользователя}/{токен_вебхука}/tasks.task.update

curl -X POST \
        -H "Content-Type: application/json" \
        -H "Accept: application/json" \
        -d '{"id":11,"fields":{"title":"Название задачи","deadline":"2025-12-31T23:59:59+02:00","creatorId":29,"responsibleId":1,"crmItemIds":["L_1000959"]}}' \
        https://**put_your_bitrix24_address**/rest/api/**put_your_user_id_here**/**put_your_webhook_here**/tasks.task.update
        
curl -X POST \
        -H "Content-Type: application/json" \
        -H "Accept: application/json" \
        -d '{"id":11,"fields":{"title":"Название задачи","deadline":"2025-12-31T23:59:59+02:00","creatorId":29,"responsibleId":1,"crmItemIds":["L_1000959"]},"auth":"**put_access_token_here**"}' \
        https://**put_your_bitrix24_address**/rest/api/tasks.task.update
        

SDK пока не поддерживают в вызовах адрес /rest/api/. Используйте прямые HTTP-запросы, например, через curl, fetch.

try
        {
            const response = await $b24.callMethod(
                'tasks.task.update',
                {
                    id: 11,
                    fields: {
                        title: 'Название задачи',
                        deadline: '2025-12-31T23:59:59+02:00',
                        creatorId: 29,
                        responsibleId: 1,
                        crmItemIds: ['L_1000959']
                    }
                }
            );
            
            const result = response.getData().result;
            console.info('Task updated:', result);
        }
        catch( error )
        {
            console.error(error);
        }
        

SDK пока не поддерживают в вызовах адрес /rest/api/. Используйте прямые HTTP-запросы, например, через curl, fetch.

try {
            $response = $b24Service
                ->core
                ->call(
                    'tasks.task.update',
                    [
                        'id' => 11,
                        'fields' => [
                            'title' => 'Название задачи',
                            'deadline' => '2025-12-31T23:59:59+02:00',
                            'creatorId' => 29,
                            'responsibleId' => 1,
                            'crmItemIds' => ['L_1000959'],
                        ]
                    ]
                );
        
            $result = $response
                ->getResponseData()
                ->getResult();
        
            echo 'Success: ' . print_r($result, true);
        
        } catch (Throwable $e) {
            error_log($e->getMessage());
            echo 'Error updating task: ' . $e->getMessage();
        }
        

SDK пока не поддерживают в вызовах адрес /rest/api/. Используйте прямые HTTP-запросы, например, через curl, fetch.

BX24.callMethod(
            'tasks.task.update',
            {
                id: 11,
                fields: {
                    title: 'Название задачи',
                    deadline: '2025-12-31T23:59:59+02:00',
                    creatorId: 29,
                    responsibleId: 1,
                    crmItemIds: ['L_1000959']
                }
            },
            function(result){
                console.info(result.data());
                console.log(result);
            }
        );
        

SDK пока не поддерживают в вызовах адрес /rest/api/. Используйте прямые HTTP-запросы, например, через curl, fetch.

require_once('crest.php');
        
        $result = CRest::call(
            'tasks.task.update',
            [
                'id' => 11,
                'fields' => [
                    'title' => 'Название задачи',
                    'deadline' => '2025-12-31T23:59:59+02:00',
                    'creatorId' => 29,
                    'responsibleId' => 1,
                    'crmItemIds' => ['L_1000959']
                ]
            ]
        );
        
        echo '<PRE>';
        print_r($result);
        echo '</PRE>';
        

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

HTTP-статус: 200

{
            "result": {
                "result": true
            },
            "time": {
                "start": 1765452441,
                "finish": 1765452442.17818,
                "duration": 1.1781799793243408,
                "processing": 1,
                "date_start": "2025-12-11T14:27:21+03:00",
                "date_finish": "2025-12-11T14:27:22+03:00",
                "operating_reset_at": 1765453041,
                "operating": 0
            }
        }
        

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

Название
тип

Описание

result
boolean

Корневой элемент ответа.

Содержит объект с ключом result и значением true, если задача обновлена успешно

time
time

Информация о времени выполнения запроса

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

HTTP-статус: 400

{
            "error": {
                "code": "BITRIX_REST_V3_EXCEPTION_VALIDATION_REQUESTVALIDATIONEXCEPTION",
                "message": "Ошибка при валидации объекта запроса",
                "validation": [
                    {
                        "message": "В DTO `TaskDto` в поле `creatorId` требуется наличие атрибута `Editable` для такого запроса",
                        "field": "creatorId"
                    }
                ]
            }
        }
        

Название
тип

Описание

error.code
string

Строковый код ошибки. Используйте для идентификации типа исключения

error.message
string

Текстовое описание ошибки

error.validation
array

Массив c деталями ошибки. Присутствует только в ошибках валидации данных BITRIX_REST_V3_EXCEPTION_VALIDATION_REQUESTVALIDATIONEXCEPTION

error.validation[].field
string

Название поля, в котором возникла ошибка валидации

error.validation[].message
string

Описание ошибки, связанной с указанным полем

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

Ошибки валидации запроса

Код ошибки: BITRIX_REST_V3_EXCEPTION_VALIDATION_REQUESTVALIDATIONEXCEPTION

Поле

Описание ошибки

Как исправить

id
fields

Обязательное поле #FIELD# не указано

Добавьте указанное поле в тело запроса

#FIELD#

В поле #FIELD# требуется тип данных #TYPE# для такого запроса

Убедитесь, что передаваемое значение нужного типа

responsibleId

Пользователь указанный в поле "Исполнитель" не найден

Укажите идентификатор существующего пользователя в поле responsibleId

parentId

Задача указанная в поле "Надзадача" не найдена

Укажите идентификатор существующей задачи в поле parentId

parentId

Невозможно привязать узел к самому себе

Укажите идентификатор задачи в поле parentId отличный от поля id

endPlan

В планировании сроков указана дата окончания меньшая даты старта

Укажите дату endPlan больше startPlan

endPlan

В планировании сроков указана слишком большая длительность задачи

Уменьшите дату в поле endPlan

creatorId

В DTO TaskDto в поле creatorId требуется наличие атрибута Editable для такого запроса

Удалите поле creatorId из запроса, оно не может быть изменено

Ошибка доступа

Код ошибки: BITRIX_REST_V3_EXCEPTION_ACCESSDENIEDEXCEPTION

Поле

Описание ошибки

Как исправить

id

Доступ запрещен

Нет доступа к задаче или задача не существует

Статусы и коды системных ошибок

HTTP-статус: 20x, 40x, 50x

Описанные ниже ошибки могут возникнуть при вызове любого метода

Статус

Код
Текст ошибки

Описание

500

INTERNAL_SERVER_ERROR
Internal server error

Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24

500

ERROR_UNEXPECTED_ANSWER
Server returned an unexpected response

Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24

503

QUERY_LIMIT_EXCEEDED
Too many requests

Превышен лимит на интенсивность запросов

405

ERROR_BATCH_METHOD_NOT_ALLOWED
Method is not allowed for batch usage

Текущий метод не разрешен для вызова с помощью batch

400

ERROR_BATCH_LENGTH_EXCEEDED
Max batch length exceeded

Превышена максимальная длина параметров, переданных в метод batch

401

NO_AUTH_FOUND
Wrong authorization data

Неверный access-токен или код вебхука

400

INVALID_REQUEST
Https required

Для вызовов методов требуется использовать протокол HTTPS

503

OVERLOAD_LIMIT
REST API is blocked due to overload

REST API заблокирован из-за перегрузки. Это ручная индивидуальная блокировка, для снятия необходимо обращаться в техническую поддержку Битрикс24

403

ACCESS_DENIED
REST API is available only on commercial plans

REST API доступен только на коммерческих планах

403

INVALID_CREDENTIALS
Invalid request credentials

У пользователя, с чьим access-токеном или вебхуком был вызван метод, не хватает прав

404

ERROR_MANIFEST_IS_NOT_AVAILABLE
Manifest is not available

Манифест недоступен

403

insufficient_scope
The request requires higher privileges than provided by the webhook token

Запрос требует более высоких привилегий, чем предоставляет токен вебхука

401

expired_token
The access token provided has expired

Предоставленный access-токен доступа истек

403

user_access_error
The user does not have access to the application

Пользователь не имеет доступа к приложению. Это означает, что приложение установлено, но администратор портала разрешил доступ к этому приложению только конкретным пользователям

500

PORTAL_DELETED
Portal was deleted

Публичная часть сайта закрыта. Чтобы открыть публичную часть сайта на коробочной установке отключите опцию «Временное закрытие публичной части сайта». Путь к настройке: Рабочий стол > Настройки > Настройки продукта > Настройки модулей > Главный модуль > Временное закрытие публичной части сайта

Продолжите изучение