APrerequisite
Welcome Developers, before you begin your journey using Call AI APIs you must have to Sign-up to Call AI Portal to have access of required Credentials to use the CALL AI APIs.
Please adhere to the following guidelines:
- Visit the URL "dev.call-ai.com" and proceed to the SIGNUP page.
- After successfully signing up, you will receive an email from us. Please verify your email address by following the instructions in the email.
- Once the verification process is complete, you can access the CALL AI APIs Portal using the same login credentials (username and password) you used during signup after Enabling the API Services.
- With your verified account, you will have full access to the CALL AI APIs and can begin utilizing their features.
Authentication using Tokens
Welcome! Here you will have access to all the resources necessary to build an application successfully.
At its core, Call AI uses OAUTH 2.0 to provide RESTful access to its resources.
Here are some specific resources and guides to get you started in a jiffy!
📘
Access Token
- An access token is the primary token used in OAuth 2.0. It represents the authorization granted to a client application by a resource owner (user). The access token is used to access protected resources on behalf of the resource owner. It typically has a limited lifespan and needs to be refreshed periodically.
Note: In OAuth 2.0, the primary token is an access token. is valid for 24 hours after creation.
Requesting a Token
You can request the token in the following manner:
Request Variables (Body Params)
You can retrieve the access token by entering the below-mentioned values in the Request Variables:
Variable | Description | Data Type |
---|---|---|
Tenant Id | The Tenant ID of User | String |
Response Variables
When the Request Variables are parsed, you will get Response Variables in return. They will contain the
unique access token which can be used for running an API.
The response variables are as following:
Variable | Description | Data Type |
---|---|---|
Success | The token generates status | Boolean |
Access Token | The generated access token. Copy this code and use it in all your APIs which ask for authorization. | String |
Token Type | The type of the token generated. | String |
Expires In | The time for which the token is valid. | Number |
Introduction of API's
At Call AI,We realise that consumers want to interact in a number of methods, such as a NodeJS request for an SMS or a desire to get their issue fixed as soon as possible without having to describe their issue to the agent each time they call. All clients want is convenience and reliable customer service.
Our APIs ensure that consumers have several ways to reach us via incoming and outgoing phone conversations, while also automating workflows and managing growth. Furthermore, the APIs ensure that these calls are handled by agents who manage each call and maintain track of open cases and transactions. Simply put, we strive to create a memorable customer experience.
Our APIs enable clients to interact with agents via the channels we employ.
Significance of Our APIs
Our APIs allow you to export data from one interface to another, embed data from one interface to another, and enhance functionality. APIs are used to automate the following services:
1. Improved Customer Service
If a Patient in Care Treatment calls, they are handled by our DVA (which uses our DVA APIs).
DVA will obtain all of the details of the calling patient using Data Connection APIs and become fully aware of the patient's health. Also, make it available to customers 24 hours a day, seven days a week.
Also, obtain the Reporting APIs in order to run surveys and analyse patient data over the phone in order to verify that the patient's issue is treated.
2. Boost productivity
Building patients' trust, growing teams, and maintaining consistency in a continuously changing environment and, most crucially, an ever-changing world necessitates the presence of a Care person representative. A representative or a Care Person must not only master the art of communication and listening skills, but also the art of asking quality questions to get to the source of the problem to offer each patient with a speedy, efficient, and enjoyable conversation. So, use our DVA APIs to construct DVA based on use cases in order to give an effective patient service.
Getting in touch with the DVA! The Patients wishes to communicate with the DVA to become a potential Patient. The two-way call mechanism is used to connect with the DVA, where the inbound or outbound call is connected on any of the DIDs assigned to the DVA or vice versa. Make use of the Number APIs to retrieve the list of DIDs or to update a DID.
In any of the cases, an outbound call is beneficial. But how can you even begin making outbound calls to different leads when you need to reach hundreds, if not thousands, of people? It's the Click to Call API this time. Also, use the Call Notes APIs to obtain the call's call notes. That is an example of excellent care to patients.
3. Scale Elastically
In many circumstances, Care Persons adhere to a fixed system of prefabricated responses; as a result, the Care Person may become unable to assist valued Patients. To circumvent such challenges, leverage Voice Calls APIs to provide agents some flexibility in how they approach many patients at the same time. If the Care Person is thoroughly aware of the call agenda and the customer's issue, the first step in making a successful call occurs well before anyone rings in.
Create a New User/Agent
Create a New User/Agent
Update User/Agent
Update User/Agent
Delete User/Agent
Delete User/Agent
Fetch List of User/Agent (with filter)
List of User/Agent (with filter)
User/Agent Active/Inactive
User/Agent Active/Inactive
Fetch User/Agent Details
User/Agent Details
Resent Verification Link
Resent Verification Link
Forgot Password
Forgot Password
Fetch Country List
Fetch Country List
Fetch List of Available No.
List of Available No.
Fetch List of Number
Fetch List of Number
Update ASR Configration
Update ASR Configration
Update TTS Configration
Update TTS Configration
Attach DVA
Attach DVA
De-Attach DVA
De-Attach DVA
Assign Team
Assign Team
Create SIP Trunk
Create SIP Trunk
List SIP Trunk
List SIP Trunk
Delete SIP Trunk
Delete SIP Trunk
Update ASR Configration
Update ASR Configration
Update TTS Configration
Update TTS Configration
Attach DVA
Attach DVA
De-Attach DVA
De-Attach DVA
Assign Team
Assign Team
Create SMS Gateway
Create SMS Gateway
Update SMS Gateway
Update SMS Gateway
Delete SMS Gateway
Delete SMS Gateway
List SMS Gateway
List SMS Gateway
Send SMS
Send SMS
List Sent SMS
List Sent SMS
Create FHIR
Create FHIR
Delete FHIR
Delete FHIR
List FHIR
List FHIR
CSV Uploads
CSV Uploads
Fetch Call-ai DVA Template
Fetch Call-ai DVA Template
Create DVA
Create DVA
List Your DVA
List Your DVA
Attach Number
Attach Number
De-Attach Number
De-Attach Number
Get Details of DVA
Get Details of DVA
Update DVA
Update DVA
Make a Voice Call
The Click to Call API allows you to phone a customer number just by entering the number.
The API enables the Care Person or users to make calls by entering the number to dial and then selecting the DID number from which to make the call.
Request for Example
Use the following way to implement Click to Call:
Request Variables (Body Params)
The body params used for making calls are:
Variable | Description | Data Type |
---|---|---|
calling_no | The Number From which user wants to call Ref: https://developer.call-ai.com/api-details#api=number-management&operation=get-basic-api-v1-number-purchased-tenant_id | String |
called no | The number of the customer who will receive the call. Note: Customer numbers must be 12 Digits For example, 9173XXXXXX | String |
Response Variables
The response is as following:
Variable | Description | Data Type |
---|---|---|
reponse | SUCCESS or Error Code | String |
message | Call message on success or error | String |
Data.id | Unique ID Call | Float |
Data.creationtime | Creation time of call | Timestamp |
Schedule Voice Call
The Schedule Voice call API feature offers the below-mentioned advantages
This Run makes use of a campaign. Campaigns are quite effective at generating leads, conducting market research, reaching out to a large number of patients, and so on.
Dialer campaigns boost your productivity by sending calls at the scheduled time.
campaigns Calling can also aid with data management by providing information on call volume, conversion rates, and other key performance factors.
You can leverage the capabilities of this API to establish a new broadcast campaign and take advantage of its diverse features. With this API, you can create phone-based surveys, voice broadcasts, healthcare campaigns, patient polls and various other types communication campaign initiatives.
One notable benefit is the ability to efficiently handle high call volumes, allowing you to extend your customer reach effectively. By leveraging this API, you can engage with your customers through DVA, providing them hassle Free on-time Calls for their Medical Needs. This feature enables you to manage customer expectations and streamline the calling process, enhancing their overall experience.
Moreover, the API enables you to broadcast messages to a wide audience, enabling you to expand your reach significantly. This feature is particularly valuable for mass communication scenarios, where you can deliver important DVA Interactions to a large number of recipients simultaneously.
Sample Request
Refer to the below method to create a new broadcast:
Request Variables (Body Parameters)
It takes a JSON request body with the following notable parameters:
Variable | Description | Data Type |
---|---|---|
variables.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance | String |
variables.campaign_id | When a new campaign is created, a campaign ID is assigned to it Ref: https://developer.call-ai.com/api-details#api=outbound-api&operation=get-outbound-api-v1-campaign-tenant_id-page_size-page_index | String |
variables.called_no | Mobile_number defines the contact number that was dialed by campaign | String |
variables.name | Name of the user who is going to reveive the call | String |
variables.email | Email of the user who is inititing the call. | String |
Response Variables
The response is as following:
Variable | Description | Data Type |
---|---|---|
reponse | SUCCESS or Error Code | String |
message | Call message on success or error | String |
Data.id | Unique ID Call | Float |
Data.creationtime | Creation time of call | Timestamp |
Create Campaign
Using this API, you have the ability to utilize campaign creation and scheduling features. It allows you to set specific dates, times, and days of the week for your campaigns to run. Additionally, you can integrate a dialer into your campaigns, and even attach a bot that will guide the outreach calls. Furthermore, you can configure the number of retry attempts for situations when customers don't answer the calls.
Sample Request
Use the below-mentioned method to create a campaign:
Request Variables (Body Params)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type | Example value |
---|---|---|---|
campaign.name | A tenant ID is used to associate each tenant's data with their specific account or instance. | String | “remainder” |
campaign.type | The type parameter refers to the category or type of campaign. | String | “voice” |
dialer.ivr_type | The IVR type is used to specify the type of communication desired. | String | “interactive” |
dialer.max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact.IT can be "0","1",”2" | String | “1” |
dialer.time_out_dialing | Time out dialing refers to the duration (in mili-seconds) for which the phone will ring before the call is considered unanswered.IT can have any value like "30000","60000","90000" | String | "30000" |
dialer.frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it.It can have any values like "5","10"15", "20”,"25”,"30" | String | “5” |
dialer.time_btw_retries | Time Between Retries refers to the duration (in minutes) between attempts to call the same phone number again. It can have any value like "10","20","30"40”,"50" | String | “10” |
dialer.bot_key | Bot key refers to the identifier for the bot that is associated with the campaign and used for outreach. | String | “jbchy983oiheffg983fwihek8uhZ” |
dialer.caller_id | Caller ID refers to the phone number that is attached to the campaign | String | “1234556798” |
scheduler.timezone | A time zone is a designated area with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | String | "Australia/sydney” |
scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | String | “2023-01-11 10:50:51” |
scheduler.end_time | The End time parameter specifies the exact time when the campaign will End. | String | “2023-01-11 10:50:51” |
scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run.It can have any values like "monday","tuesday", "wednesday", "thursday", "friday", "saturday" | String | “"monday", "saturday"” |
created_by | Created by refers to the email address that was used to create Campaign | String | “abcd@call-ai.com” |
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String | “tenant_123456” |
Response Variables
Variable | Description | Data Type |
---|---|---|
reponse | API status sent by the API goes here. | String |
message | Any information sent by the API goes here. | String |
data.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | Object |
error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Campaign
This API will update the campaign information that is linked with the given campaign ID and tenant ID.
Sample Request
Use the below-mentioned method to update your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
variables.called_no | Mobile_number defines the contact number that was dialed by campaign | String |
variables.name | Name of the user who is going to reveive the call | String |
variables.email | Email of the user who is inititing the call. | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Campaign_name | The campaign_name parameter refers to the title given to a campaign when it is getting updated | String |
Modified_by | Created by refers to the email address that is used to modify the Campaign | String |
Status | Status refers to the current state of the campaign. | String |
Type | The type parameter refers to the category or type of campaign. | String |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Scheduler
Using the provided API, you can modify the schedule of a campaign, such as its start and end dates, as well as the days of the week when the campaign will be active. Simply provide the campaign ID and tenant ID along with the updated schedule details to make the changes.
Sample Request
Use the below-mentioned method to update your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
timezone | A time zone is a designated area with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | String |
start_time | The start time parameter specifies the exact time when the campaign will begin. | String |
end_time | The End time parameter specifies the exact time when the campaign will End. | String |
weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run | String |
time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | String |
modified_by | Modified by refers to the email address that was used to modify Dialer | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
Data | If API sends back some data, it will go here. | Object |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Dialer
Using the provided API, you have the capability to make changes to an existing dialer configuration. This involves modifying the attached bot for a specific campaign, allowing you to update the automated interaction that occurs when customers are reached. Additionally, you can specify the number of retry attempts to be made when a customer does not answer the call.
Sample Request
Use the below-mentioned method to update your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
ivr_type | The IVR type is used to specify the type of communication desired. | String |
max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact. | String |
time_out_dialing | Time out dialing refers to the duration for which the phone will ring before the call is considered unanswered. | String |
frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it. | String |
time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | String |
bot_key | Bot key refers to the identifier for the bot that is associated with the campaign and used for outreach. | String |
caller_id | Caller ID refers to the phone number that is attached to the campaign | String |
modified_by | Modified by refers to the email address that was used to modify Dialer | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
Data | If API sends back some data, it will go here. | Object |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch List Campaign
This API serves as a comprehensive source of information for all campaigns. It grants users the ability to retrieve and access details, data, and insights related to any campaign that exists within its scope. By utilizing this API, users can obtain a wide range of information, such as campaign metrics, performance statistics, target audience demographics, advertising strategies, and other relevant data points. This extensive access empowers users to gather valuable insights and make informed decisions based on the information available through the API.
Sample Request
Use the below-mentioned method to get all your campaigns:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
page_size | The page size parameter will determine the amount of data that we request. | String |
page_index | The page index parameter will specify which page of data is requested required | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.campaign.count | Count ref to the total number of Campaigns associated with specific tenant. | String |
data.campaign.rows[].id | When a new campaign is created, a campaign ID is assigned to it. | String |
data.campaign.rows[].campaign_name | The name parameter refers to the title given to a campaign when it is created. | String |
data.campaign.rows[].type | The type parameter refers to the category or type of campaign. | String |
data.campaign.rows[].status | This parameter refers to the status of the campaign | String |
data.campaign.rows[].tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
data.campaign.rows[].created_at | This parameter specifies the exact time when the campaign created. | string |
data.campaign.rows[].created_by | Created by refers to the email address that is used to create the Campaign | string |
data.campaign.rows[].updated_at | This parameter specifies the exact time when the campaign updated | string |
data.campaign.rows[].modified_by | Created by refers to the email address that is used to modify the Campaign | string |
data.campaign.rows[].scheduler.id | When a new campaign scheduler is created, a unique ID is assigned to it. | string |
data.campaign.rows[].scheduler.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.rows[].scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | string |
data.campaign.rows[].scheduler.end_time | The start time parameter specifies the exact time when the campaign will end. | string |
data.campaign.rows[].scheduler.timezone_country | A time zone is a designated country with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping. | string |
data.campaign.rows[].scheduler.timezone_city | A time zone is a designated city with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | string |
data.campaign.rows[].scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run. | string |
data.campaign.rows[].scheduler.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.rows[].scheduler.created_at | Created At refers to the timestamp when the Campaign scheduler created. | string |
data.campaign.rows[].scheduler.created_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
data.campaign.rows[].scheduler.updated_at | Created At refers to the timestamp when the Campaign scheduler updated. | string |
data.campaign.rows[].scheduler.modified_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
Error | Any error encountered during the execution of the API | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Scheduler
This API allows you to retrieve information about an existing scheduler by specifying the tenant ID and campaign ID.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.campaign.rows[].scheduler.id | When a new campaign scheduler is created, a unique ID is assigned to it. | String |
data.campaign.rows[].scheduler.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
data.campaign.rows[].scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | String |
data.campaign.rows[].scheduler.end_time | The start time parameter specifies the exact time when the campaign will end. | String |
data.campaign.rows[].scheduler.timezone_country | A time zone is a designated country with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping. | String |
data.campaign.rows[].scheduler.timezone_city | A time zone is a designated city with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | String |
data.campaign.rows[].scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run. | String |
data.campaign.rows[].scheduler.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
data.campaign.rows[].scheduler.created_at | Created At refers to the timestamp when the Campaign scheduler created. | String |
data.campaign.rows[].scheduler.created_by | Created by refers to the email address that is used to modify the Campaign scheduler | String |
data.campaign.rows[].scheduler.updated_at | Created At refers to the timestamp when the Campaign scheduler updated. | String |
data.campaign.rows[].scheduler.modified_by | Created by refers to the email address that is used to modify the Campaign scheduler | String |
Error | Any error encountered during the execution of the API | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Dialer
This API allows you to retrieve information about an existing dialer by specifying the tenant ID and campaign ID.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.dialer.time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | String |
data.dialer.caller_id | Caller ID refers to the phone number that is attached to the campaign | String |
data.dialer.bot_key | Bot key refers to the identifier for the DVA that is associated with the campaign and used for outreach. | String |
data.dialer.max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact | String |
data.dialer.frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it. | String |
data.dialer.time_out_dialing | Time out dialing refers to the duration for which the phone will ring before the call is considered unanswered. | String |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Single Campaign
When using an API (Application Programming Interface) to retrieve campaign information, you can utilize a campaign ID to specify which campaign's information you want to retrieve.
The API will respond to your request with the campaign information associated with the provided campaign ID and you can parse the data and extract the relevant campaign information based on your needs.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.campaign.count | Count ref to the total number of Campaigns associated with specific tenant. | string |
data.campaign.rows[].id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.rows[].campaign_name | The name parameter refers to the title given to a campaign when it is created. | string |
data.campaign.rows[].type | The type parameter refers to the category or type of campaign. | string |
data.campaign.rows[].status | This parameter refers to the status of the campaign. | string |
data.campaign.rows[].tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.rows[].created_at | This parameter specifies the timestamp when the campaign created. | string |
data.campaign.rows[].created_by | Created by refers to the email address that is used to create the Campaign | string |
data.campaign.rows[].updated_at | This parameter specifies the timestamp when the campaign updated. | string |
data.campaign.rows[].modified_by | Modified by refers to the email address that is used to modify the Campaign | string |
data.campaign.dialer.id | When a new campaign Dialer is created, a unique ID is assigned to it. | string |
data.campaign.dialer.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.dialer.ivr_type | The IVR type is used to specify the type of communication desired. | string |
data.campaign.dialer.max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact. | string |
data.campaign.dialer.time_out_dialing | Time out dialing refers to the duration for which the phone will ring before the call is considered unanswered. | string |
data.campaign.dialer.frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it. | string |
data.campaign.dialer.time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | string |
data.campaign.dialer.bot_key | Bot key refers to the identifier for the bot that is associated with the campaign and used for outreach. | string |
data.campaign.dialer.caller_id | Caller ID refers to the virtual number that is attached to the campaign | string |
data.campaign.dialer.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.dialer.created_at | This parameter specifies the timestamp when the campaign created. | string |
data.campaign.dialer.created_by | Created by refers to the email address that is used to modify the Campaign Dialer | string |
data.campaign.dialer.updated_at | This parameter specifies the timestamp when the campaign updated. | string |
data.campaign.dialer.modified_by | Modified by refers to the email address that is used to modify the Campaign Dialer | string |
data.campaign.rows[].scheduler.id | When a new campaign scheduler is created, a unique ID is assigned to it. | string |
data.campaign.rows[].scheduler.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.rows[].scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | string |
data.campaign.rows[].scheduler.end_time | The start time parameter specifies the exact time when the campaign will end. | string |
data.campaign.rows[].scheduler.timezone_country | A time zone is a designated country with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping. | string |
data.campaign.rows[].scheduler.timezone_city | A time zone is a designated city with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | string |
data.campaign.rows[].scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run. | string |
data.campaign.rows[].scheduler.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.rows[].scheduler.created_at | Created At refers to the timestamp when the Campaign scheduler created. | string |
data.campaign.rows[].scheduler.created_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
data.campaign.rows[].scheduler.updated_at | Created At refers to the timestamp when the Campaign scheduler updated. | string |
data.campaign.rows[].scheduler.modified_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
Error | Any error encountered during the execution of the API | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Delete Campaign
The delete campaign API allows you to remove a campaign from the system. You need to provide the campaign ID as a parameter or in the request payload, and authenticate the request using appropriate credentials. Once the API processes the request, the specified campaign will be permanently deleted from the system.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data | If API send back some data it will goes here. | Object |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch List Dialer Base
Using this API, you can retrieve the foundational information of a dialer associated with a specific campaign ID and tenant ID. The dialer base encompasses crucial details, including the uploaded contacts for outreach. By leveraging this API, you can access and manage the contacts within the dialer base, enabling efficient and targeted outreach efforts for your campaign.
Sample Request
Use the below-mentioned method to get your dialer base data:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.rows[].id | Unique id assigned to each contact uploaded in dialer base | |
data.rows[].phonebook_id | The unique identifier of a phonebook can be referred to as the campaign-specific phonebook ID. This ID uniquely identifies the phonebook associated with a particular campaign, allowing you to distinguish and access its data within the campaign context. | |
data.rows[].source | Source defines the the source from where the contact is uploaded in dialer base .It can be xls, phonebook,api | |
data.rows[].campaign_id | When a new campaign is created, a campaign ID is assigned to it. | |
data.rows[].phone_number | The number through which you want to inititate the call. | |
data.rows[].name | ||
data.rows[].tenant_id | ||
data.rows[].retry_count | ||
data.rows[].dial_out_time | ||
data.rows[].call_status | ||
data.rows[].created_at | ||
data.rows[].created_by | ||
data.rows[].updated_at | ||
data.rows[].modified_by | ||
data.count | ||
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Upload
Upload
Create Campaign
Using this API, you have the ability to utilize campaign creation and scheduling features. It allows you to set specific dates, times, and days of the week for your campaigns to run. Additionally, you can integrate a dialer into your campaigns, and even attach a bot that will guide the outreach calls. Furthermore, you can configure the number of retry attempts for situations when customers don't answer the calls.
Sample Request
Use the below-mentioned method to create a campaign:
Request Variables (Body Params)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type | Example value |
---|---|---|---|
campaign.name | A tenant ID is used to associate each tenant's data with their specific account or instance. | String | “remainder” |
campaign.type | The type parameter refers to the category or type of campaign. | String | “voice” |
dialer.ivr_type | The IVR type is used to specify the type of communication desired. | String | “interactive” |
dialer.max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact.IT can be "0","1",”2" | String | “1” |
dialer.time_out_dialing | Time out dialing refers to the duration (in mili-seconds) for which the phone will ring before the call is considered unanswered.IT can have any value like "30000","60000","90000" | String | "30000" |
dialer.frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it.It can have any values like "5","10"15", "20”,"25”,"30" | String | “5” |
dialer.time_btw_retries | Time Between Retries refers to the duration (in minutes) between attempts to call the same phone number again. It can have any value like "10","20","30"40”,"50" | String | “10” |
dialer.bot_key | Bot key refers to the identifier for the bot that is associated with the campaign and used for outreach. | String | “jbchy983oiheffg983fwihek8uhZ” |
dialer.caller_id | Caller ID refers to the phone number that is attached to the campaign | String | “1234556798” |
scheduler.timezone | A time zone is a designated area with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | String | "Australia/sydney” |
scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | String | “2023-01-11 10:50:51” |
scheduler.end_time | The End time parameter specifies the exact time when the campaign will End. | String | “2023-01-11 10:50:51” |
scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run.It can have any values like "monday","tuesday", "wednesday", "thursday", "friday", "saturday" | String | “"monday", "saturday"” |
created_by | Created by refers to the email address that was used to create Campaign | String | “abcd@call-ai.com” |
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String | “tenant_123456” |
Response Variables
Variable | Description | Data Type |
---|---|---|
reponse | API status sent by the API goes here. | String |
message | Any information sent by the API goes here. | String |
data.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | Object |
error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Campaign
This API will update the campaign information that is linked with the given campaign ID and tenant ID.
Sample Request
Use the below-mentioned method to update your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
variables.called_no | Mobile_number defines the contact number that was dialed by campaign | String |
variables.name | Name of the user who is going to reveive the call | String |
variables.email | Email of the user who is inititing the call. | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Campaign_name | The campaign_name parameter refers to the title given to a campaign when it is getting updated | String |
Modified_by | Created by refers to the email address that is used to modify the Campaign | String |
Status | Status refers to the current state of the campaign. | String |
Type | The type parameter refers to the category or type of campaign. | String |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Scheduler
Using the provided API, you can modify the schedule of a campaign, such as its start and end dates, as well as the days of the week when the campaign will be active. Simply provide the campaign ID and tenant ID along with the updated schedule details to make the changes.
Sample Request
Use the below-mentioned method to update your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
timezone | A time zone is a designated area with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | String |
start_time | The start time parameter specifies the exact time when the campaign will begin. | String |
end_time | The End time parameter specifies the exact time when the campaign will End. | String |
weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run | String |
time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | String |
modified_by | Modified by refers to the email address that was used to modify Dialer | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
Data | If API sends back some data, it will go here. | Object |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Dialer
Using the provided API, you have the capability to make changes to an existing dialer configuration. This involves modifying the attached bot for a specific campaign, allowing you to update the automated interaction that occurs when customers are reached. Additionally, you can specify the number of retry attempts to be made when a customer does not answer the call.
Sample Request
Use the below-mentioned method to update your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
ivr_type | The IVR type is used to specify the type of communication desired. | String |
max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact. | String |
time_out_dialing | Time out dialing refers to the duration for which the phone will ring before the call is considered unanswered. | String |
frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it. | String |
time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | String |
bot_key | Bot key refers to the identifier for the bot that is associated with the campaign and used for outreach. | String |
caller_id | Caller ID refers to the phone number that is attached to the campaign | String |
modified_by | Modified by refers to the email address that was used to modify Dialer | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
Data | If API sends back some data, it will go here. | Object |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch List Campaign
This API serves as a comprehensive source of information for all campaigns. It grants users the ability to retrieve and access details, data, and insights related to any campaign that exists within its scope. By utilizing this API, users can obtain a wide range of information, such as campaign metrics, performance statistics, target audience demographics, advertising strategies, and other relevant data points. This extensive access empowers users to gather valuable insights and make informed decisions based on the information available through the API.
Sample Request
Use the below-mentioned method to get all your campaigns:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
page_size | The page size parameter will determine the amount of data that we request. | String |
page_index | The page index parameter will specify which page of data is requested required | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.campaign.count | Count ref to the total number of Campaigns associated with specific tenant. | String |
data.campaign.rows[].id | When a new campaign is created, a campaign ID is assigned to it. | String |
data.campaign.rows[].campaign_name | The name parameter refers to the title given to a campaign when it is created. | String |
data.campaign.rows[].type | The type parameter refers to the category or type of campaign. | String |
data.campaign.rows[].status | This parameter refers to the status of the campaign | String |
data.campaign.rows[].tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
data.campaign.rows[].created_at | This parameter specifies the exact time when the campaign created. | string |
data.campaign.rows[].created_by | Created by refers to the email address that is used to create the Campaign | string |
data.campaign.rows[].updated_at | This parameter specifies the exact time when the campaign updated | string |
data.campaign.rows[].modified_by | Created by refers to the email address that is used to modify the Campaign | string |
data.campaign.rows[].scheduler.id | When a new campaign scheduler is created, a unique ID is assigned to it. | string |
data.campaign.rows[].scheduler.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.rows[].scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | string |
data.campaign.rows[].scheduler.end_time | The start time parameter specifies the exact time when the campaign will end. | string |
data.campaign.rows[].scheduler.timezone_country | A time zone is a designated country with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping. | string |
data.campaign.rows[].scheduler.timezone_city | A time zone is a designated city with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | string |
data.campaign.rows[].scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run. | string |
data.campaign.rows[].scheduler.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.rows[].scheduler.created_at | Created At refers to the timestamp when the Campaign scheduler created. | string |
data.campaign.rows[].scheduler.created_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
data.campaign.rows[].scheduler.updated_at | Created At refers to the timestamp when the Campaign scheduler updated. | string |
data.campaign.rows[].scheduler.modified_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
Error | Any error encountered during the execution of the API | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Scheduler
This API allows you to retrieve information about an existing scheduler by specifying the tenant ID and campaign ID.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.campaign.rows[].scheduler.id | When a new campaign scheduler is created, a unique ID is assigned to it. | String |
data.campaign.rows[].scheduler.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
data.campaign.rows[].scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | String |
data.campaign.rows[].scheduler.end_time | The start time parameter specifies the exact time when the campaign will end. | String |
data.campaign.rows[].scheduler.timezone_country | A time zone is a designated country with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping. | String |
data.campaign.rows[].scheduler.timezone_city | A time zone is a designated city with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | String |
data.campaign.rows[].scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run. | String |
data.campaign.rows[].scheduler.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
data.campaign.rows[].scheduler.created_at | Created At refers to the timestamp when the Campaign scheduler created. | String |
data.campaign.rows[].scheduler.created_by | Created by refers to the email address that is used to modify the Campaign scheduler | String |
data.campaign.rows[].scheduler.updated_at | Created At refers to the timestamp when the Campaign scheduler updated. | String |
data.campaign.rows[].scheduler.modified_by | Created by refers to the email address that is used to modify the Campaign scheduler | String |
Error | Any error encountered during the execution of the API | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Dialer
This API allows you to retrieve information about an existing dialer by specifying the tenant ID and campaign ID.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.dialer.time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | String |
data.dialer.caller_id | Caller ID refers to the phone number that is attached to the campaign | String |
data.dialer.bot_key | Bot key refers to the identifier for the DVA that is associated with the campaign and used for outreach. | String |
data.dialer.max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact | String |
data.dialer.frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it. | String |
data.dialer.time_out_dialing | Time out dialing refers to the duration for which the phone will ring before the call is considered unanswered. | String |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Single Campaign
When using an API (Application Programming Interface) to retrieve campaign information, you can utilize a campaign ID to specify which campaign's information you want to retrieve.
The API will respond to your request with the campaign information associated with the provided campaign ID and you can parse the data and extract the relevant campaign information based on your needs.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.campaign.count | Count ref to the total number of Campaigns associated with specific tenant. | string |
data.campaign.rows[].id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.rows[].campaign_name | The name parameter refers to the title given to a campaign when it is created. | string |
data.campaign.rows[].type | The type parameter refers to the category or type of campaign. | string |
data.campaign.rows[].status | This parameter refers to the status of the campaign. | string |
data.campaign.rows[].tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.rows[].created_at | This parameter specifies the timestamp when the campaign created. | string |
data.campaign.rows[].created_by | Created by refers to the email address that is used to create the Campaign | string |
data.campaign.rows[].updated_at | This parameter specifies the timestamp when the campaign updated. | string |
data.campaign.rows[].modified_by | Modified by refers to the email address that is used to modify the Campaign | string |
data.campaign.dialer.id | When a new campaign Dialer is created, a unique ID is assigned to it. | string |
data.campaign.dialer.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.dialer.ivr_type | The IVR type is used to specify the type of communication desired. | string |
data.campaign.dialer.max_retry | The max retry parameter refers to the maximum number of times that the system will attempt to reach out to a contact. | string |
data.campaign.dialer.time_out_dialing | Time out dialing refers to the duration for which the phone will ring before the call is considered unanswered. | string |
data.campaign.dialer.frequency | Frequency refers to the number of calls that can be made per minute and can be adjusted during the campaign without interrupting it. | string |
data.campaign.dialer.time_btw_retries | Time Between Retries refers to the duration between attempts to call the same phone number again. | string |
data.campaign.dialer.bot_key | Bot key refers to the identifier for the bot that is associated with the campaign and used for outreach. | string |
data.campaign.dialer.caller_id | Caller ID refers to the virtual number that is attached to the campaign | string |
data.campaign.dialer.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.dialer.created_at | This parameter specifies the timestamp when the campaign created. | string |
data.campaign.dialer.created_by | Created by refers to the email address that is used to modify the Campaign Dialer | string |
data.campaign.dialer.updated_at | This parameter specifies the timestamp when the campaign updated. | string |
data.campaign.dialer.modified_by | Modified by refers to the email address that is used to modify the Campaign Dialer | string |
data.campaign.rows[].scheduler.id | When a new campaign scheduler is created, a unique ID is assigned to it. | string |
data.campaign.rows[].scheduler.campaign_id | When a new campaign is created, a campaign ID is assigned to it. | string |
data.campaign.rows[].scheduler.start_time | The start time parameter specifies the exact time when the campaign will begin. | string |
data.campaign.rows[].scheduler.end_time | The start time parameter specifies the exact time when the campaign will end. | string |
data.campaign.rows[].scheduler.timezone_country | A time zone is a designated country with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping. | string |
data.campaign.rows[].scheduler.timezone_city | A time zone is a designated city with the same standard time. It helps coordinate schedules and activities across different regions by establishing a common reference for timekeeping | string |
data.campaign.rows[].scheduler.weekdays | Weekdays parameter refers to the specific days of the week on which a campaign will run. | string |
data.campaign.rows[].scheduler.tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | string |
data.campaign.rows[].scheduler.created_at | Created At refers to the timestamp when the Campaign scheduler created. | string |
data.campaign.rows[].scheduler.created_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
data.campaign.rows[].scheduler.updated_at | Created At refers to the timestamp when the Campaign scheduler updated. | string |
data.campaign.rows[].scheduler.modified_by | Created by refers to the email address that is used to modify the Campaign scheduler | string |
Error | Any error encountered during the execution of the API | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Delete Campaign
The delete campaign API allows you to remove a campaign from the system. You need to provide the campaign ID as a parameter or in the request payload, and authenticate the request using appropriate credentials. Once the API processes the request, the specified campaign will be permanently deleted from the system.
Sample Request
Use the below-mentioned method to get your campaign:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data | If API send back some data it will goes here. | Object |
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch List Dialer Base
Using this API, you can retrieve the foundational information of a dialer associated with a specific campaign ID and tenant ID. The dialer base encompasses crucial details, including the uploaded contacts for outreach. By leveraging this API, you can access and manage the contacts within the dialer base, enabling efficient and targeted outreach efforts for your campaign.
Sample Request
Use the below-mentioned method to get your dialer base data:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String |
campaign_id | When a new campaign is created, a campaign ID is assigned to it. | String |
Response Variables
It takes a JSON response body with the following notable parameter:
Variable | Description | Data Type |
---|---|---|
Response | API status sent by the API goes here. | String |
Message | Any information sent by the API goes here. | String |
data.rows[].id | Unique id assigned to each contact uploaded in dialer base | |
data.rows[].phonebook_id | The unique identifier of a phonebook can be referred to as the campaign-specific phonebook ID. This ID uniquely identifies the phonebook associated with a particular campaign, allowing you to distinguish and access its data within the campaign context. | |
data.rows[].source | Source defines the the source from where the contact is uploaded in dialer base .It can be xls, phonebook,api | |
data.rows[].campaign_id | When a new campaign is created, a campaign ID is assigned to it. | |
data.rows[].phone_number | The number through which you want to inititate the call. | |
data.rows[].name | ||
data.rows[].tenant_id | ||
data.rows[].retry_count | ||
data.rows[].dial_out_time | ||
data.rows[].call_status | ||
data.rows[].created_at | ||
data.rows[].created_by | ||
data.rows[].updated_at | ||
data.rows[].modified_by | ||
data.count | ||
Error | Contains information related to any error thrown by Call-Ai System | Object |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Upload
Upload
Create Contact
This API allows you to create a new contact within a specific phonebook associated with a given phonebook ID and tenant ID. When the phonebook is uploaded into the campaign, this contact will be included for outreach.
- The API enables the creation of contacts within phonebooks by providing a specific phonebook ID and tenant ID. These contacts can then be included in outreach campaigns once the phonebook is uploaded.
- With this API, you can easily add new contacts to a designated phonebook using the associated phonebook ID and tenant ID. These contacts will be seamlessly integrated into your outreach efforts once the phonebook is uploaded into the campaign.
Sample Request
Use the below-mentioned method to Create Contact:
Request Variables (Body Param)
It takes a JSON request b Response variables
After the execution of the API, you will get the following response variables:
Variable | Description | Example | Data Type |
---|---|---|---|
contact.phone_book_id | The Phone Book ID is a unique identifier assigned to a specific phonebook upon creation. | 9 | Integer |
contact.name | The name parameter refers to the title given to a contact when it is created. | abcd | String |
contact.phone_number | The term phone number refers to the specific contact that is being targeted for outreach purposes. | 12354679 | String |
contact.metadata | C | String | String |
contact.created_by | Created by refers to the email address that was used to create Contact | String | String |
contact.modified_by | Modified by refers to the email address that was used to Update Contact | String | String |
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | String | String |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
List Contact
This API allows you to list all the contacts that are associated with the provided tenant ID.
- The API supports the ability to list all contacts associated with a specific tenant ID. This functionality allows users to retrieve a comprehensive list of contacts linked to their organization or specific campaign.
- By combining the two functionalities mentioned earlier, users can effectively manage their contacts within phonebooks. They can create new contacts using the first API, associate them with a specific phonebook using the phonebook ID and tenant ID, and then retrieve a list of all contacts associated with that tenant ID using the second API. This provides a seamless workflow for managing and organizing contacts for outreach campaigns.
Sample Request
Use the below-mentioned method to List Contact:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Example | Data Type |
---|---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
phone_book_id | The Phone Book ID is a unique identifier assigned to a specific phonebook upon creation. | 9 | Integer |
pageIndex | The page index parameter will specify which page of data is requested | 0 | Integer |
pageSize | The page size parameter will determine the amount of data that we requested | 10 | Integer |
Response Variables
After the execution of the API, you will get the following response variables:
Variable | Description | Example | Data Type |
---|---|---|---|
data.rows.id | A ID is used as a reference for a single contact with a unique identifier. | 12 | Integer |
Data.rows.phone_book_id | The ID is a unique identifier assigned to a specific phonebook upon creation. | 12 | String |
Data.rows.name | The name parameter refers to the title given to a contact when it is created | abcd | String |
Data.rows.phone_number | The term phone number refers to the specific contact that is being targeted for outreach purposes. | 132144 | String |
Data.rows.metadata | |||
Data.rows.created_at | Created at refers to the timestamp indicating the exact time when the contact was originally created | 2022-11-03T10:20:37Z" | Date-time, string |
Data.rows.created_by | Created by refers to the email address that was used to create Contact | abcd@gamil.com | String |
Data.rows.updated_at | Updated at refers to the timestamp indicating the exact time when the contact was updated | 2022-11-03T10:20:37Z" | Date-time, string |
Data.rows.modified_by | Modified by refers to the email address that was used to Update Contact | abcd@gamil.com | String |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Contact
Using this API, you can search for and retrieve contacts based on the provided parameters.
- The API offers the capability to search and retrieve contacts based on specific parameters. This feature allows users to perform targeted searches and retrieve only the contacts that meet certain criteria or match specific search parameters.
- By utilizing the search functionality of the API in conjunction with the previously mentioned functionalities, users can efficiently manage their contacts. They can create new contacts, associate them with phonebooks, and then perform targeted searches to retrieve contacts that match specific criteria or requirements. This empowers users to effectively filter and retrieve the contacts they need for their outreach campaigns.
Sample Request
Use the below-mentioned method to search contact:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameters:
Variable | Description | Example | Data Type |
---|---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
phone_book_id | The Phone Book ID is a unique identifier assigned to a specific phonebook upon creation. | 9 | integer |
pageIndex | The page index parameter will specify which page of data is requested | 0 | integer |
pageSize | The page size parameter will determine the amount of data that we requested | 10 | integer |
key | Using the key parameter, you can determine the specific key to be used for searching the Contact through this API. | name | String |
value | The value parameter will enable you to specify the value that you want to use for searching the Contact. | abcs | String |
Response Variables
After the execution of the API, you will get the following response variables:
Variable | Description | Example | Data Type |
---|---|---|---|
data.rows.id | A ID is used as a reference for a single contact with a unique identifier. | 12 | integer |
Data.rows.phone_book_id | The ID is a unique identifier assigned to a specific phonebook upon creation. | 12 | string |
Data.rows.name | The name parameter refers to the title given to a contact when it is created | abcd | string |
Data.rows.phone_number | The term phone number refers to the specific contact that is being targeted for outreach purpose. | 132144 | string |
Data.rows.metadata | |||
Data.rows.created_at | Created at refers to the timestamp indicating the exact time when the contact was originally created | 2022-11-03T10:20:37Z" | Date-time, string |
Data.rows.created_by | Created by refers to the email address that was used to create Contact | abcd@gamil.com | string |
Data.rows.updated_at | Updated at refers to the timestamp indicating the exact time when the contact was updated | 2022-11-03T10:20:37Z" | Date-time, string |
Data.rows.modified_by | Modified by refers to the email address that was used to Update Contact | abcd@gamil.com | string |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Fetch Contact by ID
Using this API, you can retrieve a single contact associated with the provided contact ID and tenant ID.
- The API provides the capability to retrieve a single contact by specifying the contact ID and the associated tenant ID. This feature enables users to fetch specific contact information based on their unique identifiers, allowing for precise access to individual contacts within the system.
- Combining the contact retrieval functionality with the other features mentioned earlier, users can efficiently manage their contacts. They can create new contacts, associate them with phonebooks, search and filter contacts based on parameters, and finally retrieve specific contacts using their unique contact ID and associated tenant ID. This comprehensive set of functionalities ensures effective control and access to contacts for various outreach campaigns and organizational needs.
Sample Request
Use the below-mentioned method to Fetch Contact By Id:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameters:
Variable | Description | Example | Data Type |
---|---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
contact_id | A contact ID is used as a reference for a single contact with a unique identifier. | 9 | integer |
Response Variables
After the execution of the API, you will get the following response variables:
Variable | Description | Example | Data Type |
---|---|---|---|
data.rows.id | A ID is used as a reference for a single contact with a unique identifier. | 12 | String |
Data.rows. phone_book_id | The ID is a unique identifier assigned to a specific phonebook upon creation. | 12 | String |
Data.rows.name | The name parameter refers to the title given to a contact when it is created | abcd | String |
Data.rows.phone_number | The term phone number refers to the specific contact that is being targeted for outreach purposes. | 132144 | String |
Data.rows.metadata | |||
Data.rows. created_at | Created at refers to the timestamp indicating the exact time when the contact was originally created | 2022-11-03T10:20:37Z" | Date-time, string |
Data.rows. created_by | Created by refers to the email address that was used to create Contact | abcd@gamil.com | String |
Data.rows. updated_at | Updated at refers to the timestamp indicating the exact time when the contact was updated | 2022-11-03T10:20:37Z" | Date-time, string |
Data.rows.modified_by | Modified by refers to the email address that was used to Update Contact | abcd@gamil.com | String |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Update Contact
Using this API, you can modify existing contacts associated with a phonebook by changing their name or phone numbers.
- The API allows users to modify existing contacts associated with a phonebook. This functionality enables users to make changes to contact information such as the contact's name or phone numbers, ensuring accurate and up-to-date data within their phonebook.
- By utilizing the contact modification feature of the API along with the other functionalities mentioned earlier, users can have full control over their contact management. They can create new contacts, associate them with phonebooks, search for specific contacts, retrieve individual contacts by their unique identifiers, and now modify existing contacts as needed. This comprehensive set of capabilities provides a robust framework for efficient contact management and customization to meet the requirements of outreach campaigns and organizational needs.
Sample Request
Use the below-mentioned method to update contact:
Request Variables (Body Params)
It takes a JSON request b Response variables
After the execution of the API, you will get the following response variables:
Variable | Description | Example | Data Type |
---|---|---|---|
contact.contact_id | A contact ID refers to the unique identifier which is assigned to each contact upon its creation. | 9 | integer |
contact.name | The name parameter refers to the title given to a contact when it is created. | abcd | String |
contact.phone_number | The term phone number refers to the specific contact that is being targeted for outreach purposes. | 12354679 | String |
contact.modified_by | Modified by refers to the email address that was used to Update Contact | Abcd@gmail.com | String |
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
Response Schema
A successful request returns the HTTP 201 created status code and a JSON response body as detailed below:
Upload Contact Xlsx File
Using this API, you can upload multiple contacts associated with a single phonebook through an XLSX file. When the phonebook is uploaded into the campaign, these contacts will be included for outreach.
- The API supports the ability to upload multiple contacts associated with a single phonebook using an XLSX file. This feature provides a convenient and efficient way to import a large number of contacts into the system at once, saving time and effort in manually entering each contact individually.
- By leveraging the contact upload functionality of the API, users can easily add multiple contacts to a phonebook in bulk. These contacts, included in the uploaded XLSX file, will be seamlessly integrated into the campaign for outreach purposes. This streamlined process simplifies the management of a large number of contacts and ensures they are readily available for effective outreach campaigns.
Sample Request
Use the below-mentioned method to upload Directory Contacts through XLSX file:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Example | Data Type |
---|---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
phonebook_id | Using the phonebookid parameter, you can retrieve the contacts associated with the specified phonebook ID. | 9 | String |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Example | Data Type |
---|---|---|---|
Emiialby refers to the email address that was used to upload Contact | Abcd@gamil.com | String | |
phonebook_id | Using the phonebookid parameter, you can retrieve the contacts associated with the specified phonebook ID. | 9 | String |
file | It can be xlsx and csv file which contains contacts related data | .csv , .xlsx | File |
Response Schema
A successful request returns the HTTP 200 OK status code and a JSON response body as detailed below:
Delete Contact
Using this API, you can delete the contact associated with the provided contact.
- The API offers the capability to delete a specific contact associated with the provided contact ID. This functionality allows users to remove unwanted or outdated contacts from their phonebooks, ensuring the accuracy and relevancy of the contact data.
- By combining the contact deletion feature with the other functionalities mentioned earlier, users have complete control over their contact management. They can create new contacts, associate them with phonebooks, search for specific contacts, retrieve individual contacts, modify contact information, and now delete contacts when needed. This comprehensive set of capabilities empowers users to maintain a clean and up-to-date contact database, optimizing their outreach campaigns and organizational efficiency.
Sample Request
Use the below-mentioned method to Delete contact:
Request Variables (Path Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Example | Data Type |
---|---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
contact_id | A contact ID is used as a reference for a single contact with a unique identifier. | 9 | Integer |
Request Variables (Body Param)
It takes a JSON request body with the following notable parameter:
Variable | Description | Example | Data Type |
---|---|---|---|
tenant_id | A tenant ID is used to associate each tenant's data with their specific account or instance. | Tenant_id1234 | String |
id | A ID refers to the unique identifier which is assigned to each contact upon its creation. | 9 | integer |
Response Schema
A successful request returns the HTTP 201 created status code and a JSON response body as detailed below:
API Reference
API Reference
Message Privacy
Message Privacy
Fetch CDR
Fetch CDR
Fetch Agent Call Detail
Fetch Agent Call Detail
Fetch Qua|Team Detail
Fetch Qua|Team Detail
Fetch Call Recording
Fetch Call Recording
Fetch Call Transcript
Fetch Call Transcript
Fetch Call Summary
Fetch Call Summary
Fetch Total Call Duration In/Out
Fetch Total Call Duration In/Out