tasks.task.add
Добавить задачу v 3.0
Описание
Метод относится к REST 3.0. Особенности вызова и формат ответа новой версии API описаны в обзоре REST 3.0.
Метод tasks.task.add добавляет новую задачу.
Параметры
fields
object
обязательный
Поля задачи. Для создания задачи заполните обязательные поля, без них операция создания не будет выполнена
Параметр fields
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"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.add
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"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.add
// 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, ISODate } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
// Shape of the payload returned in result (match the "response handling" section of the page)
type TaskAddResult = {
item: {
id: number
title: string
description: string
deadline: ISODate | null
priority: string
status: string
parentId: number | null
crmItemIds: string[]
}
}
try {
const response = await $b24.actions.v3.call.make<TaskAddResult>({
method: 'tasks.task.add',
params: {
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 created:', result.item.id, result.item.title, result.item.status)
}
} 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 addTask() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v3.call.make({
method: 'tasks.task.add',
params: {
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 created:', result.item.id, result.item.title, result.item.status)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', addTask)
</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.add(
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.add',
[
'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 creating task: ' . $e->getMessage();
}
BX24.callMethod(
'tasks.task.add',
{
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.add',
[
'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.add", b24.Params{
"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.add: %w", err)
}
// Метод заворачивает ответ в объект с ключом "item".
raw, ok := b24.Unwrap(res.Result, "item")
if !ok {
return fmt.Errorf("в ответе нет ключа item")
}
var item struct {
ID b24.ID `json:"id"`
Title string `json:"title"`
Description string `json:"description"`
Deadline string `json:"deadline"`
NeedsControl bool `json:"needsControl"`
Priority string `json:"priority"`
}
if err := json.Unmarshal(raw, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.ID, item.Title)
Ответ
HTTP-статус: 200
{
"result": {
"item": {
"id": 3839,
"title": "Название задачи",
"description": "",
"deadline": "2026-01-01T00:59:59+03:00",
"needsControl": false,
"startPlan": null,
"endPlan": null,
"fileIds": null,
"checklist": [],
"epicId": null,
"storyPoints": null,
"priority": "average",
"status": "pending",
"statusChanged": null,
"parentId": null,
"containsChecklist": false,
"containsSubTasks": false,
"containsRelatedTasks": false,
"containsGanttLinks": false,
"containsPlacements": true,
"containsResults": false,
"numberOfReminders": 0,
"chatId": 2603,
"plannedDuration": 0,
"actualDuration": 0,
"durationType": "days",
"started": null,
"estimatedTime": 0,
"replicate": false,
"changed": "2025-12-11T12:25:33+03:00",
"closed": null,
"activity": "2025-12-11T12:25:33+03:00",
"guid": "{13d2c44c-730e-45dd-b99c-fdaad4e3c1fa}",
"xmlId": null,
"exchangeId": null,
"exchangeModified": null,
"outlookVersion": 1,
"mark": "none",
"allowsChangeDeadline": false,
"allowsTimeTracking": false,
"matchesWorkTime": false,
"addInReport": null,
"isMultitask": false,
"siteId": "s1",
"deadlineCount": null,
"declineReason": null,
"forumTopicId": null,
"link": "\/company\/personal\/user\/1\/tasks\/task\/view\/3839\/",
"rights": {
"read": true,
"watch": true,
"mute": true,
"createResult": true,
"edit": true,
"remove": true,
"complete": true,
"approve": false,
"disapprove": false,
"start": true,
"take": false,
"delegate": true,
"defer": true,
"renew": false,
"deadline": true,
"datePlan": true,
"changeDirector": false,
"changeResponsible": true,
"changeAccomplices": true,
"pause": false,
"timeTracking": false,
"mark": true,
"changeStatus": true,
"reminder": true,
"addAuditors": true,
"elapsedTime": true,
"favorite": true,
"checklistAdd": true,
"checklistEdit": true,
"checklistSave": true,
"checklistToggle": true,
"automate": true,
"resultEdit": false,
"completeResult": true,
"removeResult": false,
"resultRead": false,
"admin": true,
"createSubtask": true,
"copy": true,
"saveAsTemplate": true,
"attachFile": true,
"detachFile": true,
"detachParent": true,
"createGanttDependence": true,
"sort": false
},
"archiveLink": "\/bitrix\/tools\/disk\/uf.php?entityId=3839\u0026entity=TASKS_TASK\u0026fieldName=UF_TASK_WEBDAV_FILES\u0026signature=89f4f46e33905bcb0899c8cb9613a62cf8e104b182824e799d2aeb9d1e5bf526\u0026action=downloadArchiveByEntity\u0026ncc=1",
"crmItemIds": [
"L_1000959"
],
"requireResult": false,
"matchesSubTasksTime": false,
"autocompleteSubTasks": false,
"allowsChangeDatePlan": false,
"maxDeadlineChangeDate": null,
"maxDeadlineChanges": null,
"requireDeadlineChangeReason": false,
"inFavorite": [],
"inPin": [],
"inGroupPin": [],
"inMute": [],
"dependsOn": [],
"scenarios": [
"default"
]
}
},
"time": {
"start": 1765445133,
"finish": 1765445134.139558,
"duration": 1.1395580768585205,
"processing": 1,
"date_start": "2025-12-11T12:25:33+03:00",
"date_finish": "2025-12-11T12:25:34+03:00",
"operating_reset_at": 1765445733,
"operating": 0
}
}
Возвращаемые данные
result
object
Объект с данными ответа
item
object
Объект со значениями полей задачи. Описание полей задачи со связанными объектами
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error": {
"code": "BITRIX_REST_V3_EXCEPTION_VALIDATION_REQUESTVALIDATIONEXCEPTION",
"message": "Ошибка при валидации объекта запроса",
"validation": [
{
"message": "В поле `deadline` требуется тип данных `DateTime` для такого запроса",
"field": "deadline"
}
]
}
}
| Код | Описание | Значение |
|---|---|---|
Поле |
Описание ошибки | Как исправить |
title responsibleId creatorId fields |
Обязательное поле #FIELD# не указано |
Добавьте указанное поле в тело запроса |
FIELD# |
В поле #FIELD# требуется тип данных #TYPE# для такого запроса |
Убедитесь, что передаваемое значение нужного типа |
responsibleId |
Пользователь указанный в поле \"Исполнитель\" не найден | Укажите идентификатор существующего пользователя в поле responsibleId |
creatorId |
"" | Укажите идентификатор существующего пользователя в поле creatorId |
parentId |
Задача указанная в поле \"Надзадача\" не найдена | Укажите идентификатор существующей задачи в поле parentId |
endPlan |
В планировании сроков указана дата окончания меньшая даты старта | Укажите дату endPlan больше startPlan |
endPlan |
В планировании сроков указана слишком большая длительность задачи | Уменьшите дату в поле endPlan |

