Design for Platform API (0.0.1)

activities

Activities related endpoints

List of activities

Authorizations:
authorization
query Parameters
cursor
string or null

Pagination Cursor

campaignId
integer or null

Campaign unique identifier

leadId
integer or null

Lead unique identifier

createdTimestampFrom
string or null

Filter for start call datetime (not earlier than)

createdTimestampTo
string or null

Filter for start call datetime (not later than)

activityType
string or null

Limit output to specified activity type

Responses

Response samples

Content type
application/json

Generic example

{
  • "metadata": {
    },
  • "items": [
    ]
}

Activity details

Authorizations:
authorization
path Parameters
activityId
required
integer

Activity unique identifier

Responses

Response samples

Content type
application/json

Generic example

{
  • "type": "call.inbound",
  • "data": {
    }
}

campaign

List of Campaigns

Authorizations:
authorization
query Parameters
cursor
string or null

Pagination cursor

campaignId
integer or null

Campaign unique identifier

campaignType
string or null

Type of campaign

Responses

Response samples

Content type
application/json

Generic example

{
  • "pageNo": 0,
  • "inPage": 1,
  • "perPage": 50,
  • "data": [
    ]
}

Campaign Statistics

Authorizations:
authorization
path Parameters
campaignId
required
integer

Campaign unique identifier

Responses

Response samples

Content type
application/json

Generic example

{
  • "campaignId": 1,
  • "campaignName": "Support Outbound",
  • "agents": {
    },
  • "isActive": true,
  • "createdDate": "2020-07-06T13:55:06+10:00",
  • "lastUpdated": "2020-07-06T13:55:06+10:00",
  • "lists": [
    ],
  • "timestamp": "2021-08-01T13:55:06+10:00",
  • "timezone": "Australia/Sydney"
}

Campaign Statistics

Authorizations:
authorization
path Parameters
campaignId
required
integer

Campaign unique identifier

query Parameters
period
string or null

Statistic Period (hour, day) hour is a default value

Responses

Response samples

Content type
application/json

Generic example

{
  • "campaignId": 1,
  • "campaignName": "Support Inbound",
  • "maxCallWaitingTime": 18,
  • "averageWaitingTime": 9,
  • "estimatedCallWaitingTime": 270,
  • "agents": {
    },
  • "callsWaiting": 0,
  • "callsReceived": 2,
  • "callsAbandonedInWorkflow": 0,
  • "callsAbandonedInQueue": 0,
  • "timestamp": "2020-07-06T13:55:06+10:00",
  • "timezone": "Australia/Sydney"
}

media

Media-related endpoints

Get voicemails metadata

Authorizations:
authorization
path Parameters
mediaId
required
integer

Media unique identifier

Responses

Response samples

Content type
application/json
{
  • "mediaId": 0,
  • "mediaUri": "string",
  • "duration": 0
}

Download media file

Authorizations:
authorization
path Parameters
mediaId
required
integer

Media unique identifier

Responses

Response samples

Content type
application/json
"string"

Get Recording metadata

Authorizations:
authorization
path Parameters
mediaId
required
integer

Media unique identifier

Responses

Response samples

Content type
application/json

Generic example

{
  • "mediaId": 5364,
  • "mediaUri": "/platform-api/v3.0/media/5364",
  • "duration": 9,
  • "deleted": true,
  • "deletedTimestamp": "2023-11-14T09:37:10+11:00",
  • "deletedBy": 1059,
  • "deletionReason": "Removal reason"
}

leads

Lead-related endpoints

Get lead details

Authorizations:
authorization
path Parameters
leadId
required
integer

Lead Id

Responses

Response samples

Content type
application/json

Generic example

{
  • "leadId": 999,
  • "campaignId": 2,
  • "campaignName": "Sales Outbound",
  • "listId": 100,
  • "listName": "List One",
  • "timezone": "Australia/Sydney",
  • "completed": false,
  • "customerKey": "10000001",
  • "agentId": 1002,
  • "agentFullName": "John Doe",
  • "dataFields": {
    },
  • "lastStatusCode": 3,
  • "lastStatusDescription": "Abandoned",
  • "phones": [
    ],
  • "outcomeType": "preview",
  • "outcomesInfo": {
    },
  • "timestamps": {
    }
}

Update lead details

Authorizations:
authorization
path Parameters
leadId
required
integer

Lead Id

Request Body schema: application/json
required

Update lead details

listId
integer or null

List Id

customerKey
string or null

Customer Key

timezone
string or null

Time Zone

phone1
string or null

Phone 1

phone2
string or null

Phone 2

phone3
string or null

Phone 3

isCompleted
boolean or null

Whether to complete lead or no. Note: lead can only be completed. It can not be marked as non completed.

leadData
object or null

Lead Data

statusCode
integer or null

Status code

agentId
integer or null

Agent Id

nextAttemptTimestamp
string or null

Next Attempt Timestamp

Responses

Request samples

Content type
application/json
{
  • "listId": 0,
  • "customerKey": "string",
  • "timezone": "string",
  • "phone1": "string",
  • "phone2": "string",
  • "phone3": "string",
  • "isCompleted": true,
  • "leadData": { },
  • "statusCode": 0,
  • "agentId": 0,
  • "nextAttemptTimestamp": "string"
}

Delete Lead

Authorizations:
authorization
path Parameters
leadId
required
integer

Lead Id

Responses

Get error message of failed imports

Authorizations:
authorization
path Parameters
uuid
required
string or null

UUID generated by the /v3.0/leads/bulk/ endpoint

Responses

Response samples

Content type
application/json
{
  • "pageNo": 0,
  • "limit": 0,
  • "errorList": { },
  • "totalPages": 0,
  • "nextPageLink": "string"
}

Get the status of the bulk import process

Authorizations:
authorization
path Parameters
uuid
required
string or null

UUID generated by the /v3.0/leads/bulk/ endpoint

Responses

Response samples

Content type
application/json
{
  • "uuid": "string",
  • "status": "string",
  • "error_link": { },
  • "result": { }
}

Bulk Lead Create

Authorizations:
authorization
Request Body schema: application/json
required

Bulk Lead Create

Array of objects or null (RequestCreateLead)

Lead Data

Responses

Request samples

Content type
application/json
{
  • "leads": [
    ]
}

Response samples

Content type
application/json
{
  • "uuid": "string",
  • "status": "string"
}

List of lists

Authorizations:
authorization
query Parameters
cursor
string

Pagination Cursor

campaignId
integer

Campaign unique identifier

Responses

Response samples

Content type
application/json

Generic example

{
  • "metadata": {
    },
  • "items": [
    ]
}

Create lead list

Authorizations:
authorization
Request Body schema: application/json
required

Create lead list

listName
required
string

List name

campaignId
required
integer

Campaign id of list

Responses

Request samples

Content type
application/json
{
  • "listName": "string",
  • "campaignId": 0
}

Response samples

Content type
application/json
{
  • "listName": "string",
  • "campaignId": 0,
  • "listId": 0
}

Get list detail

Authorizations:
authorization
path Parameters
listId
required
integer

List Id

Responses

Response samples

Content type
application/json

Generic example

{
  • "id": 1,
  • "name": "List One",
  • "campaignId": 99,
  • "campaignName": "Campaign Ninty Nine",
  • "inDialler": true,
  • "weight": 1,
  • "timestamps": {
    }
}

List of Leads

Authorizations:
authorization
query Parameters
cursor
string or null

Pagination Cursor

campaignId
integer or null

Campaign unique identifier

listId
integer or null

List unique identifier

statusCode
integer or null

status code identifier

uploadedTimestampFrom
string or null

Filter for uploaded lead datetime (not earlier than)

uploadedTimestampTo
string or null

Filter for uploaded lead datetime (not later than)

customerKey
string or null

External id field

phone1
string or null

Filter for phone1 (in E164 format)

Responses

Response samples

Content type
application/json

Generic example

{
  • "metadata": {
    },
  • "items": [
    ]
}

Create lead

Authorizations:
authorization
Request Body schema: application/json
required

Create lead

listId
required
integer

List Id

customerKey
string or null

Customer Key

timezone
string or null

Time Zone

phone1
string or null

Phone 1

phone2
string or null

Phone 2

phone3
string or null

Phone 3

nextAttemptTimestamp
string or null <date-time>

Scheduled date and time for attempt

leadData
object or null

Lead Data

statusCode
integer or null

Status code

agentId
integer or null

Agent Id

Responses

Request samples

Content type
application/json
{
  • "listId": 0,
  • "customerKey": "string",
  • "timezone": "string",
  • "phone1": "string",
  • "phone2": "string",
  • "phone3": "string",
  • "nextAttemptTimestamp": "2019-08-24T14:15:22Z",
  • "leadData": { },
  • "statusCode": 0,
  • "agentId": 0
}

Response samples

Content type
application/json
{
  • "leadId": 0,
  • "inDialler": true
}

Reprocess accepted batch

Authorizations:
authorization
path Parameters
uuid
required
string or null

UUID generated by the /v3.0/leads/bulk/ endpoint

Responses

Response samples

Content type
application/json
{
  • "uuid": "string",
  • "status": "string"
}

customer

Customer-related endpoints

Delete Customer details

Authorizations:
authorization
query Parameters
phoneNumber
string or null

Phone Number

emailAddress
string or null

Email Address

Responses

Response samples

Content type
application/json
{
  • "callData": {
    },
  • "emailData": {
    },
  • "leadData": {
    }
}

users

List of Users

Authorizations:
authorization
query Parameters
cursor
string or null

Pagination Cursor

userType
string or null

The type of user (agent/user)

accountActive
boolean or null

Whether the user account is active or not

Responses

Response samples

Content type
application/json
{
  • "metadata": {
    },
  • "items": [
    ]
}

availability

Update agent presence

Authorizations:
authorization
Request Body schema: application/json
required

Update agent presence

agentId
required
integer

Agent Id

available
required
boolean

Available

Responses

Request samples

Content type
application/json
{
  • "agentId": 0,
  • "available": true
}

Response samples

Content type
application/json
{
  • "agentId": 0,
  • "available": true
}

dialler

List of the dialler calls

Authorizations:
authorization
query Parameters
cursor
string or null

Pagination Cursor

campaignId
integer or null

Campaign unique identifier

leadId
integer or null

Lead unique identifier

dialledTimestampFrom
string or null

Filter for start call datetime (not earlier than)

dialledTimestampTo
string or null

Filter for start call datetime (not later than)

Responses

Response samples

Content type
application/json

Generic example

{
  • "metadata": {
    },
  • "items": [
    ]
}

Dialler call information

Authorizations:
authorization
path Parameters
attemptId
required
integer

Attempt Unique Identifier

Responses

Response samples

Content type
application/json

Generic example

{
  • "attemptId": 999,
  • "dialStatusId": 1,
  • "dialStatusName": "Answered",
  • "phoneIndex": 1,
  • "phoneNumber": "+61499999999",
  • "leadId": 9999,
  • "timestamps": {
    },
  • "type": "call.outbound",
  • "campaignId": 2,
  • "campaignName": "Sales Outbound",
  • "activityId": 110,
  • "parentActivityId": 109,
  • "rootActivityId": 108
}

call

Start/stop Call Recording

Authorizations:
authorization
Request Body schema: application/json
required

Start/stop Call Recording

agentId
required
integer

Agent id

recording
required
boolean

Recording status pause/start

Responses

Request samples

Content type
application/json
{
  • "agentId": 0,
  • "recording": true
}

Response samples

Content type
application/json
{
  • "agentId": 0,
  • "recording": true
}