Get the List of Available Call Card Interface States CallCardGetListUiStates

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: placement — registration of the placement, telephony — registration of the call that raises the card

Who can execute the command: any user

The CallCardGetListUiStates command returns the list of available interface states of the call card.

The command operates within the application context in the PAGE_BACKGROUND_WORKER placement. This is a JS interface command, not a REST method: it cannot be invoked with a request to /rest/.

How to Call the Command

The command is invoked from the widget with the BX24.placement.call method. The third argument is the callback function, which receives the result of the command.

BX24.placement.call('CallCardGetListUiStates', {}, function (result) {
            console.log(result);
        });
        

Command Parameters

The command takes no parameters. Pass an empty object {} as the second argument.

Code Examples

How to Use Examples in Documentation

It is recommended to call the command after the BackgroundCallCard::initialized event

BX24.ready(function () {
            BX24.init(function () {
                BX24.placement.call('CallCardGetListUiStates', {}, function (result) {
                    console.log(result);
                });
            });
        });
        
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide)
        import type { B24Frame } from '@bitrix24/b24jssdk'
        
        declare const $b24: B24Frame
        
        const uiStates = await $b24.placement.call('CallCardGetListUiStates') as string[]
        
        console.log(uiStates)
        
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
        <script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
        <script>
          document.addEventListener('DOMContentLoaded', async () => {
            const $b24 = await B24Js.initializeB24Frame()
        
            const result = await $b24.placement.call('CallCardGetListUiStates')
        
            console.log(result)
          })
        </script>
        

Command Result

[
            "incoming",
            "transferIncoming",
            "outgoing",
            "connectingIncoming",
            "connectingOutgoing",
            "connected",
            "transferring",
            "transferFailed",
            "transferConnected",
            "error",
            "moneyError",
            "redial"
        ]
        

Returned Data

The root element of the response is an array of strings with the available interface states of the card.

Possible values:

  • incoming — incoming call
  • transferIncoming — incoming call transfer
  • outgoing — outgoing call
  • connectingIncoming — connecting an incoming call
  • connectingOutgoing — connecting an outgoing call
  • connected — connection established
  • transferring — the call is being transferred
  • transferFailed — call transfer error
  • transferConnected — the call transfer was connected successfully
  • error — call error
  • moneyError — an error caused by insufficient funds
  • redial — redial

Errors

The CallCardGetListUiStates command has no error codes of its own: it either runs or is not invoked at all.

  • If the widget is open outside the PAGE_BACKGROUND_WORKER placement, the placement interface ignores the unknown command and the callback function is not invoked
  • Check the command name with the correct capitalization: the list of commands available in the current placement is returned by BX24.placement.getInterface

Continue Learning