Нижняя часть записи конфигурируемого дела

Выберите инструмент для разработки с AI-агентом:

  • используйте Битрикс24 Вайбкод, чтобы создать приложение для Битрикс24 по описанию задачи без знания языков программирования. Агент напишет код и разместит приложение на сервере без ручной настройки хостинга
  • используйте MCP-сервер, чтобы разрабатывать интеграцию через REST API в своем проекте. Агент будет обращаться к официальной REST-документации

Под записью конфигурируемого дела в таймлайне карточки CRM приложение показывает пользователю свои действия, например подтвердить заявку или открыть связанную сделку. Эти действия задает объект FooterDto. Он описывает нижнюю часть записи таймлайна: кнопки, значок «Заметка» и меню, которое открывается по значку с тремя точками.

Объект передают в поле footer структуры конфигурируемого дела при вызове методов crm.activity.configurable.add и crm.activity.configurable.update. Путь в запросе — layout.footer: кнопки — в layout.footer.buttons, пункты меню — в layout.footer.menu.items.

Пункты меню описаны на странице выпадающего меню. Готовые сочетания полей собраны в примерах конфигураций дела.

Кнопки или меню

Действия приложения выводят двумя способами:

  • кнопки — до двух, видны под записью сразу, подходят для главных действий
  • пункты меню — до десяти, открываются по значку с тремя точками, их можно разбить на разделы с заголовками

Часть элементов Битрикс24 добавляет сам: значок «Заметка» и системные пункты меню «Закрепить», «Отложить» и «Удалить». Поля объекта могут их отключить. Пункт «О приложении» в браузере есть всегда. Если footer не передать, под записью будут только эти системные элементы, без кнопок приложения.

Параметры объекта FooterDto

Поле

Описание

buttons
object

Кнопки действий: ключ — идентификатор кнопки, который вы задаете сами, значение — объект FooterButtonDto. В ключе допустимы латинские буквы, цифры, дефис и подчеркивание. Передайте не более двух кнопок

showNote
boolean

Если false, в записи не будет значка «Заметка». По умолчанию значок есть

menu
FooterMenuDto

Меню, которое открывается по значку с тремя точками

Если структура нарушает эти ограничения, метод вернет ошибку валидации. Общие коды перечислены на страницах crm.activity.configurable.add и crm.activity.configurable.update, коды для разделов меню — в описании FooterMenuDto.

Передавайте buttons объектом с ключами. Массив без ключей метод примет без ошибки, но кнопки в записи не появятся.

Объект FooterButtonDto

Кнопка в нижней части записи таймлайна.

Параметры объекта FooterButtonDto

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

Поле

Описание

title*
textWithTranslation

Текст кнопки

type*
string

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

action*
ActionDto

Действие по нажатию на кнопку

scope
string

Область видимости, например web

hideIfReadonly
boolean

Если true, кнопка не покажется пользователю, у которого нет права редактировать элемент CRM. По умолчанию false

Типы кнопок

Объект FooterMenuDto

Меню, которое открывается по значку с тремя точками. Флаги showPinItem, showPostponeItem и showDeleteItem отключают системные пункты, поля items и sections задают пункты приложения.

Параметры объекта FooterMenuDto

Поле

Описание

showPinItem
boolean

Если false, пункта «Закрепить» в меню не будет. При true Битрикс24 показывает пункт только у выполненного дела. По умолчанию true

showPostponeItem
boolean

Если false, пункта «Отложить» в меню не будет. При true Битрикс24 показывает пункт только у невыполненного дела со сроком. У входящего дела срока не бывает, поэтому и пункта нет. По умолчанию true

showDeleteItem
boolean

Если false, пункта «Удалить» в меню не будет. По умолчанию true

items
object

Пункты приложения: ключ — идентификатор пункта, значение — объект MenuItemDto. Не более десяти пунктов

sections
array

Разделы меню с заголовками — массив объектов MenuSectionDto, не более десяти. Если разделы переданы, у каждого пункта должен быть sectionCode. Поля раздела и правила описаны в блоке Разделы меню

Если разделы меню заданы с ошибкой, метод вернет один из кодов:

Код

Причина

MENU_RESERVED_SECTION_CODE

Код раздела совпадает с зарезервированным: system, about, base или extensions

MENU_DUPLICATE_SECTION_CODE

Два раздела с одинаковым кодом

MENU_MISSING_SECTION_CODE

Разделы переданы, а у пункта нет sectionCode

MENU_UNKNOWN_SECTION_CODE

sectionCode пункта не совпадает с кодом ни одного раздела

Пример объекта

Значение поля footer с двумя кнопками. Кнопку «Подтвердить заявку» видят только пользователи с правом редактировать сделку. Кнопка «Открыть сделку» показывается только в браузере. Значка «Заметка» нет. В меню — пункт приложения «Отклонить заявку», системные пункты «Отложить» и «Удалить» отключены.

{
    "buttons": {
        "confirm": {
            "title": "Подтвердить заявку",
            "type": "primary",
            "action": {
                "type": "restEvent",
                "id": "confirm",
                "animationType": "loader"
            },
            "hideIfReadonly": true
        },
        "open": {
            "title": "Открыть сделку",
            "type": "secondary",
            "action": {
                "type": "redirect",
                "uri": "/crm/deal/details/123/"
            },
            "scope": "web"
        }
    },
    "showNote": false,
    "menu": {
        "showPostponeItem": false,
        "showDeleteItem": false,
        "items": {
            "decline": {
                "title": "Отклонить заявку",
                "action": {
                    "type": "restEvent",
                    "id": "decline",
                    "animationType": "loader"
                }
            }
        }
    }
}

Права и ограничения

Scope: crm

Кто может выполнять метод: пользователь с доступом на изменение элемента CRM, к которому привязано дело. Без такого доступа метод вернет ошибку ACCESS_DENIED

Ограничения:

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