Telephony: 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.
Bitrix24 telephony helps manage calls within the CRM: making and receiving calls, maintaining call history, linking calls to client records, and saving recordings.
The REST API supports two scenarios for working with telephony:
- Integration of external telephony — the application registers the line, reports the call, manages the record, and ends the call.
- Management of built-in telephony and SIP connector — the application works with SIP connections, outgoing lines, users, and call events.
Quick navigation: all methods and events
User documentation: How to start calling from Bitrix24: choosing a telephony connection method
How to Choose a Section
|
If you need |
Open the section |
|
Integrate external telephony via REST |
|
|
Manage SIP connections, lines, and SIP settings for employees |
|
|
Subscribe to external telephony events |
Connection with Other Objects
User. The identifier USER_ID links the call and SIP settings to the employee. You can obtain USER_ID using the user.get method. Pass USER_ID to telephony.externalCall.show and methods in the User Management section.
Call. The identifier CALL_ID is created in telephony.externalCall.register and is used in telephony.externalCall.show, telephony.externalCall.hide, telephony.externalCall.finish, telephony.externalCall.attachRecord, and telephony.call.attachTranscription.
CRM. The method telephony.externalCall.searchCrmEntities searches for CRM entities by phone number to link the call to the client record.
Line and SIP Connection. For built-in telephony scenarios, LINE_ID and CONFIG_ID are used. You can obtain LINE_ID using the voximplant.line.get method, and CONFIG_ID using the voximplant.sip.add and voximplant.sip.get methods. For complete context, refer to the sections Managing Lines and Managing SIP Connections.
How to Start Working with External Telephony
- Register a line using the telephony.externalLine.add method.
- When starting a call, invoke telephony.externalCall.register.
- If necessary, open the call record via telephony.externalCall.show.
- After the call ends, invoke telephony.externalCall.finish and pass the recording via telephony.externalCall.attachRecord.
- Subscribe to OnExternalCallStart and OnExternalCallBackStart if you need to handle call initiation from the CRM interface.
How to Start Working with Built-in Telephony and SIP Connector
- Create a SIP connection using the voximplant.sip.add method.
- Check the connection using the voximplant.sip.get and voximplant.sip.status methods.
- Obtain a list of available lines using the voximplant.line.get method.
- Set the default outgoing line using voximplant.line.outgoing.set or voximplant.line.outgoing.sip.set.
- For employees, obtain SIP settings using the voximplant.user.get method and, if necessary, activate the SIP device using voximplant.user.activatePhone.
- Subscribe to events OnVoximplantCallInit, OnVoximplantCallStart, OnVoximplantCallEnd if you need to handle the call lifecycle.
Widgets
You can embed an application into the call record and display the operator interface right during the conversation.
Limitations and Checks
- The methods telephony.externalCall.register and telephony.externalCall.finish work only in the context of an application.
- In telephony.externalCall.register, pass a unique
EXTERNAL_CALL_IDfor each physical call to avoid receiving an existingCALL_IDwhen re-registering within 30 minutes. - Call telephony.externalCall.attachRecord after telephony.externalCall.finish when the recording is ready.
- Call telephony.call.attachTranscription for a completed call.
- After voximplant.line.outgoing.set, check the actual line using voximplant.line.outgoing.get.
Overview of Methods and Events
Scope:
telephonyWho can execute the method: depending on the method
External Telephony
|
Method |
Description |
|
Registers an external line |
|
|
Modifies an external line |
|
|
Returns a list of external lines |
|
|
Deletes an external line |
|
|
Searches CRM client entities by phone number |
|
|
Registers the start of a call |
|
|
Opens the call record for the user |
|
|
Hides the call record for the user |
|
|
Ends the call |
|
|
Attaches the call recording |
|
|
Adds a transcription of the recording to the call |
|
Event |
Triggered |
|
When clicking on a phone number in CRM entities to make an outgoing call |
|
|
When filling out the CRM callback form |
SIP and Built-in Telephony
|
Method |
Description |
|
Initiates a callback |
|
|
Initiates an auto-call and plays an MP3 file from a URL |
|
|
Initiates an auto-call and reads the specified text to the recipient using speech synthesis |
|
|
Returns a list of available voices for speech synthesis |
|
|
Returns links for navigating telephony pages |
|
|
Returns a list of calls |
|
Event |
Triggered |
|
When initializing a call manually or via methods voximplant.callback.start, voximplant.infocall.startwithsound, voximplant.infocall.startwithtext, telephony.externalCall.register |
|
|
When the conversation starts: operator answers on incoming and recipient answers on outgoing calls |
|
|
When the conversation ends and is recorded in history or via the telephony.externalCall.finish method |
Managing SIP Connections
|
Method |
Description |
|
Creates a SIP connection linked to the application |
|
|
Updates an existing SIP connection |
|
|
Returns a list of SIP connections created by the application |
|
|
Returns the status of SIP registration for the cloud PBX |
|
|
Deletes an existing SIP connection |
|
|
Returns the current status of the SIP connector |
Managing Lines
|
Method |
Description |
|
Returns a list of available outgoing lines |
|
|
Returns the identifier of the current default outgoing line |
|
|
Sets the default outgoing line |
|
|
Sets the default outgoing SIP line |
Managing Users
|
Method |
Description |
|
Returns user settings |
|
|
Sets the employee's SIP device presence flag |