When Deleting a Custom Field of a Smart Process, New Invoice, or Document onCrmTypeUserFieldDelete

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.

Scope: crm

Who can subscribe: any user

The event ONCRMTYPEUSERFIELDDELETE will trigger when a custom field of a smart process, a new invoice, or a document for signing is deleted. The event arrives both when the field is deleted in the interface and when the userfieldconfig.delete method is called.

Events will not be sent to the application until the installation is complete. Check the application installation

What the Handler Receives

Data is transmitted as a POST request

{
            "event": "ONCRMTYPEUSERFIELDDELETE",
            "event_handler_id": "713",
            "data": {
                "FIELDS": {
                    "ID": "6977",
                    "ENTITY_ID": "CRM_13",
                    "FIELD_NAME": "UF_CRM_13_1742999523"
                }
            },
            "ts": "1743086402",
            "auth": {
                "access_token": "s6p6eclrvim6da22ft9ch94ekreb52lv",
                "expires_in": "3600",
                "scope": "crm",
                "domain": "some-domain.bitrix24.com",
                "server_endpoint": "https://oauth.bitrix.info/rest/",
                "status": "L",
                "client_endpoint": "https://some-domain.bitrix24.com/rest/",
                "member_id": "a223c6b3710f85df22e9377d6c4f7553",
                "refresh_token": "4s386p3q0tr8dy89xvmt96234v3dljg8",
                "application_token": "51856fefc120afa4b628cc82d3935cce"
            }
        }
        

parameter
type

Description

event
string

Symbolic code of the event.

In this case — ONCRMTYPEUSERFIELDDELETE

event_handler_id
integer

Identifier of the event handler

data
object

An object containing information about the deleted custom field.

Contains a single key FIELDS

data.FIELDS
object

An object containing the identifiers of the deleted custom field.

The structure is described below

ts
timestamp

Date and time of the event sent from the event queue

auth
object

Object containing authorization parameters and information about the account where the event occurred.

The structure is described below

Parameter FIELDS

parameter
type

Description

ID
integer

Identifier of the deleted custom field

ENTITY_ID
string

Identifier of the object the custom field belonged to: CRM_{id} for a smart process, CRM_SMART_INVOICE for a new invoice, CRM_SMART_DOCUMENT for a document for signing.

The CRM_{id} format uses the id key from the result of the crm.type.list method, not entityTypeId.

The values are described in the Which Objects Trigger the Events section

FIELD_NAME
string

Symbolic code of the deleted custom field, for example UF_CRM_13_1742999523

By the time the event arrives, the field no longer exists in Bitrix24. For this ID and moduleId = crm, the userfieldconfig.get method returns an error with an empty code and the text You are not allowed to view custom field settings. The method returns the same error when there are not enough rights to view the field, so the response does not let you tell a deleted field from a rights denial.

Match the received ID and FIELD_NAME against the data you retained earlier.

The event arrives only when the field itself is deleted. When an entire smart process is deleted, its custom fields disappear as well, but no events are sent for them. Track such cases with the onCrmTypeDelete event.

Parameter auth

Required parameters are marked with *

Name
type

Description

access_token
string

Authorization token OAuth 2.0

expires_in
integer

Time in seconds until the token expires

scope*
string

Scope under which the event occurred

domain*
string

Address of Bitrix24 where the event occurred

server_endpoint*
string

Address of the Bitrix24 authorization server needed to refresh OAuth 2.0 tokens

status*
string

Status of the application that subscribed to this event:

  • Llocal application
  • Ffree mass-market application
  • D — demo version of a mass-market application
  • T — trial version of a mass-market application, time-limited
  • P — paid mass-market application

client_endpoint*
string

Common path for REST API method calls for Bitrix24 where the event occurred

member_id*
string

Identifier of Bitrix24 where the event occurred

refresh_token
string

Token for extending authorization OAuth 2.0

application_token*
string

Token for secure event handling

Authorization tokens are not always passed to the event handler. If the hit that initiated the event could not be linked to a specific Bitrix24 user, the tokens are not passed. Always check the contents of the auth key in the code.

It is recommended to store tokens obtained earlier during the application installation. Use them when working with the application interface in the form of embeds, widgets, and so on.

Continue Learning