tasks.task.update
Изменить задачу v 3.0
Описание
Метод относится к REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Метод tasks.task.update обновляет задачу.
Параметры
id
integer
обязательный
Идентификатор задачи.
Идентификатор задачи можно получить при создании новой задачи или методом tasks.task.list
fields
object
обязательный
Значения полей задачи для обновления.
Описание всех полей задачи
Примеры запроса
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
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
// Shape of the payload returned in result (match the "response handling" section of the page)
type TaskUpdateResult = {
result: boolean
}
try {
const response = await $b24.actions.v3.call.make<TaskUpdateResult>({
method: 'tasks.task.update',
params: {
id: 11,
fields: {
title: 'Task title',
deadline: '2025-12-31T23:59:59+02:00',
creatorId: 29,
responsibleId: 1,
crmItemIds: ['L_1000959'],
},
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Task updated:', result.result)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function updateTask() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v3.call.make({
method: 'tasks.task.update',
params: {
id: 11,
fields: {
title: 'Task title',
deadline: '2025-12-31T23:59:59+02:00',
creatorId: 29,
responsibleId: 1,
crmItemIds: ['L_1000959'],
},
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Task updated:', result.result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', updateTask)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
fields = {
"title": "Название задачи",
"deadline": "2025-12-31T23:59:59+02:00",
"creatorId": 29,
"responsibleId": 1,
"crmItemIds": [
"L_1000959",
],
}
try:
bitrix_response = client.tasks.task.update(
bitrix_id=11,
fields=fields,
).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(
'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();
}
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);
}
);
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>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "tasks.task.update", b24.Params{
"id": 11,
"fields": b24.Params{
"title": "Название задачи",
"deadline": "2025-12-31T23:59:59+02:00",
"creatorId": 29,
"responsibleId": 1,
"crmItemIds": []string{"L_1000959"},
},
})
if err != nil {
return fmt.Errorf("tasks.task.update: %w", err)
}
var item struct {
Result bool `json:"result"`
}
if err := json.Unmarshal(res.Result, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.Result)
Ответ
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"
}
]
}
}
| Код | Описание | Значение |
|---|---|---|
Поле |
Описание ошибки | Как исправить |
id fields |
Обязательное поле #FIELD# не указано |
Добавьте указанное поле в тело запроса |
FIELD# |
В поле #FIELD# требуется тип данных #TYPE# для такого запроса |
Убедитесь, что передаваемое значение нужного типа |
responsibleId |
Пользователь указанный в поле \"Исполнитель\" не найден | Укажите идентификатор существующего пользователя в поле responsibleId |
parentId |
Задача указанная в поле \"Надзадача\" не найдена | Укажите идентификатор существующей задачи в поле parentId |
parentId |
Невозможно привязать узел к самому себе | Укажите идентификатор задачи в поле parentId отличный от поля id |
endPlan |
В планировании сроков указана дата окончания меньшая даты старта | Укажите дату endPlan больше startPlan |
endPlan |
В планировании сроков указана слишком большая длительность задачи | Уменьшите дату в поле endPlan |
creatorId |
В DTO TaskDto в поле creatorId требуется наличие атрибута Editable для такого запроса |
Удалите поле creatorId из запроса, оно не может быть изменено |

