{% note tip "" %}
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.
{% endnote %}
Open Channels bring customer inquiries from websites, messengers, and social networks into a single processing flow. Two related API areas are available for integrations:
- Open Channels — configuring lines, operator queues, sessions, messages, chatbots, events, and CRM links
- Connectors — connecting and maintaining external communication channels through which customers write to open channels
Quick navigation: all methods and events
User documentation: Contact Center
#| || Scenario | What to Use || || Set up a line, operator queues, and inquiry processing rules | The Open Channels method group || || Connect your own external communication channel to Bitrix24 | The Open Channels Connectors method group || || Connect an external open channel from another Bitrix24 | Method imopenlines.network.join || || Subscribe to message, dialog, and status events | Events from the Connectors Events and Open Channels Events sections || |#
Both sets of methods are used for your own external channel: imconnector.* for registering and maintaining the connector, and imopenlines.* for configuring the line and processing dialogs. If you need to connect an external open channel from another Bitrix24 without registering your own connector, use the method imopenlines.network.join.
Chat. The system processes inquiries as an open channel chat. Operations with messages, operators, and sessions are performed through the chat.
Session. Within the chat, the inquiry proceeds as a session. To start a session, read history, connect an operator, and manage modes, use the group of methods imopenlines.session.*.
Operator. The line distributes inquiries among operators from the queue. Queue configuration is done through imopenlines.config.*, while operator actions in an active dialog are handled through the group of methods imopenlines.operator.*. To transfer a dialog to an operator, use USER_ID, which can be obtained through the methods user.get and user.search.
External User. A client from the external channel is linked to the dialog through USER_CODE. This identifier allows the system to determine which chat and session the inquiry belongs to.
Message. The correspondence between the customer and the operator is associated with the chat and session. Send a message using imopenlines.crm.message.add, and save a quick reply using imopenlines.message.quick.save. To react to message changes, use Open Channels events.
Chatbot. The bot can send messages, transfer the dialog to an operator, and end the session using methods from the group imopenlines.bot.*.
CRM. Open channel dialogs can be linked to CRM objects. To retrieve CRM chats, use the group of methods imopenlines.crm.chat.*, and to create a lead based on the dialog outcome — the method imopenlines.crm.lead.create.
Universal Lists. Quick replies are associated with the identifier QUICK_ANSWERS_IBLOCK_ID. You can obtain it using the method imopenlines.config.get, and set it when creating or updating a line using the methods imopenlines.config.add and imopenlines.config.update.
#|
|| Identifier | Description | How to Obtain ||
|| CHAT_ID | Identifier of the open channel chat. Needed for actions with dialogs, messages, operators, and chatbots | imopenlines.session.open, imopenlines.dialog.get ||
|| SESSION_ID | Identifier of the session within the chat. Needed for reading history and managing the inquiry processing flow | imopenlines.session.history.get ||
|| USER_CODE | External code of the user from the communication channel. Needed to uniquely link the external client with the chat and session in the line | Generated by the external channel, used in imopenlines.session.open ||
|| USER_ID | Identifier of the Bitrix24 user. Needed for routing the dialog between operators and operator actions | user.get, user.search ||
|| LINE/CONFIG_ID | Identifier of the open channel. In the methods imconnector.*, the parameter LINE is usually used, while in the methods imopenlines.config.*, CONFIG_ID is used. This identifier is needed to retrieve line data, modify settings, and link connector messages | imopenlines.config.get, imopenlines.config.list.get, imopenlines.config.update ||
|| CONNECTOR | Identifier of the connector. Needed for the methods imconnector.* to work with the correct connected connector | Set during registration in imconnector.register in the ID parameter, then passed, for example, in imconnector.activate and imconnector.send.messages ||
|#
- Register and activate the connector: imconnector.register, imconnector.activate
- Create an open channel and link it to the channel: imopenlines.config.add, imconnector.connector.data.set
- Check message sending and connector status: imconnector.send.messages, imconnector.status
- Connect the line using the method imopenlines.network.join
- Check dialog processing: imopenlines.session.open, imopenlines.operator.answer, imopenlines.crm.message.add
To automate, connect events: Open Channels Events, Connectors Events
Scope:
imopenlines,imconnectorWho can execute methods and events: depending on the method, event, and access permissions to open channels
#| || Section | Description || || Open Channels | Methods for configuring lines, queues, dialogues, messages, and CRM links || || Open Channel Dialogues | Methods for working with chats, sessions, history, and dialogue modes || || Open Channel Operators | Methods for transferring, closing, and distributing dialogues between operators || || Open Channel Messages | Methods for sending messages and saving quick replies || || CRM Chats | Methods for searching CRM chats and managing participants || || Chatbots in Open Channels | Methods for automating dialogues using chatbots || || Open Channel Events | Events for Open Channel messages and sessions || |#
#| || Section | Description || || Open Channels Connectors | Methods for registering connectors, connecting channels, and exchanging messages || || Connector Events | Events for connector messages, dialogues, lines, and statuses || |#