Contacts in CRM: Overview of Methods
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 contact is a CRM object that stores data about clients—individuals. The contact card contains phone numbers, email addresses, and messenger identifiers in a special format that allows communication with the client directly through Bitrix24.
Development of the crm.contact.* and crm.contact.details.configuration.* methods has been discontinued. For new development, use the universal methods crm.item.* with entityTypeId = 3. The company linking methods crm.contact.company.* and the custom field methods crm.contact.userfield.* continue to work.
Quick navigation: all methods and events
User documentation: contacts in Bitrix24
Current API Version
A contact is one of the CRM object types, so it is managed by the universal methods crm.item.* with entityTypeId = 3. The crm.contact.* methods continue to work — retain them only in existing integrations.
|
Method with Discontinued Development |
Replacement |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The crm.contact.company.* and crm.contact.userfield.* method groups have no replacement — they are current.
Field names differ between the two method groups: crm.contact.* accepts and returns fields in UPPER_CASE format, for example LAST_NAME, while crm.item.* uses camelCase format, for example lastName. The exact set of fields is returned by the method crm.item.fields with entityTypeId = 3.
How to Get Started
- Retrieve the description of contact fields with the crm.contact.fields method — it returns system and custom fields with their types.
- Create a contact with the crm.contact.add method. Fill in
NAMEorLAST_NAME: if both fields are empty, the method returns an error. Pass phone numbers and e-mail in the multiple fieldsPHONEandEMAIL— these are arrays of objects with theVALUEandVALUE_TYPEkeys. - Link the contact to companies with the crm.contact.company.* methods if the client represents several companies.
- Find the contacts you need with the crm.contact.list method: it accepts
filter,order, andselect, and returns the result in pages of 50 records. - Communicate with the client in the contact card — with activities crm.activity.* and timeline records crm.timeline.*.
- Subscribe to contact events to receive notifications about changes in your application.
Relationships with Other CRM Objects
Deal, lead, SPA. Any CRM object that has the standard field Client is connected to contacts. The connection is managed through groups of methods for deals, leads, and SPAs.
Company. A single contact can be linked to multiple companies. This connection is managed using the group of methods crm.contact.company.*. When you select a company in the Client field in deals or SPAs, all associated contacts are automatically pulled into the field.
Requisites. The requisites themselves are a separate object, and methods from the group crm.requisite.* and crm.address.* are used to create or modify them. They are displayed in the Requisites field of the contact card.
User Documentation
Contact Card
The main workspace in a contact is the General tab of its card. 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. They allow you to store information in various data formats: string, number, link, address, and others. The group of methods crm.contact.userfield.* is used to create, modify, retrieve, or delete custom contact fields.
-
The right part contains the contact's timeline. In it, you can create, edit, filter, and delete CRM activities using the group of methods crm.activity.*, and timeline records using the group of methods crm.timeline.*.
The parameters of the contact card can be managed through the group of methods crm.contact.details.configuration.*.
User Documentation
Widgets
You can embed an application into the contact card and work with it without leaving the card.
There are two embedding scenarios:
- use special embedding locations, for example, create your own tab
- create a custom field that loads the interface of your application
Typical use-cases and scenarios
Overview of Methods and Events
Scope:
crmWho can execute the method: depending on the method — the contact methods and the company linking methods check the access permissions for contacts, while creating, modifying, and deleting custom fields is available only to a CRM administrator. Any user can subscribe to the events
Basic
|
Method |
Description |
|
Creates a new contact |
|
|
Updates an existing contact |
|
|
Returns a contact by ID |
|
|
Returns a list of contacts by filter |
|
|
Deletes a contact and all associated objects |
|
|
Returns the description of contact fields, including custom fields |
|
Event |
Triggered |
|
When a contact is created |
|
|
When a contact is updated |
|
|
When a contact is deleted |
Companies
|
Method |
Description |
|
Adds a company to the specified contact |
|
|
Removes a company from the specified contact |
|
|
Returns the set of companies associated with the specified contact |
|
|
Sets the set of companies associated with the specified contact |
|
|
Clears the set of companies associated with the specified contact |
|
|
Returns the description of fields for contact-company connection |
Custom Fields
|
Method |
Description |
|
Creates a custom field for contacts |
|
|
Modifies an existing custom field for contacts |
|
|
Returns a custom field for contacts by Id |
|
|
Returns a list of custom fields for contacts |
|
|
Deletes a custom field for contacts |
|
Event |
Triggered |
|
When a custom field is added |
|
|
When a custom field is updated |
|
|
When a custom field is deleted |
|
|
When the set of values for a list-type custom field is changed |
Managing Contact Cards
|
Method |
Description |
|
Returns the settings of the contact card |
|
|
Sets the settings of the contact card |
|
|
Resets the settings of the contact card |
|
|
Forcefully sets a common contact card for all users |