Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Новая карточка задач: обзор изменений». Вы узнаете экспертные методики работы с запросов и научитесь избегать типичных ошибок начинающих разработчиков.
Новая карточка задач: обзор изменений
Новая карточка задач перевела комментарии в чат. Старые методы задач продолжают работать, кроме операций с комментариями. Изменения доступны с версии модуля tasks 25.700.0.
Что осталось без изменений
- task.* методы для создания и обновления задач, файлов, чек-листов работают как раньше.
- Добавление комментария через task.commentitem.add работает.
Что изменилось в комментариях {#comments}
- Обновление и удаление комментариев методами task.commentitem.update и task.commentitem.delete больше не работает. Используйте методы Чата:
- im.message.update для изменения текста,
- im.message.delete для удаления сообщения.
- Получение списка комментариев через task.commentitem.getlist не работает. Получайте сообщения чата задачи через im.dialog.messages.get.
- Используйте метод im.disk.file.commit для отправки файлов в чат задачи.
- Чат, связанный с задачей, возвращается в ответе tasks.task.get. Используйте его идентификатор для запросов в методах чатов.
Как получить ID чата задачи через tasks.task.get
Старая версия api
POST https://{адрес_установки}/rest/{id_пользователя}/{пароль_rest-приложения}/tasks.task.get
{
"taskId": 51,
"select": ["CHAT_ID"]
}Пример ответа:
{
"result": {
"task": {
"id": "3835",
"chatId": 2537,
"favorite": "N",
"group": [],
"action": {
...
}
}
}
} Новая версия api
Запросите у задачи поля chat.id, chat.entityId, chat.entityType:
POST https://{адрес_установки}/rest/api/{id_пользователя}/{пароль_rest-приложения}/tasks.task.get
{
"id": 51,
"select": ["id", "chat.id", "chat.entityId", "chat.entityType"]
}Пример ответа:
{
"result": {
"item": {
"id": 51,
"chat": {
"id": 58,
"entityId": 51,
"entityType": "TASKS_TASK"
}
}
}
}С версии модуля tasks 25.700.0 доступен вызов некоторых методов в новом формате.
Вызов нового api отличается добавлением параметра /api/ в запрос.
Старая версия:
https://{адрес_установки}/rest/{id_пользователя}/{пароль_rest-приложения}/tasks.task.get
Новая версия:
https://{адрес_установки}/rest/api/{id_пользователя}/{пароль_rest-приложения}/tasks.task.get
Для новой версии вызова метода доступна документация в формате OpenApi. Для получения OpenApi вызовите метод documentation:
https://{адрес_установки}/rest/api/{id_пользователя}/{пароль_rest-приложения}/documentation
Как отправлять сообщения в задачу
- Старый метод task.commentitem.add.
- Новый метод tasks.task.chat.message.send. Чтобы отправить файл в чат задачи, используйте метод im.disk.file.commit.
События
- Событие OnTaskCommentAdd работает. При работе с новой карточкой задачи в обработчик будут приходить параметры:
MESSAGE_IDс идентификатором сообщения в чате задачи,TASK_IDс идентификатором задачи,'ID' => 0идентификатор комментария будет равен нулю.
- События OnTaskCommentUpdate и OnTaskCommentDelete не работают в новой карточке.
Результат задачи
- Метод tasks.task.result.list работает. При работе с новой карточкой задачи все результаты задачи будут возвращаться с параметром
commentId: 0.
- Методы tasks.task.result.addFromComment и tasks.task.result.deleteFromComment не работают в новой карточке.
Встройки
Расположение мест встроек TASK_VIEW_SIDEBAR, TASK_VIEW_TOP_PANEL, TASK_VIEW_TAB не актуально в новой карточке задач. В новой карточке все встройки выводятся в едином блоке «Приложения».
Все ранее зарегистрированные встройки продолжают работать. Можно регистрировать новые встройки, они также будут показаны в блоке «Приложения».
!Встроенные приложения
💡 Экспертное мнение и рекомендации
Практические рекомендации:
- При написании кастомных компонентов для «Новая карточка задач: обзор изменений» всегда разделяйте бизнес-логику и представление (шаблон).
- Используйте отладку SQL-запросов через конструкцию
$wpdb->last_queryили стандартный трекер Битрикса, чтобы контролировать нагрузку.
Похожая задача в бизнесе?
Помогу автоматизировать процессы и внедрить ИИ
Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.
или на почту: gorandvas@yandex.ru