Queue API

Queue API

The Queue API provides complete queue management functionality for outbound campaigns, enabling record creation, updates, searching, and deletion within the dialer queue system.


Get Queue Record

GET /Advanced Dialer/api/queue/{id}

Retrieves a specific queue record by its unique ID.

Path Parameters

ParameterTypeDescription
idintegerThe unique identifier of the queue record.

Example Request

curl --request GET \
     --url 'https://api.talkdeskapp.com/Advanced Dialer/api/queue/12345' \
     --header 'Ocp-Apim-Subscription-Key: YOUR_API_KEY'

Response Example

{
  "statusCode": 0,
  "message": null,
  "payload": {
    "id": 12345,
    "obCampaignId": 101,
    "customerId": "CUST_001",
    "customerPrefix": "SALES",
    "state": 0,
    "timesCalled": 1,
    "agentId": 1001,
    "retryTime": "2024-03-20T14:30:00Z",
    "telephone": "+1-555-123-4567",
    "telephoneName": "Home",
    "priority": "Normal",
    "active": true
  }
}

Create Queue Records

POST /Advanced Dialer/api/queue/create

Creates new records in the outbound queue for campaign processing. This endpoint accepts an array of records for batch processing.

Request Body (Array)

FieldTypeDescription
listIdintegerThe ID of the campaign list to attach the record to.
customerPrefixstringThe tenant/partition prefix for the customer.
customerIdstringThe unique ID of the customer record.
retryTimestringISO-8601 timestamp for when the record should be dialed.
prioritystringDialing priority (e.g., High, Normal, Low).

Example Request

curl --request POST \
     --url 'https://api.talkdeskapp.com/Advanced Dialer/api/queue/create' \
     --header 'Content-Type: application/json' \
     --header 'Ocp-Apim-Subscription-Key: YOUR_API_KEY' \
     --data '[
  {
    "listId": 101,
    "customerPrefix": "SALES",
    "customerId": "CUST_002",
    "state": 0,
    "timesCalled": 0,
    "retryTime": "2024-03-20T09:00:00Z",
    "telephone": "+1-555-987-6543",
    "telephoneName": "Mobile",
    "priority": "High",
    "leadID": 5001
  }
]'

Search Queue Records

POST /Advanced Dialer/api/queue/search

Searches for queue records using simple field matching.

Request Body

{
  "customerPrefix": "SALES",
  "state": 0,
  "active": true,
  "telephoneName": "Mobile"
}

Advanced Search with Expressions

PUT /Advanced Dialer/api/queue/search

Uses SQL-like expressions for complex searches across the queue.

Request Body (Plain Text)

TelephoneName=Mobile&State=(0,1)&Customer_ID=SALES%

Update Queue Records

PATCH /Advanced Dialer/api/queue/update

Updates multiple queue records with new information, such as state changes or new retry times.

Example Request

curl --request PATCH \
     --url 'https://api.talkdeskapp.com/Advanced Dialer/api/queue/update' \
     --header 'Content-Type: application/json' \
     --header 'Ocp-Apim-Subscription-Key: YOUR_API_KEY' \
     --data '[
  {
    "id": 12345,
    "state": 2,
    "agentId": 1002,
    "retryTime": "2024-03-21T15:00:00Z",
    "priority": "Low"
  }
]'

Add to Do Not Call

POST /Advanced Dialer/api/queue/dnc

Adds a telephone number to the Do Not Call list directly from queue operations.

Example Request

curl --request POST \
     --url 'https://api.talkdeskapp.com/Advanced Dialer/api/queue/dnc' \
     --header 'Content-Type: application/json' \
     --header 'Ocp-Apim-Subscription-Key: YOUR_API_KEY' \
     --data '{
  "telephone": "+1-555-111-2222",
  "expires": "2025-03-31T23:59:59Z",
  "flags": "Customer Request",
  "scope": "Global",
  "scopeId": "ALL",
  "source": "Queue API"
}'