Action APIs
These endpoints allow external systems to initiate contact center actions — placing outbound calls on behalf of logged-in agents and scheduling callbacks submitted through web forms or third-party platforms.
All requests are authenticated using a Service User bearer token scoped to CCaaS.
For rate limiting rules and a full list of expected response statuses, see API Limits & Statuses.
Click to Dial
Triggers an outbound call for a specified agent who is currently logged into the Contact Center Agent Client.
When the agent is using the Xima softphone (WebRTC), the call is placed immediately. When the agent is on a UC phone, the system first rings the agent's extension — once answered, the outbound call is then initiated to the target number.
Endpoint
POST /rest/api/v1/agents/{extension}/click-to-dialPath Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
extension | string | Yes | The agent's extension number |
Headers
| Header | Value | Required | Description |
|---|---|---|---|
Content-Type | application/json | Yes | Response returned as JSON |
Authorization | Bearer | Yes | The Service User API bearer token |
Host | <hostname>.xima.cloud | Yes | The FQDN |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
numberToDial | string | Yes | The number or extension the agent should dial, formatted as the agent would dial it. |
outboundCallerId | string | No | The outbound caller ID the call should present. Must be a number registered in CCaaS. |
externalPrefix | string | No | The external dial prefix (e.g., 9). |
Outbound Caller IDThe
outboundCallerIdvalue must be a number registered in CCaaS as an available outbound number for the agent. To use whatever the agent has most recently selected in CC-Agent Client instead, see Selected Outbound Number.
Request
POST /rest/api/v1/agents/{extension}/click-to-dial HTTP/1.1
Host: <hostname>.xima.cloud
Content-Type: application/json
Authorization: Bearer <api_bearer_token>
{
"numberToDial": "",
"outboundCallerId": "",
"externalPrefix": ""
}Response
Returns 204 No Content on success.
Available Outbound Caller IDs
Returns all outbound caller IDs available to the specified agent, along with the currently selected outbound number.
Endpoint
GET /rest/api/v1/agents/{extension}/outbound-caller-idsPath Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
extension | string | Yes | The agent's extension number |
Headers
| Header | Value | Required | Description |
|---|---|---|---|
Authorization | Bearer | Yes | The Service User API bearer token |
Host | <hostname>.xima.cloud | Yes | The FQDN |
Request
GET /rest/api/v1/agents/{extension}/outbound-caller-ids HTTP/1.1
Host: <hostname>.xima.cloud
Authorization: Bearer <api_bearer_token>Response
Returns a JSON object containing the agent's currently selected outbound caller ID and the full list of available outbound caller IDs.
{
"selectedOutboundCallerId": {
"label": "",
"outboundCallerId": ""
},
"outboundCallerIds": [
{
"label": "",
"outboundCallerId": ""
},
{
"label": "",
"outboundCallerId": ""
}
]
}Selected Outbound Number
When the agent has multiple available outbound numbers, this variant uses whichever number the agent has currently selected in CC-Agent Client rather than specifying one explicitly.
Endpoint
POST /rest/api/v1/agents/{extension}/click-to-dialPath Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
extension | string | Yes | The agent's extension number |
Headers
| Header | Value | Required | Description |
|---|---|---|---|
Content-Type | application/json | Yes | Response returned as JSON |
Authorization | Bearer | Yes | The Service User API bearer token |
Host | <hostname>.xima.cloud | Yes | The FQDN |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
numberToDial | string | Yes | The external party number to dial. |
useSelectedOutboundCallerId | boolean | No | When set to true, uses the agent's currently selected outbound caller ID. Default is false. |
Request
POST /rest/api/v1/agents/{extension}/click-to-dial HTTP/1.1
Host: <hostname>.xima.cloud
Content-Type: application/json
Authorization: Bearer <api_bearer_token>
{
"numberToDial": "",
"useSelectedOutboundCallerId": <true/false>
}Response
Returns 204 No Content on success.
Update Agent's Selected Outbound Caller ID
Sets the agent's active outbound caller ID programmatically. The agent will see the updated label and number reflected in CC-Agent Client. If followed immediately by a Click to Dial request using useSelectedOutboundCallerId, the updated number will be used for the outbound call.
Endpoint
POST /rest/api/v1/agents/{extension}/selected-outbound-caller-idPath Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
extension | string | Yes | The agent's extension number |
Headers
| Header | Value | Required | Description |
|---|---|---|---|
Content-Type | application/json | Yes | Response returned as JSON |
Authorization | Bearer | Yes | The Service User API bearer token |
Host | <hostname>.xima.cloud | Yes | The FQDN |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
label | string | Yes | The label assigned to the outbound caller ID in CCaaS. |
outboundCallerId | string | Yes | The outbound caller ID number to set as active. |
Request
POST /rest/api/v1/agents/{AgentExt}/selected-outbound-caller-id HTTP/1.1
Host: <hostname>.xima.cloud
Content-Type: application/json
Authorization: Bearer <api_bearer_token>
{
"label": "",
"outboundCallerId": ""
}Response
Returns 204 No Content on success.
Callback API
Schedules a callback for a specified skill group. When a callback is scheduled via this endpoint, the system follows the skill's existing queue callback rules — the placeholder enters the queue immediately and an outbound call is placed when the interaction reaches the front and an agent is available.
This endpoint is primarily used for online form submissions, allowing a website or external system to request a callback on behalf of a visitor without the caller waiting on hold.
Best PracticesUse the Reserve Agent callback strategy — With Wait in Queue, callbacks can reach the front of the queue after hours when no agents are logged in. Reserve Agent requires an available agent before the outbound call is initiated.
Use a dedicated skill group for API callbacks — Each form-submitted callback logs as a zero-second inbound call to the target skill. Using a dedicated skill keeps API-originated callbacks separate from traditional inbound traffic and simplifies reporting.
Build a dedicated language pack for the skill — Default language packs include callback greetings that may not be appropriate for form-submitted callbacks. A custom language pack can better greet the customer in context.
Endpoint
POST /rest/api/v1/callbackHeaders
| Header | Value | Required | Description |
|---|---|---|---|
Content-Type | application/json | Yes | Response returned as JSON |
Authorization | Bearer | Yes | The Service User API bearer token |
Host | <hostname>.xima.cloud | Yes | The FQDN |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
skill | string | Yes | The exact name of the skill group to schedule the callback in. Must match an existing skill name exactly. |
callbackNumber | string | Yes | The number the system will dial when attempting to reach the requesting party. |
Request
POST /rest/api/v1/callback HTTP/1.1
Host: <hostname>.xima.cloud
Content-Type: application/json
Authorization: Bearer <api_bearer_token>
{
"skill": "",
"callbackNumber": ""
}Response
Returns 204 No Content on success.
