Smart Processes: Overview of Methods and Events

If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the MCP server so that the assistant can utilize the official REST documentation.

A Smart Process is a versatile CRM object that can be customized to meet the needs of a company. For each Smart Process, Bitrix24 creates a separate section in the CRM. In this section, you can configure Sales Funnels and stages, Automation rules, fields, and connections to other Bitrix24 entities.

Quick Navigation: All Methods and Events

User Documentation: Smart Process Automation in CRM

Working with a Smart Process

  1. Create and configure the Smart Process — methods crm.type.*.
  2. Set up Sales Funnels and stages — crm.category.* for funnels and crm.status.* for stages.
  3. Add custom fields — userfieldconfig.*.
  4. Configure the item detail form — crm.item.details.configuration.*.
  5. Create the first items within the Smart Process — crm.item.*.

The Smart Process can be transferred from the CRM section to the Automation section via digital workplaces.

Connections with Other Entities

CRM Entities. A Smart Process can be linked to leads, deals, and other CRM entities. The linked entity will be accessible through the field parentId{ID}, where {ID} is the numeric identifier of the CRM object.

Client. This field in the Smart Process detail form consists of the associated company and contacts. There is one company in the field; change the linked company through the companyId field. There can be multiple contacts in the "Client" field. Interaction with contacts is managed through the contactIds field — pass an array of contact IDs in this field. Enable the field with the isClientEnabled option in the crm.type.add or crm.type.update methods.

Your Company Details. Specify your company ID in the mycompanyId field so that its details are automatically used in documents. You can obtain your company ID using the crm.item.list method for the company object with a filter on the isMyCompany field. Enable the field with the isMycompanyEnabled option in the crm.type.add or crm.type.update methods.

Products. To add, modify, or delete product items in the Smart Process, use the crm.item.productrow.* methods. Enable the products tab and the "Amount and Currency" field with the isLinkWithProductsEnabled option in the crm.type.add or crm.type.update methods.

Users. The Smart Process is linked to users by numeric identifiers in the fields:

  • createdBy — created by,
  • updatedBy — updated by,
  • movedBy — who changed the stage,
  • assignedById — responsible for the item,
  • observers — observers. Enable the field with the isObserversEnabled option in the crm.type.add or crm.type.update methods.

You can obtain the user ID and data using the user.get method.

Documents. To create a document from a template, upload a new template for the Smart Process, or configure the document numbering, use the crm.documentgenerator.* methods. Enable document handling in the Smart Process with the isDocumentsEnabled option in the crm.type.add or crm.type.update methods.

Tasks. Smart Process items can be linked to tasks. Use the tasks.task.* methods to work with tasks. To make the linking option available, enable and configure the isUseInUserfieldEnabled option in the crm.type.add or crm.type.update methods.

Calendar Events. Smart Process items can be linked to calendar events. Use the calendar.event.* methods to work with the calendar. To make the linking option available, enable and configure the isUseInUserfieldEnabled option in the crm.type.add or crm.type.update methods.

Smart Process Item Detail Form

The main workspace in a Smart Process is the "General" tab of the detail form. It consists of two parts:

  • The left part contains fields with information. If the system fields are insufficient, you can create your own custom fields. Fields allow you to store information in various data formats: string, number, link, address, and others. To create, modify, retrieve, or delete custom fields in the Smart Process, use the group of methods userfieldconfig.*.

  • The right part contains the Smart Process timeline. Here, you can create, edit, filter, and delete CRM activities — a group of methods crm.activity.*, and timeline records — a group of methods crm.timeline.*.

You can manage the parameters of the Smart Process detail form through the group of methods crm.item.details.configuration.*.

Widgets

You can embed an application into the Smart Process detail form. This allows you to use the application without leaving the item detail form.

There are two embedding scenarios:

Embedding Locations for Smart Processes

Replace XXX with the numeric identifier of the specific Smart Process, for example, CRM_DYNAMIC_183_DOCUMENTGENERATOR_BUTTON.

Smart Process Identifiers

Each Smart Process has four types of identifiers. Use these identifiers to apply a method to a specific Smart Process.

In the table, all examples refer to the same Smart Process: it has id = 13 and entityTypeId = 156.

Identifier

Example

Where It Is Used

How to Obtain It

Numeric identifier of the type

156

The entityTypeId parameter in the crm.item.*, crm.category.*, and crm.item.details.configuration.* methods

crm.type.list, the entityTypeId key, or crm.enum.ownertype, the ID key

Symbolic code of the type

DYNAMIC_156

Stage reference identifiers such as DYNAMIC_156_STAGE_52 and object codes in custom field lists

crm.enum.ownertype, the SYMBOL_CODE key

Short symbolic code of the type

T9c

The ownerType parameter in the crm.item.productrow.* methods

crm.enum.ownertype, the SYMBOL_CODE_SHORT key

Custom field object type

CRM_13

The entityId parameter in the userfieldconfig.* methods

crm.type.list, the id key substituted into the formula CRM_{id}

id and entityTypeId are different values, and one is not calculated from the other. In the formula CRM_{id} for custom fields, use id, and in the entityTypeId parameter, use entityTypeId. Both values are returned by the crm.type.list method.

Overview of Methods and Events

Scope: crm

Who can execute the method: depending on the method

Smart Processes

Method

Description

crm.type.add

Creates a new Smart Process

crm.type.update

Updates the Smart Process

crm.type.get

Returns the Smart Process by id

crm.type.getByEntityTypeId

Returns the Smart Process by entityTypeId

crm.type.list

Returns a list of Smart Processes

crm.type.delete

Deletes the Smart Process

crm.type.fields

Returns the fields of the Smart Process

Event

Triggered

onCrmTypeAdd

When a Smart Process is created

onCrmTypeUpdate

When a Smart Process is updated

onCrmTypeDelete

When a Smart Process is deleted

Items

The CRM object identifier entityTypeIdnumeric identifier type, for example, 128.

Method

Description

crm.item.add

Creates a new item

crm.item.update

Updates the item

crm.item.get

Returns the item by Id

crm.item.list

Returns a list of items by filter

crm.item.delete

Deletes the item

crm.item.fields

Returns the fields of the item

Event

Triggered

onCrmDynamicItemAdd

When a Smart Process item is created

onCrmDynamicItemDelete

When a Smart Process item is deleted

onCrmDynamicItemUpdate

When a Smart Process item is updated

Sales Funnels

The CRM object identifier entityTypeIdnumeric identifier type, for example, 128.

Method

Description

crm.category.add

Creates a new Sales Funnel

crm.category.update

Updates the Sales Funnel

crm.category.get

Returns the Sales Funnel by Id

crm.category.list

Returns a list of Sales Funnels

crm.category.delete

Deletes the Sales Funnel

crm.category.fields

Returns the fields of the Sales Funnel

Custom Fields

The CRM object identifier entityIdcustom field object type, for example, CRM_1.

Method

Description

userfieldconfig.add

Creates a custom field

userfieldconfig.update

Modifies the field settings

userfieldconfig.get

Returns the settings of the custom field by identifier

userfieldconfig.getTypes

Returns the set of available custom field types for the module

userfieldconfig.list

Returns a list of custom field settings

userfieldconfig.delete

Deletes the custom field

Event

Triggered

onCrmTypeUserFieldAdd

When a custom field of a smart process is added

onCrmTypeUserFieldUpdate

When the settings of a custom field of a smart process are changed

onCrmTypeUserFieldDelete

When a custom field of a smart process is deleted

onCrmTypeUserFieldSetEnumValues

When the set of values of a list-type custom field is changed

Managing Detail Form Settings

The CRM object identifier entityTypeIdnumeric identifier type, for example, 128.

Method

Description

crm.item.details.configuration.forceCommonScopeForAll

Sets a common detail form for all users

crm.item.details.configuration.get

Retrieves the parameters of the item detail form

crm.item.details.configuration.reset

Resets the parameters of the item detail form

crm.item.details.configuration.set

Sets the parameters of the item detail form

Product Items

The CRM object identifier ownerTypeshort symbolic code type, for example, T80.

Method

Description

crm.item.productrow.add

Adds a product item

crm.item.productrow.update

Updates a product item

crm.item.productrow.get

Retrieves information about a product item by id

crm.item.productrow.set

Links a product item to a CRM object

crm.item.productrow.list

Retrieves a list of product items

crm.item.productrow.getAvailableForPayment

Retrieves a list of unpaid products

crm.item.productrow.delete

Deletes a product item

crm.item.productrow.fields

Retrieves a list of product item fields

Continue Learning