Campaign Manager
Intoduction
Telestax Campaign Manager allows Communications Providers to deliver SMS campaign management solutions to Business Customers. Communication Providers can manage credits and users with different roles and capabilities while enabling Business Customers to send the same SMS to a list of phone numbers. For more information, access the general documentation.
This document covers the API(s) that are available to Communications Providers, thus helping to manage Business Customers, Users, and Credits while keeping track of usage.
Business Customers
Communications Providers manage Business Customers. They can create, update, read, and delete Business Customer accounts. The logical grouping of Business Customer accounts under a Communications Provider helps in managing the billing and invoices for the Business Customers.
Business Customer Status
At any given point in time, Business Customers will have one of the following statuses:
-
ACTIVE: Can use campaign manager.
-
INACTIVE: Once Business Customer is marked as INACTIVE:
-
All Business Customer Users are marked as INACTIVE and in the Restcomm Platform too they are marked as INACTIVE
-
Campaigns that are in Scheduled state will be marked as Failed
-
Campaigns that are InProgress will be stopped and marked as Failed. If there are any SMS that are yet to be delivered will not be attempted
-
In any case, credit is not returned.
-
If status is changed from INACTIVE to ACTIVE, all users in Campaign Manager and Restcomm will be moved back to ACTIVE.
-
No change in Campaigns/Credits should happen.
-
-
-
CLOSED: Once CLOSED, status cannot be changed to INACTIVE or ACTIVE.
-
Business Customer users are CLOSED in the Restcomm Platform too.
-
Campaigns that are in Scheduled state will be marked as Failed
-
Campaigns that are InProgress will be stopped and marked as Failed. If there are any SMS that are yet to be delivered will also fail.
-
In any case, credit is not returned.
-
Eventually once CLOSED all resources associated with Business Customers will be Deleted. However as of today resources are still kept in the database.
|
The following diagram shows the state transition.

Create Business Customer
This endpoint will be used to create a Business Customer in the Campaign Manager application. Create Business Customer will add unique Business Customer names for given Communications Providers.
Request Parameters
Parameter | Description |
---|---|
enterpriseAdmin |
Business Customer User data explained in the table below that will be assigned as the admin of this business customer.A subaccount will be created on Restcomm with these values. |
name |
Mandatory name of Business Customer. Name must be unique within a given Communication Provider Organisation. |
configuration |
Optional. Represents SMS/sec throttling assigned to the Business Customer. If not passed, the default is to use maximum throttling available at a given point of time. Configuration should be passed as JSON String body like below
|
status |
Optional. Status of the Business Customer. Default value is ACTIVE. Possible values are ACTIVE and INACTIVE |
When a Business Customer is added, that account will have 0 credits. Please review the Manage Credits section to manage credits for Business Customers.
|
Business Customer Admin Parameters
Business Customer Admin data Parameter | Description |
---|---|
password |
Business Customer Admin password |
name |
Friendly name of the Business Customer admin |
emailId |
Business Customer’s Admin User email ID |
If a new Sub Account being added is already present in Restcomm Core, that Sub Account will now have access to Campaign Manager, however the password will not be changed. |
Response Body
The Response Body will carry Code, corresponding message, and data of the Business Customer if it was successfully created. HTTP response will be 201 Created (OK).
The response returned is the JSON body as shown in the example below. Parameters are listed below.
Parameter | Description |
---|---|
data |
Business Customer data as explained in the Data Parameter below. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Data Parameter
Data Parameter | Description |
---|---|
enterpriseAdminSid |
Restcomm Account SID created under Restcomm for Business Customer Admin user. |
sid |
Unique Business Customer ID. |
accountEmail |
Unique Restcomm Account that created the Business Customer. |
dateCreated |
Timestamp when this Business Customer was created. |
dateUpdated |
Timestamp when this Business Customer was updated. |
name |
Name of this Business Customer. |
uri |
Unique URI that you can call to get only this specific Business Customer. |
credit |
Credit associated with the Business Customer. |
configuration |
Configuration for the Business Customer. As of today only |
status |
Status of the Business Customer as explained in Business Customer Status section. |
enterpriseAdminEmail |
Email ID of Business Customer Admin. |
Create Business Customer API can also return an Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following Errors can be returned.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
5000 |
400 |
Error in creating subaccount on Restcomm |
If any error occurs on the Restcomm side. Error messages from Restcomm will be passed if available. |
Create Business Customer, Update Business Customer |
4050 |
409 |
Enterprise name not unique |
Business Customer name already exists in the database |
Create Business Customer, Update Business Customer |
4001 |
400 |
User not unique |
User already exists |
Create Business Customer, Update Business Customer |
Example
{ "name":"Test Enterprise 7", "configuration":"{\"campaignManager\": {\"throttle\": \"10\"}}", "enterpriseAdmin":{ "emailId":"EntpUser1@testent7.com", "password":"Telestax@123", "name":"Test Ent7 User1" } }
From the bash terminal you can run the command below:
curl -X POST \ https://yourdomain.com/campaignmanager/enterprises \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -d '{ "name": "Test Enterprise 7", "configuration": "{\"campaignManager\": {\"throttle\": \"10\"}}", "enterpriseAdmin": { "emailId": "EntpUser1@testent7.com", "password": "Telestax@123", "name": "Test Ent7 User1" }’
If creation of Business Customer is successful, below is the response returned:
{ "data":{ "sid":"ENd32f9955825543d5a7e4d1bdb9f56b5b", "dateUpdated":"2020-09-11T05:23:32+0000", "dateCreated":"2020-09-11T05:19:55+0000", "accountSid":"ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail":"cspadmin1@nmorgtest1.com", "uri":"/campaignmanager/enterprises/search/ENd32f9955825543d5a7e4d1bdb9f56b5b", "name":"Test Enterprise 7", "credit":0, "configuration":"{\"campaignManager\": {\"throttle\": \"10\"}}", "status":"ACTIVE", "enterpriseAdminSid":"RCS7e9130b1534e45ca96c5a840fd47e645", "enterpriseAdminEmail":"EntpUser1@testent7.com" }, "code":200, "message":"OK" }
If creation fails, below response is returned with corresponding HTTP Error Code
{ "code":4050, "message":"Enterprise name not unique", "data":{ "name":"Test Enterprise 7", "configuration":"{\"campaignManager\": {\"throttle\": \"10\"}}", "enterpriseAdmin":{ "emailId":"EntpUser1@testent7.com", "password":"Telestax@123", "name":"Test Ent7 User1" } } }
Update Business Customer
This endpoint will be used to update a existing Business Customer.
Request Parameters
Parameter | Description |
---|---|
status |
Status of Business Customer can be updated either to ACTIVE or INACTIVE |
name |
MOptional name of Business Customer. Names must be unique within a given Communication Provider Organisation. |
configuration |
Optional. SMS/sec throttling assigned to the Business Customer. If not passed or 0, the default is to use maximum throttling available at a given point of time. Configuration should be passed as JSON String body like below
|
Response Body
The response body will contain code, corresponding message and data of Business Customer if it was successfully updated. The HTTP response will be 201 Created (OK).
The response returned is the JSON body as shown in the example below. All parameters are listed below.
Parameter | Description |
---|---|
data |
Business Customer data as explained in the Data Parameter of Create Business Customer. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Update Business Customer API can also return an Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following are the Errors that it can return.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4051 |
409 |
Enterprise not found |
Business Customer Id not found |
Update Business Customer, Delete Business Customer |
4050 |
409 |
Enterprise name not unique |
Business Customer name already exists in database |
Create Business Customer, Update Business Customer |
Example
{ "configuration": "{\"campaignManager\": {\"throttle\": \"2\"}}" }
From the bash terminal you can run the command below:
curl -X PUT \ https://yourdomain.com/campaignmanager/enterprises/ENb6eb071d21124dbab20b095c25f1274f \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -d '{ "configuration": "{\"campaignManager\": {\"throttle\": \"2\"}}" }’
If creation of Business Customer is successful, below is the response returned:
{ "data":{ "sid":"ENb6eb071d21124dbab20b095c25f1274f", "dateUpdated":"2020-09-11T05:23:32+0000", "dateCreated":"2020-09-11T05:19:55+0000", "accountSid":"ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail":"cspadmin1@nmorgtest1.com", "uri":"/campaignmanager/enterprises/search/ENb6eb071d21124dbab20b095c25f1274f", "name":"Test Enterprise 7", "credit":0, "configuration":"{\"campaignManager\": {\"throttle\": \"2\"}}", "status":"ACTIVE", "enterpriseAdminSid":"RCS7e9130b1534e45ca96c5a840fd47e645", "enterpriseAdminEmail":"EntpUser1@testent7.com" }, "code":200, "message":"OK" }
If update fails, below response is returned with corresponding HTTP Error Code
{ "code":4050, "message":"Enterprise name not unique", “data”:{ "name": "Test Enterprise 7" } }
Delete Business Customer
This endpoint will be used to delete an existing Business Customer.
Request Parameters
Parameter | Description |
---|---|
enterpriseSid |
SID to uniquely identify a Business Customer |
Deleting a Business Customer will mark status as CLOSED. |
Response Body
Response Body will carry Code, corresponding message, and data of the Business Customer account if it was successfully deleted. HTTP response will be 200 OK.
The response returned is the JSON body as shown in the example below. All parameters are listed below.
Parameter | Description |
---|---|
data |
Business Customer data as explained in the Data Parameter of Create Business Customer |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Delete Business Customer API can also return an Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following are the Errors that it can return.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4051 |
409 |
Enterprise not found |
Business Customer Id not found |
Update Business Customer, Delete Business Customer, Get Business Customer |
Example
The bash terminal you can run the command below:
curl -X DELETE \ https://yourdomain.com/numbermasking/enterprises/ENb6eb071d21124dbab20b095c25f1274f \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \
If deletion of Business Customer is successful, below is the response returned:
{ "data":{ "sid":"ENd32f9955825543d5a7e4d1bdb9f56b5b", "dateUpdated":"2020-09-11T05:23:32+0000", "dateCreated":"2020-09-11T05:19:55+0000", "accountSid":"ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail":"cspadmin1@nmorgtest1.com", "uri":"/campaignmanager/enterprises/search/ENd32f9955825543d5a7e4d1bdb9f56b5b", "name":"Test Enterprise 7", "credit":0, "configuration":"{\"campaignManager\": {\"throttle\": \"2\"}}", "status":"ACTIVE", "enterpriseAdminSid":"RCS7e9130b1534e45ca96c5a840fd47e645", "enterpriseAdminEmail":"EntpUser1@testent7.com" }, "code":200, "message":"OK" }
If delete fails, below response is returned with corresponding HTTP Error Code
{ "code":4051, "message":"Enterprise Not Found", “data”:{ “sid” :” ENb6eb071d21124dbab20b095c25f1274f” } }
Get List of Business Customers
This endpoint will be used to search a list of Business Customers.
Paging
The following paging parameters are supported
Query Parameter | Description |
---|---|
pageSize |
Number of records returned per page |
page |
Which page of Business Customer records to return, starting from 0. |
If search API is called without page and pageSize, by default pageSize will be 10 and page will be 0 to avoid retrieving all data in a single API call. |
Filtering
Following filtering parameters are supported:
Query Parameter | Description |
---|---|
endTime |
Optional parameter. Only show Business Customers that were created on this date/time or earlier, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-06T02:10:03) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-06). When only a date is provided the time is assumed to be at midnight of the given date. Note that the given date/time is inclusive and is assumed to be in UTC timezone. |
name |
Optional parameter. Only show Business Customers that match the name text, partially or fully. |
Status |
Optional parameter. Only show Business Customers that have this particular status. |
startTime |
Optional parameter. Only show Business Customers that were created on this date/time or later, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-05T22:45:32) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-05). When only a date is provided the time is assumed to be at midnight of the given date. Note: that the given date/time is inclusive and is assumed to be in UTC timezone. |
Sorting Information
You can use the SortBy GET query parameter to determine which attribute you want to sort by and in which direction; direction can either be 'asc' for ascending and 'desc' for descending sort ordering. Here’s the overall format: SortBy=<sorting attribute>:<direction>. If no direction parameter is provided, then the listing of calls is sorted by the attribute in ascending order. You can sort by the attributes listed below:
Parameter | Description |
---|---|
dateCreated |
Sort by created date |
name |
Sort by name |
Response Body
Response Body will carry Code, corresponding message, and data of the User if it was successfully fetched. HTTP response will be 200 OK.
The response returned is the JSON body as shown in the example below. Parameters are as explained below
Code | Description |
---|---|
data |
data of search as explained in Data parameters in create business customer |
code |
Sub-error code for response |
message |
Message describing error if error occured or success message |
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4051 |
409 |
Enterprise not found |
Business Customer SID doesn’t exist in the system |
Update Business Customer, Delete Business Customer, Get Business Customer |
Data Parameters
Data Parameter | Description |
---|---|
result |
Applications data as explained in Data Parameter |
pageSize |
Number of records returned per page. |
total |
Total Number of records |
page |
Which page of records to return. |
numPages |
Total number of pages |
start |
Starting offset of page |
end |
Ending offset of page |
firstPageUri |
Unique URI that you can call to get records in First page |
nextPageUri |
Unique URI that you can call to get records in next page |
uri |
Unique URI that you can call to get records |
Example
From the bash terminal you can run the command below:
curl -X GET \ https://yourdomain.com/campaignmanager/enterprise/search?name=Test Enterprise 7 \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json'
Below is the response returned:
{ "data":{ "result":[ { "sid":"ENd32f9955825543d5a7e4d1bdb9f56b5b", "dateUpdated":"2020-09-11T05:47:58+0000", "dateCreated":"2020-09-11T05:19:55+0000", "accountSid":"ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail":"cspadmin1@nmorgtest1.com", "uri":"/campaignmanager/enterprises/search/ENd32f9955825543d5a7e4d1bdb9f56b5b", "name":"Test Enterprise 7", "credit":0, "configuration":"{\"campaignManager\": {\"throttle\": \"2\"}}", "status":"ACTIVE", "enterpriseAdminSid":"RCS7e9130b1534e45ca96c5a840fd47e645", "enterpriseAdminEmail":"EntpUser1@testent7.com" } ], "pageSize":10, "total":1, "page":0, "numPages":1, "start":0, "end":0, "firstPageUri":"/campaignmanager/enterprises/search/?name=Test%20Enterprise%207&pageSize=10&page=0", "uri":"/campaignmanager/enterprises/search/?name=Test%20Enterprise%207&pageSize=10&page=0" }, "code":200, "message":"OK" }
Get Single Business Customer
Single Business Customer search API allows users to retrieve specific Business Customer.
Response Body
The response body will contain code, corresponding message and data of Business Customer if it was successfully deleted. The HTTP response will be 201 Created (OK).
The response returned is the JSON body as shown in the example below. All parameters are listed below.
Parameter | Description |
---|---|
data |
Business Customer data as explained in the Data Parameter of Create Business Customer. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4051 |
409 |
Enterprise not found |
Business Customer Id not found |
Update Business Customer, Delete Business Customer, Get Business Customer |
Example
From the bash terminal you can run the command below:
curl -X GET \ https://yourdomain.com/campaignmanager/enterprise/search/ENd32f9955825543d5a7e4d1bdb9f56b5b \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \
Below is the response returned:
{ "data":{ "sid":"ENd32f9955825543d5a7e4d1bdb9f56b5b", "dateUpdated":"2020-09-11T05:47:58+0000", "dateCreated":"2020-09-11T05:19:55+0000", "accountSid":"ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail":"cspadmin1@nmorgtest1.com", "uri":"/campaignmanager/enterprises/search/ENd32f9955825543d5a7e4d1bdb9f56b5b", "name":"Test Enterprise 7", "credit":0, "configuration":"{\"campaignManager\": {\"throttle\": \"2\"}}", "status":"ACTIVE", "enterpriseAdminSid":"RCS7e9130b1534e45ca96c5a840fd47e645", "enterpriseAdminEmail":"EntpUser1@testent7.com" }, "code":200, "message":"OK" }
User
User Role and Status
Communications Providers can set following roles for the Users:
-
CP_ADMINISTRATOR:
-
CRUD Business Customers (including credit and throttle)
-
CRUD CP_ADMINISTRATOR
-
CRUD BC_TURNKEY_ADMINISTRATOR
-
CRUD CP_PROVISIONING_AGENT
-
Read CDR and Usage Records for Business Customers (**)
-
-
CP_PROVISIONING_AGENT:
-
CRUD Business Customers (including credit and throttle)
-
CRUD BC_TURNKEY_ADMINISTRATOR
-
Read CDR and Usage Records for Business Customers (**)
-
-
BC_TURNKEY_ADMINISTARTOR:
-
CRUD campaign
-
CRUD BC_TURNKEY_ADMINISTRATOR
-
Read CDR and Usage Records (**)
-
(**) This feature will be released soon. |
Users can be in either in an ACTIVE, INACTIVE, or CLOSED state. If ACTIVE, users can carry out operations as explained above. If INACTIVE users cannot carry out any activity. Users can move between ACTIVE and INACTIVE. If CLOSED, users are permanently deleted.
Create User
This endpoint will be used to create users with specific roles as explained below.
The following rules apply:
-
If not present in Restcomm, calling Create User API will create a new Restcomm Sub -Account with the role as Administrator under logged in CP Admin account.
-
User, if present in Restcomm as Sub -Account under existing CP Admin Account, calling Create API will just provision the Campaign Manager Application to allow the user to sign into the Campaign Manager solution with a configured role.
Request Parameters
Parameter | Description |
---|---|
enterpriseSid |
SID of the Business Customer the user belongs to. It’s Mandatory if the role of the user is “BC_TURNKEY_ADMINSTRATOR”. For the rest of the role, even if this parameter is passed, it will be ignored. |
name |
Optional. Full name of the user being added. |
email ID |
Mandatory. Email ID of the user. |
password |
Mandatory. Password of the user. |
role |
Mandatory. Possible values are as explained in status section of User. |
status |
Optional. Will be set to ACTIVE if not passed. Possible values are: - ACTIVE |
throttle |
Optional. SMS/sec throttling assigned to only CP_ADMINISTRATOR role users. If not passed, the default is -1 which means use maximum throttling available at a given point of time. For example XXX as a Communications Provider has a limit with its own Service Provider on how many SMS/Sec they can do. The “throttle” set here for CP_ADMINISTRATOR makes sure this limit is adhered to. It’s set at CP_ADMINISTRATOR level and not Organisation level because BYOC is set at user level and for example XXX can have another CP_ADMINISTRATOR pointing to another Service Provider. |
Response Body
The response body will contain code, corresponding message, and data of Business Customer if it was successfully created. The HTTP response will be 201 Created (OK).
The response returned is the JSON body as shown in the example below. Parameters are listed below.
Parameter | Description |
---|---|
data |
User data as explained in the table below. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Data Parameter
Data Parameter | Description |
---|---|
enterpriseSid |
Sid of the Business Customer the user belongs to. Business Customer Sid will be only present for users with role |
sid |
Unique User ID. |
accountEmail |
Unique Restcomm Account that created the User. |
dateCreated |
Timestamp when the User was created. |
dateUpdated |
Timestamp when the User was updated. |
name |
Name of the User. |
emailId |
Email ID of the User. |
Role |
Role of the User. |
Status |
Status of the user. Possible values are: - ACTIVE |
throttle |
SMS/sec throttling assigned to only the CP Administrator. If not passed, the default is -1, which means use maximum throttling available at a given point of time. |
The Create User API can also return an Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following Errors can be returned.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4003 |
409 |
User Belong to another master account |
User Belong to another master account |
Create User, Update User |
4001 |
409 |
EmailId not unique |
A user already exists in the DB with provided emailId |
Create User, Update User |
4051 |
400 |
Enterprise not found |
Business Customer for which user is to be added is not found. |
Create User, Update User |
4002 |
409 |
User Role cannot be assigned to an enterprise. |
User Role cannot be assigned to a Business Customer |
Create User, Update User |
Example
{ "name" : "James", “emailId”:”test@telestax.com”, “status”:”ACTIVE”, “role”: “BC_Turnkey_Administration”, “enterpriseSid”: “EN801e792d86504368a9385314e8c5c4d6” }
From the bash terminal you can run the command below:
curl -X POST \ https://yourdomain.com/campaignmanager/user \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -d '{ "name" : "James", “accountEmail”:”test@telestax.com”, “status”:”ACTIVE”, “role”: “BC_Turnkey_Adminstrator”, “enterpriseSid”: “EN801e792d86504368a9385314e8c5c4d6” }’
If creation of User is successful, below is the response returned:
{ "data":{ "sid":"AAEb6eb071d21124dbab20b095c25f1274f", "accountEmail":"cspadmin1@nmorgtest1.com", "dateCreated":"2019-07-22 09:53:51", "dateUpdated":"2019-07-22 09:53:51", "name":"James", "emailId":"test@telestax.com", "status":"ACTIVE", "role":"BC_Turnkey_Adminstrator", "enterpriseSid":"EN801e792d86504368a9385314e8c5c4d", "uri":"/campaignmanager/user/search/AAEb6eb071d21124dbab20b095c25f1274f" }, "code":200, "message":"OK" }
If creation fails, below response is returned with corresponding HTTP Error Code
{ "code":460, "message":"Email Id not unique", "data":{ "name" : "James", "emailId":"test@telestax.com", "status":"ACTIVE", "role": "BC_Turnkey_Administrator", "enterpriseSid": "EN801e792d86504368a9385314e8c5c4d6" } }
Update User
This endpoint will be used to update an existing User.
Request Parameters
Parameter | Description |
---|---|
enterpriseSid |
Optional Business Customer id. If a user wants to move users from one Business Customer to another, pass the enterpriseId of the target Business Customer. It’s Mandatory if the role of the user is |
name |
Friendly name of the user being added |
role |
Role of the user as explained in User Role and Status section |
status |
Status of the user, could be one of the following: - ACTIVE |
throttle |
Optional. SMS/sec throttling assigned to only this CP Administrator . If not passed, the default is -1 which means use maximum throttling available at the given point of time. |
Response Body
The Response Body will carry the Code, corresponding message, and data of the User if it was successfully updated. HTTP response will be 200 OK.
The response returned is JSON body as shown in the example below. Parameters are as explained below.
Parameter | Description |
---|---|
data |
User data as explained in the Data Parameter of Create User. |
code |
Sub-error code for response. |
message |
Message describing error if error occurred or success message. |
The Update User API can also return an Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following Errors can be returned.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4050 |
409 |
User not found |
User SID doesn’t exist in the system |
Create User, Update User |
4001 |
409 |
Email ID not unique |
A user already exists in the DB with provided emailId |
Create User, Update User |
4051 |
409 |
Enterprise not found |
Business Customer for which user is to be added is not found. |
Create User, Update User |
Example
{ "name" : "John” }
From the bash terminal you can run the command below:
curl -X PUT \ https://cloud.restcomm.com/campaignmanager/user/AAEb6eb071d21124dbab20b095c25f1274f \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -d '{ "name" : "John” }’
If creation of Business Customer is successful, below is the response returned:
{ "data":{ "sid":"AAEb6eb071d21124dbab20b095c25f1274f", "accountEmail":"cspadmin1@nmorgtest1.com", "dateCreated":"2019-07-22 09:53:51", "dateUpdated":"2019-07-22 09:53:51", "name":"John", "emailId":"test@telestax.com", "status":"ACTIVE", "role":"BC_Turnkey_Adminstrator", "enterpriseSid":"EN801e792d86504368a9385314e8c5c4d6", "uri":"/campaignmanager/user/search/ AAEb6eb071d21124dbab20b095c25f1274f" }, "code":200, "message":"OK" }
If update fails, below response is returned with corresponding HTTP Error Code
{ "code":4051, "message":"Enterprise not found", "data":{ "name":"John" } }
Delete User
This endpoint will be used to delete an existing User.
Request Parameters
Parameter | Description |
---|---|
enterpriseSid |
SID of the user to be deleted |
Deleting User will mark status as CLOSED. |
Response Body
The Response Body will carry the Code, corresponding message, and data of the User if it was successfully deleted. HTTP response will be 200 OK.
The response returned is JSON body as shown in the example below. Parameters are as explained below.
Parameter | Description |
---|---|
data |
Business Customer data as explained in the Data Parameter of Create User. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
The Delete User API can also return the Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following Errors can be returned.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4005 |
409 |
User not found |
User SID doesn’t exist in the system |
Update User, Delete user, Get User |
Example
The bash terminal you can run the command below:
curl -X DELETE \ https://cloud.restcomm.com/campaignmanager/user/AAEb6eb071d21124dbab20b095c25f1274f \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json'
If User delete is successful, below is the response returned:
{ "data":{ "sid":"AAEb6eb071d21124dbab20b095c25f1274f", "accountEmail":"cspadmin1@nmorgtest1.com", "dateCreated":"2019-07-22 09:53:51", "dateUpdated":"2019-07-22 09:53:51", "name":"John", "emailId":"test@telestax.com", "status":"ACTIVE", "role":"BC_Turnkey_Adminstrator", "enterpriseSid":"EN801e792d86504368a9385314e8c5c4d6", "uri":"/campaignmanager/user/search/ AAEb6eb071d21124dbab20b095c25f1274f" }, "code":200, "message":"OK" }
If delete fails, below response is returned with corresponding HTTP Error Code
{ "code":470, "message":"User not found", "data":{ "sid":"AAEb6eb071d21124dbab20b095c25f1274f" } }
Get List of Users
This endpoint will be used to list an existing user.
Paging
The following paging parameters are supported
Query Parameter | Description |
---|---|
pageSize |
Number of records returned per page |
page |
Which page of Participants records to return, starting from 0. |
If the search API is called without page and pageSize, by default pageSize will be 10 and page will be 0 to avoid retrieving all data in a single API call. |
Filtering
The following filtering parameters are supported:
Query Parameter | Description |
---|---|
endTime |
Optional parameter. Only show Users that were created on this date/time or earlier, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-06T02:10:03) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-06). When only a date is provided the time is assumed to be at midnight of the given date. Note that the given date/time is inclusive and is assumed to be in UTC timezone. |
name |
Optional parameter. Only show Users that match the name text, partially or fully. |
emailID |
Optional parameter. Only show Users that match email text, partially or fully. |
Role |
Optional parameter. Only show users that have the particular role. |
enterpriseSid |
Optional Parameter. Only show users for the particular Business Customer. |
Status |
Optional parameter. Only show Users that have the particular status. |
startTime |
Optional parameter. Only show Users that were created on this date/time or later, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-05T22:45:32) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-05). When only a date is provided the time is assumed to be at midnight of the given date. Note: that the given date/time is inclusive and is assumed to be in UTC timezone. |
Sorting Information
You can use the SortBy GET query parameter to determine which attribute you want to sort by and in which direction; direction can either be 'asc' for ascending and 'desc' for descending sort ordering. Here’s the overall format: SortBy=<sorting attribute>:<direction>. If no direction parameter is provided, then the listing of calls is sorted by the attribute in ascending order. You can sort by the following attributes:
Parameter | Description |
---|---|
dateCreated |
Sort by created date |
name |
Sort by name |
Sort by email ID |
Response Body
The Response Body will carry Code, corresponding message and data of the User if it was successfully searched. HTTP response will be 200 OK.
The response returned is the JSON body as shown in the example below. Parameters are as explained below:
Data Parameter | Description |
---|---|
data |
Actual data in form of a list that matches the filter criteria. Data as explained in Data Parameter in create user. |
pageSize |
Number of records returned per page. |
total |
Total Number of records |
page |
Which page of records to return. |
numPages |
Total number of pages |
start |
Starting offset of page |
end |
Ending offset of page |
firstPageUri |
Unique URI that you can call to get records in First page |
nextPageUri |
Unique URI that you can call to get records in next page |
uri |
Unique URI that you can call to get records |
Example
From the bash terminal you can run the command below:
curl -X GET \ https://cloud.restcomm.com/campaignmanager/user/search?name=john\ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json'
Below is the response returned:
{ "data":[ { "sid":"AAEb6eb071d21124dbab20b095c25f1274f", "accountEmai":"aditya.dixit@telestax.com", "dateCreated":"2019-07-22 09:53:51", "dateUpdated":"2019-07-22 09:53:51", "name":"John", "emailId":"test@telestax.com", "status":"ACTIVE", "role":"BC_Turnkey_Administrator", "enterpriseSid":"EN801e792d86504368a9385314e8c5c4d6", "uri":"/campaignmanager/user/search/ AAEb6eb071d21124dbab20b095c25f1274f" } ], "page":0, "num_pages":3, "page_size":2, "total":6, "start":0, "end":1, "uri":"/campaignmanager/user/search", "first_page_uri":"/ campaignmanager/user/search?pageSize=2&page=0", "previous_page_uri":null, "next_page_uri":"/ campaignmanager/user/search?pageSize=2&page=1" }
Get Single User
Single User search API allows users to retrieve specific User.
Response Body
The Response Body will carry the Code, corresponding message, and data of the User if it was successfully deleted. HTTP response will be 200 OK.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4005 |
409 |
User not found |
User is not found |
Delete User, Update User, Get User |
The response returned is the JSON body as shown in the example below. All parameters are listed below.
Parameter | Description |
---|---|
data |
User data as explained in the Data Parameter of Create User. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Example
From the bash terminal you can run the command below:
curl -X GET \ https://cloud.restcomm.com/campaignmanager/user/search/AAEb6eb071d21124dbab20b095c25f1274f \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \
Below is the response returned:
{ "data":{ "sid":"AAEb6eb071d21124dbab20b095c25f1274f", "accountEmail":"cspadmin1@nmorgtest1.com", "dateCreated":"2019-07-22 09:53:51", "dateUpdated":"2019-07-22 09:53:51", "name":"John", "emailId":"test@telestax.com", "status":"ACTIVE", "role":"BC_Turnkey_Adminstrator", "enterpriseSid":"EN801e792d86504368a9385314e8c5c4d6", "uri":"/campaignmanager/user/search/ AAEb6eb071d21124dbab20b095c25f1274f" }, "code":200, "message":"OK" }
Manage Credits
Credit is always associated with a Business Customer.
Create Credit
This endpoint will be used to create new Credits for an existing Business Customer. Via this API call, a Communications Provider can Add or Reduce credits for a Business Customer.
Request Parameters
Parameter | Description |
---|---|
description |
Optional. Description explaining why this credit is added or reduced for later reference. |
enterpriseSid |
Mandatory. Business Customer for which Credit is getting created. |
addCredit |
Optional. Credit that must be added to existing Credit. Either addCredit or reduceCredit should be mandatorily passed. If both are passed, |
reduceCredit |
Optional. Credit that must be reduced from existing Credit. If the reduced amount is lower than existing Credit, credit can go to negative number. |
|
Response Body
The Response Body will carry the Code, corresponding message, and data of the Business Customer if it was successfully updated. HTTP response will be 200 OK.
The response returned is JSON body as shown in the example below. Parameters are as explained below.
Parameter | Description |
---|---|
data |
Credit data as explained in the Data Parameter below. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Data Parameter
Data Parameter | Description |
---|---|
enterpriseSid |
SID of the Business Customer. |
sid |
Unique SID of Credit |
dateCreated |
Timestamp when the Credit was created. |
dateUpdated |
Timestamp when the Credit was updated. |
accountSid |
Account Sid of Account that added/reduced this credit. |
accountEmail |
Email corresponding to accountSid |
description |
Description passed in request |
credit |
Credit that was added (+ve value) or reduced (-ve value) |
The add Credit API can also return the Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, the following Errors can be returned.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
4000 |
409 |
addCredit or reduceCredit parameter is missing |
Add Credit or Reduce Credit parameter is not specified |
Create Credit |
4051 |
409 |
Enterprise not found |
BBusiness Customer SID doesn’t exist in the system |
Create Credit, Update Business Customer, Delete Business Customer, Get Business Customer |
Example
{ "addCredit" :"10000" "description" :"Customer recharged for 10,000 units on 1 Aug 2020" }
From the bash terminal you can run the command below:
curl -X POST \ https://cloud.restcomm.com/campaignmanager/credits/ENb6eb071d21124dbab20b095c25f1274f \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \ -d '{ "addCredit" : "10000" “description”:”Customer recharged for 10,000 units on 1 Aug 2020” }’
If update of Credit is successful, below is the response returned:
{ "data":{ "sid":"ENCec4ef69e91294de48862db3772ab2959", "dateUpdated":"2020-08-31T07:42:53+0000", "dateCreated":"2020-08-31T07:42:53+0000", "accountSid":"ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail":"cspadmin1@nmorgtest1.com", "credit":100, "description":"Customer recharged for 10,000 units on 1 Aug 2020", "uri":"/campaignmanager/credit/search/ENCec4ef69e91294de48862db3772ab2959" }, "code":200, "message":"OK" }
If update fails, below response is returned with corresponding HTTP Error Code.
{ "code":4051, "message":"Enterprise not found", "data": "ENfda064f487ff4309b8b306d25adc6" }
Get List of Credits
This endpoint will be used to get list of Credits for the Business Customer.
Paging
The following paging parameters are supported.
Query Parameter | Description |
---|---|
pageSize |
Number of records returned per page |
page |
Which page of Participants records to return, starting from 0. |
If the search API is called without page and pageSize, by default pageSize will be 10 and page will be 0 to avoid retrieving all data in a single API call. |
Filtering
The following filtering parameters are supported:
Query Parameter | Description |
---|---|
endTime |
Optional parameter. Only show Credits that were created on this date/time or earlier, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-06T02:10:03) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-06). When only a date is provided the time is assumed to be at midnight of the given date. Note that the given date/time is inclusive and is assumed to be in UTC timezone. |
enterpriseSid |
Mandatory. Retrieve list of Credits for given Business Customer SID. |
type |
Optional parameter. Only show Credits that are either |
startTime |
Optional parameter. Only show Credits that were created on this date/time or later, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-05T22:45:32) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-05). When only a date is provided the time is assumed to be at midnight of the given date. Note: that the given date/time is inclusive and is assumed to be in UTC timezone. |
Sorting Information
You can use the SortBy GET query parameter to determine which attribute you want to sort by and in which direction; direction can either be 'asc' for ascending and 'desc' for descending sort ordering. Here’s the overall format: SortBy=<sorting attribute>:<direction>. If no direction parameter is provided, then the listing of calls is sorted by the attribute in ascending order. You can sort by the following attributes:
Parameter | Description |
---|---|
dateCreated |
Sort by created date |
Response Body
The Response Body will carry Code, corresponding message and data of the Credit if it was successfully fetched. HTTP response will be 200 OK.
The response returned is the JSON body as shown in the example below. Parameters are as explained below:
Data Parameter | Description |
---|---|
data |
Actual data in form of a list that matches the filter criteria. Data as explained in Data Parameter in create Credit. |
pageSize |
Number of records returned per page. |
total |
Total Number of records |
page |
Which page of records to return. |
numPages |
Total number of pages |
start |
Starting offset of page |
end |
Ending offset of page |
firstPageUri |
Unique URI that you can call to get records in First page |
nextPageUri |
Unique URI that you can call to get records in next page |
uri |
Unique URI that you can call to get records |
Example
From the bash terminal you can run the command below:
curl -X GET \https://cloud.restcomm.com/campaignmanager/credits/search?enterprriseSid=EN6c9dfebda23b403a959a99112437e785 \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json'
Below is the response returned:
{ "data": { "result": [ { "sid": "ENCd05ad50a49e445f5a4924f9862a5a6aa", "dateUpdated": "2020-09-04T07:57:44+0000", "dateCreated": "2020-09-04T07:57:44+0000", "accountSid": "ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail": "cspadmin1@nmorgtest1.com", "uri": "/campaignmanager/credits/ENCd05ad50a49e445f5a4924f9862a5a6aa", "description": "initial credits on 4th", "enterpriseSid": "ENc165d92e63f14fdf84666a9b8a57c805", "credit": 500 } ], "pageSize": 10, "total": 1, "page": 0, "numPages": 1, "start": 0, "end": 0, "firstPageUri": "/campaignmanager/credits/search/?enterpriseSid=ENc165d92e63f14fdf84666a9b8a57c805&pageSize=10&page=0", "uri": "/campaignmanager/credits/search/?enterpriseSid=ENc165d92e63f14fdf84666a9b8a57c805&pageSize=10&page=0" }, "code": 200, "message": "OK" }
Get Single Credit
The Single Credit search API allows users to retrieve a specific Credit.
Response Body
The Response Body will carry the Code, corresponding message, and data of the Credit if it was successfully searched. HTTP response will be 200 OK.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
472 |
409 |
Credit not found |
Credit SID doesn’t exist in the system |
Get Credit |
The response returned is the JSON body as shown in the example below. Parameters are listed below.
Parameter | Description |
---|---|
data |
Credit data as explained in the Data Parameter of Create Credit. |
code |
Sub-error code for response |
message |
Message describing error if error occurred or success message |
Example
From the bash terminal you can run the command below:
curl -X GET \ https://cloud.restcomm.com/campaignmanager/credits/search/ENCee320039e3e647eaa7df7cef5e3d6b55 \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json' \
Below is the response returned:
{ "data": { "sid": "ENC3807ff7ff73e46e7a9c9a95af3d85189", "dateUpdated": "2020-09-04T09:58:57+0000", "dateCreated": "2020-09-04T09:58:57+0000", "accountSid": ACb06dc1c0b555df46a02ccaea1cb11bc1", "accountEmail": "cspadmin1@nmorgtest1.com", "uri": "/campaignmanager/credits/ENC3807ff7ff73e46e7a9c9a95af3d85189", "description": "initial credits", "enterpriseSid": "EN671a5f2c6c5c4e88b814bdc23ca389bc", "credit": 500 }, "code": 200, "message": "OK" }
Campaign
Campaign Status
A campaign can be in one of the following states:
-
Initiating: The Campaign is getting created. For example setting up From numbers, To numbers and Body. Ideally the Campaign will remain in this state for a very short time. If there are any errors in processing
From
orTo
numbers, the Campaign will directly move to aFailed
state. -
Scheduled: The Campaign is Scheduled. This means the Campaign Manager has all the resources and data it needs to execute this Campaign when Scheduled time kicks in. The only option to move Campaign, via API call, from a Scheduled state is to Cancelled state.
-
Cancelled: When a scheduled Campaign is Cancelled.
-
InProgress: The Campaign is in Progress. This state automatically kicks in when scheduled time has arrived. The only possible transition from this state is either
Completed
orFailed
-
Completed: Once all SMS are successfully sent to the underlying platform, the Campaign is marked as completed. It doesn’t depend on the state of SMS, for example whether it is Delivered or not.
-
Failed: If the Campaign failed for some reason or cannot setup data correctly from the initiating state.
The life cycle of Campaign’s Status is as below:

Get List of Campaigns
This endpoint will be used to retrieve a list of existing campaigns.
Paging
The following paging parameters are supported
Query Parameter | Description |
---|---|
pageSize |
Number of records returned per page |
page |
Which page of Campaigns records to return, starting from 0. |
If the search API is called without page and pageSize, by default pageSize will be 10 and page will be 0 to avoid retrieving all data in a single API call. |
Filtering
Following filtering parameters are supported:
Query Parameter | Description |
---|---|
endTime |
Optional parameter. Only show Contexts that were created on this date/time or earlier, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-06T02:10:03) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-06). When only a date is provided the time is assumed to be at midnight of the given date. Note that the given date/time is inclusive and is assumed to be in UTC timezone. |
enterpriseSid |
Mandatory. Retrieve list of Credits for given Business Customer SID. |
name |
Optional parameter. Only show Campaign’s that match name text, partially or fully. |
status |
Optional parameter. Only show campaigns having selected status. Possible value of status are as explained in campaign status section. |
startTime |
Optional parameter. Only show Contexts that were created on this date/time or later, given as an ISO-8601 date/time string, like YYYY-MM-DDTHH:MM:SS (for example 2018-10-05T22:45:32) or, if you want to omit the time, YYYY-MM-DD (for example 2018-10-05). When only a date is provided the time is assumed to be at midnight of the given date. Note that the given date/time is inclusive and is assumed to be in UTC timezone. |
Sorting Information
You can use the SortBy GET query parameter to determine which attribute you want to sort by and in which direction; direction can either be 'asc' for ascending and 'desc' for descending sort ordering. Here’s the overall format: SortBy=<sorting attribute>:<direction>. If no direction parameter is provided, then the listing of calls is sorted by the attribute in ascending order. ou can sort by the following attributes:
Response Parameters
Response Body will carry Code, corresponding message, and data of Campaigns if it was successfully fetched. HTTP response will be 200 OK.
The response returned is JSON body as shown in the example below. Parameters are as explained below.
Code | Description |
---|---|
data |
data of search as explained in Data parameters below |
code |
Sub-error code for response |
message |
Message describing error if error occured or success message |
Data parameters
Data Parameter | Description |
---|---|
uri |
Unique URI that you can call to get records |
result |
campaign data as explained in Data Parameter of create campaign |
pageSize |
Number of records returned per page. |
total |
Total Number of records |
page |
Which page of records to return. |
numPages |
Total number of pages |
start |
Starting offset of page |
end |
Ending offset of page |
firstPageUri |
Unique URI that you can call to get records in First page |
nextPageUri |
Unique URI that you can call to get records in next page |
Example
From the bash terminal you can run the command below:
curl -X GET \ https://cloud.restcomm.com/campaignmanager/campaigns/search?name=test \ --user ' {your_account_SID}:{your_account_token}' \ -H 'Cache-Control: no-cache' \ -H 'Content-Type: application/json'
Below is the response returned:
{ "data": { "result": [ { "sid": "EC2f1e91bcdeb346519612a96dd31dcd53", "dateUpdated": "2020-01-01T11:40:15+0000", "dateCreated": "2020-01-01T11:40:15+0000", "accountSid": "AC9f5746bbeba827841634b106f23e7395", "accountEmail": "teste1@testent7.com", "uri": "/campaignmanager/campaigns/search/EC2f1e91bcdeb346519612a96dd31dcd53", "name": "Test Data 1", "startTime": "2020-01-01T22:45:32+0000", "enterpriseSid": "ENfda064f487ff4309b8b306d25adc0a86", "total": 1, "status": "cancelled", "fromPrefix": "+91" }, ], "pageSize": 10, "total": 1, "page": 0, "numPages": 1, "start": 0, "end": 0, "firstPageUri": "/campaignmanager/campaigns/search/?pageSize=10&page=0", "uri": "/campaignmanager/campaigns/search/?pageSize=10&page=0" }, "code": 200, "message": "OK" }
Get Single Campaign
The Single Campaign search API allows users to retrieve specific Campaigns.
Response Parameters
Response Body will carry Code, corresponding message, and data of User if it was successfully searched. HTTP response will be 200 OK.
The response returned is JSON body as shown in the example below. Parameters are as explained below.
Parameter | Description |
---|---|
data |
Campaign data as explained in the data parameter of create campaign. |
code |
Sub-error code for response |
message |
Message describing error if error occured or success message |
Delete Campaign API can also return Error Code and corresponding HTTP Error as mentioned in Common Response Error Code. In addition, seen below are the Errors that it can return.
Error Code | HTTP Status | Error Message | Description | Category |
---|---|---|---|---|
486 |
409 |
Enterprise campaign not found |
Campaign SID doesn’t exist in the system or probably assigned to some other Organization where existing user doesn’t have permission to access. |
Update Campaign, Delete Campaign, List Single Campaign |
Example
From the bash terminal you can run the command below:
curl -X DELETE \
https://cloud.restcomm.com/campaignmanager/campaigns/search/CPb6eb071d21124dbab20b095c25f1274f \
--user ' {your_account_SID}:{your_account_token}' \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/json' \
Below is the response returned:
{
"data": {
"sid": "EC2f1e91bcdeb346519612a96dd31dcd53",
"dateUpdated": "2020-01-01T11:40:15+0000",
"dateCreated": "2020-01-01T11:40:15+0000",
"accountSid": "AC9f5746bbeba827841634b106f23e7395",
"accountEmail": "teste1@testent7.com",
"uri": "/campaignmanager/campaigns/search/EC2f1e91bcdeb346519612a96dd31dcd53",
"name": "Test Data 1",
"startTime": "2020-01-01T22:45:32+0000",
"enterpriseSid": "ENfda064f487ff4309b8b306d25adc0a86",
"total": 1,
"status": "cancelled",
"fromPrefix": "+91"
},
"code": 200,
"message": "OK"
}