post https://{domainname}/APIServices/campaignControl/outbound
Use this API to create an outbound campaign within your CloudAgent account.
In the BODY PARAMS provide the parameters that apply to create the campaign.
For domestic ccaas - enter the domain: api.cloudagent.ozonetel.com
For International ccaas - enter the domain: ccaas.ozonetel.com
Note:
Please consider the following points while using the campaign handling APIs.
- You cannot use Null or empty values for non-mandatory parameters. If those parameters are not required, do not add them to the BODY PARAMS.
- "position" parameter is not applicable in the Payload.
- When Fallback is not given in the payload, campaign will be created with Fallback as None.
- We cannot update campaigns in Running Position.
- File to Upload is mandatory for ccaas customers, but we will be able to create campaigns with API without Data File.
- Mapping File Creation is not handled.
- As of now, Advanced Retry Page is not Handled with the APIs.
- You cannot update Campaign Name, as update is done based on Campaign Name as Primary value.
- Actions like Start, Stop, Reset, Force Stop and Delete data are not handled.
- Rate Limit to create a campaign: 2 request per minute per user, irrespective of the campaign type (Inbound Or Outbound).
Parameter (newKey) | Description (New value) |
---|---|
username* | Provide the CloudAgnet account name |
campaignName* | Give a name for the campaign to be created |
apiKey* | Provide the API key of your account. Available in CloudAgent after admin login |
action* | To create a campaign - "create" |
campaignType* | "Preview" / "Progressive" / "IVR" / "Predictive" |
dialMethod* | Specify if it's "Nonagentwise" / "Agentwise" / "Skillwise" |
did* | Provide a DID for the campaign |
fallbackDID | Add the fallback DID |
dynamicDID | Add the dynamic DID number |
fallbackDynamicDID | Add the fallback dynamic DID number |
runtimeStart* | Give the start run time in the format HH:MM:SS. Example: 20:00:00 |
runtimeEnd* | Give the end run time in the format HH:MM:SS. Example: 23:00:00 |
mappingName* | Provide the Map file name |
pacingRatio* | Add the pacing ratio value. Example: 1:2 |
maxDropRatio* | Enter the Max Drop Ratio (%) value in digits. Example: 30 |
maxConcurrentCalls* | The maximum number of active calls allowed for the campaign. Add the value in numerical |
appURL | Use this parameter to customize the IVR flow through some other application. Enter the App URL if this parameter is used. |
noOfTries* | Enter the number of tries value in digits. Example: 10 |
priority* | Give priority to the campaign. |
dialInterval* | Give the dial interval time in seconds. Example: 5 |
customerRingingTime* | Give the customer ringing time in seconds. Example: 30 |
users | Add the list of users with comma-separated values. Example: user1,user2 |
urlToPush | Add the callback URL |
hitScreenpopURLAt | Specify if it is at the "Client Side" / "Server Side" / "Client&Server" / "Client Side OnBusy" / "Plugin" / "Server Side OnBusy" |
screenPopUrl | Give the screen pop URL |
pluginName* | provide the plugin name |
callPrefix | Add the call prefix as required. Example: "+" |
playDisclaimerURL | Provide the audio URL as the parameter value in either .mp3 or .wav format. Note that this parameter is optional. |
dispositions* | Provide the list of dispositions with comma-separated values. |
dispositionType* | Specify the disposition type, whether through the API or toolbar or if no disposition is needed. "API" / "Toolbar" / "None" |
wrapUpTime* | Give the wrap-up time in seconds. Example: 30 |
blockNumber | "Block" / "Allow" / "None" |
blockNumberGroups | Provide the block number group name |
dailyObdLimitPerNumber | Specify the numerical value to set the maximum daily outbound dialing attempts for a number within the campaign. |
record* | "Record the call in Full" / "Record only the conversation" / "Do not record calls" |
holdMusic | Audio_New |
transferMusic | Music_new |
ivrFlow* | Name of the IVR flow to be associated with the campaign. |
dndEnable | Setting dndEnable to true activates the Do Not Disturb feature. When this checkbox is checked, the system will reference the Do Not Disturb log and prevent calls from being dialed. |
offLineMode | "false" - providing false as a parameter disables the setting |
stdEnabled | "true" - passing as true automatically dials the numbers with a prefixed 0 (zero) added before the 10-digit phone numbers available in the campaign list. |
acwForUnAnsweredCall | "false" - providing false as a parameter disables the setting |
dialByHoldingAgent | "true" - providing true as a parameter enables the setting. In Progressive dialing, the system automatically dials customers one by one, placing the agent on hold until a customer answers. |
allowedManual | "false" - providing false as a parameter disables the setting |
applyDNCRegulation | "false" - providing false as a parameter disables the setting |
agentToAgentCalling | "false" - providing 'false' as a parameter disables the setting. This is an agent-to-agent (internal calling) dialing feature. To know more about the Internal calling feature refer to, Agent to Agent Calling . |
skills* | Provide the list of skill names with comma-separated values. |
script | Add the script for the campaign as you need. |
amdDetection | "false" - providing false as a parameter disables the setting |
customerFirst | "false" - providing false as a parameter disables the setting |
amdDetected | Play Voice Message |
voiceMessageURL | provide the URL |
Possible Responses
Providing Valid Campaign Name | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Passing Invalid apiKey Key | "{ ""Message"": ""Invalid apiKey"" }" |
Passing Invalid apiKey Value | "{ ""Message"": ""Authentication failed."" }" |
Missing apiKey key / Missing apiKey value | "{ ""Message"": ""Invalid apiKey"" }" |
Passing Invalid userName Key / Missing userName key / Missing userName Value | "{ ""Message"": ""Invalid username"" }" |
Passing Invalid userName Value | "{ ""Message"": ""Authentication failed."" }" |
Providing Empty / Null Campaign Name | "{ ""Message"": ""Campaign Name is required"" }" |
Providing Invalid Campaign Name | {"Message": "Campaign Name should be between 2 to 255 alphanumeric characters long and allows special characters like .,@,_,-"} |
Providing Min and Max values to the Campaign Name parameter | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Not Providing Campaign Name Parameter | "{ ""Message"": ""Campaign Name is required"" }" |
Providing valid Campaign Type | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing invalid Campaign Type / Providing Empty Campaign Type / Not Providing Campaign Type Parameter | "{ ""Message"": ""Invalid Campaign Type"" }" |
Providing valid Dial method. | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing Invalid Dial Method / providing Empty Dial Method / Not Providing Dial Method Parameter | "{ ""Message"": ""Invalid campaignDialMethod"" }" |
Providing valid DID | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing Invalid DID / providing valid Fallback DID | "{ ""Message"": ""Please enter the Valid DID assigned to the account."" }" |
Providing Min and Max values to DID parameter | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing Empty DID | "{ ""Message"": ""DID must be between 3 and 16 digits and allows the + prefix"" }" |
Not Providing DID Parameter | "{ ""Message"": ""DID must be between 3 and 16 digits and allows the + prefix"" }" |
Providing Invalid Fallback DID | "{ ""Message"": ""Please enter the Valid FallbackDID assigned to the account"" }" |
Providing Empty Fallback WrapUp Time | "{ ""Message"": ""FallBack DID must be between 3 and 16 digits and allows the + prefix"" }" |
Providing Fallback DID when ROLE_Fallback_DID is not assigned and passing the fallBack DID value | "{ ""Message"": ""FallBack DID role is not assigned to this account. Please contact the admin."" }" |
When ROLE_Fallback_DID is not assigned to the account and not passing the fallBack DID value | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing Valid Start Run Time | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing InValid Start Run Time / Providing Empty/ Null Start Run Time / Not Providing Start Run Time Parameter | "{ ""Message"": ""runtimeStart is Invalid"" }" |
Providing Valid End Run Time | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing InValid End Run Time / Providing Empty/ Null End Run Time / Not Providing End Run Time Parameter | "{ ""Message"": ""runtimeEnd is Invalid"" }" |
Providing Start Run Time Greater than End Run Time | "{ ""Message"": ""Runtime Start should not be greater than Runtime End."" }" |
Providing Invalid Dial Interval | "{ ""Message"": ""dialInterval should be between 0 to 9999"" }" |
Providing Empty/ Null Dial Interval | "{ ""Message"": ""dialInterval should be between 0 to 9999"" }" |
Not providing Dial Interval Parameter | "{ ""Message"": ""dialInterval should be between 0 to 9999"" }" |
Providing Invalid Priority / Providing Empty Or Null Priority / Not Providing Priority Parameter | "{ ""Message"": ""priority should be between 1 to 999"" }" |
Providing Min and Max values to the Priority Parameter | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
When no Role_CAMP_Priority is assigned but passing priority value in parameters. | "{ ""Message"": ""Call Priority role is not assigned to this account. Please contact the admin."" }" |
Providing InValid "URL To Push" / Providing Empty/ Null "URL To Push" / Not providing "URL To Push" Parameter | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Invalid "Hit ScreenPop URl At" / Providing Empty/ Null "Hit ScreenPop URl At" | "{ ""Message"": ""Invalid hitScreenPopUrlAT"" }" |
Not providing "Hit ScreenPop URl At" Parameter | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing valid "Hit ScreenPop URl At" as Plugin and not passing Plugin Name | "{ ""Message"": ""Invalid pluginName"" }" |
Providing valid "Hit ScreenPop URl At" as Plugin and passing Valid Plugin Name which is in account. (Zoho/idesk) | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing valid "ScreenPop URL" / Providing invalid "ScreenPop URL" / Providing Empty/ Null "ScreenPop URL" | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing Invalid Prefix | "{ ""Message"": ""Call Prefix should be between 1 to 6 digits long and allows prefix +"" }" |
Providing Min and Max values to the Prefix Parameter | "{ ""Message"": ""Campaign XXXXXX Created Successfully."" }" |
Providing Empty/ Null Prefix | "{ ""Message"": ""Call Prefix should be between 1 to 6 digits long and allows prefix +"" }" |
Not providing Prefix Parameter | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
When no Role_Prefix is assigned and passing prefix key and value. | "{ ""Message"": ""Call Prefix role is not assigned to this account. Please contact the admin."" }" |
Providing Invalid No.Of.Tries / Providing Empty/ Null No.Of.Tries | "{ ""Message"": ""ruleNot should be between 1 and 10."" }" |
Not providing No.Of.Tries Parameter | "{ ""Message"": ""noOfTries should be between 1 and 10."" }" |
Providing Invalid Block Number / Providing Empty Block Number / Not Providing Block Number Parameter | "{ ""Message"": ""Invalid BlockNumber"" }" |
Providing valid Block Number as "None" | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing valid Block Number as "Block" and passing valid Blocknumber Group. | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing valid Block Number as "Block" and passing Invalid Blocknumber Group. | "{ ""Message"": ""Please Pass valid Block Group"" }" |
Providing valid Block Number as "Block" and not passing Blocknumber Group. | "{ ""Message"": ""Please Pass valid Block Group"" }" |
Providing valid Block Number as "Allow" and passing valid Blocknumber Group. | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing valid Block Number as "Allow" and passing Invalid Blocknumber Group. | "{ ""Message"": ""Please Pass valid Block Group"" }" |
Providing valid Block Number as "Allow" and without passing Blocknumber Group. | "{ ""Message"": ""Please Pass valid Block Group"" }" |
Providing Invalid Record / Providing Empty Record / Not Providing Record Parameter | "{ ""Message"": ""Invalid recOn"" }" |
Providing Empty / Null Customer Ringing Time | "{ ""Message"": ""customerRingTime should be between 1 and 90"" }" |
Providing Invalid Customer Ringing Time | "{ ""Message"": ""customerRingTime should be between 1 and 90"" }" |
Providing Min and Max values to the Customer Ringing Time parameter | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Not Providing Customer Ringing Time Parameter | "{ ""Message"": ""customerRingTime should be between 1 and 90"" }" |
Providing invalid Dispostion Type / Providing Empty Dispostion Type / Not Providing Dispostion Type Parameter | "{ ""Message"": ""Disposition Type Invalid"" }" |
Providing valid Disposition | "{ ""Message"": ""Campaign XXXXX created Successfully."" }" |
Providing invalid Disposition / Providing Empty Disposition / Not Providing Disposition Parameter | "{ ""Message"": ""Please pass valid disposition"" }" |
Providing Multi level Dispostions | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing valid WrapUpTime | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Invalid WrapUp Time | "{ ""Message"": ""wrapUpTime should be between 0 to 9999 seconds."" }" |
Providing acceptable values to WrapUp Time parameter | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing Empty WrapUp Time / Not Providing WrapUp Time Parameter | "{ ""Message"": ""wrapUpTime should be between 0 to 9999 seconds."" }" |
Providing valid User Assigned | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing invalid User Assigned / Providing Empty User Assigned | "{ ""Message"": ""Invalid users."" }" |
Not Providing User Assigned Parameter | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing valid Mapping Name | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Invalid Mapping Name / Providing Empty Mapping Name / Not Providing Mapping Name Parameter | "{ ""Message"": ""mappingName Does not Exists"" }" |
Providing valid Music File - On Hold | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing Invalid Music File - On Hold | "{ ""Message"": ""holdMusic is invalid"" }" |
Providing Empty/Null Music File - On Hold | "{ ""Message"": ""holdMusic is invalid"" }" |
Not Providing Music File - On Hold | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing valid Music File - On Transfer | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Invalid Music File - On Transfer | "{ ""Message"": ""transferMusic is invalid"" }" |
Providing Empty/Null Music File - On Transfer | "{ ""Message"": ""transferMusic is invalid"" }" |
Not Providing Music File - On Transfer | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Enabling AMD when "Dial Customer First " is enabled | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Enabling AMD when "Dial Customer First " is not enabled | "{ ""Message"": ""For Progressive and Preview, customerFirst should be enabled if AMDActive is enabled."" }" |
Providing AMD when no ROLE_AMD is not assigned | "{ ""Message"": ""AMD Detection role is not assigned to this account. Please contact the admin."" }" |
Providing AMD when no ROLE_AMD is not assigned and not passing parameters | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing invalid AMD Type | "{ ""Message"": ""AMD Type Invalid"" }" |
Providing "voice Message URL*" and AMD Type as "Play Voice Message" | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Not Providing "voice Message URL*" and providingAMD Type as "Play Voice Message" | "{ ""Message"": ""AMD Type Invalid"" }" |
Providing "voice Message URL*" and providing AMD Type as other than "Play Voice Message" | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Creating campaign when ROLE_DND_Check is not assigned | "{ ""Message"": ""DND Enable role is not assigned to this account. Please contact the admin."" }" |
DND Check=True when ROLE_DND_Check is not assigned | "{ ""Message"": ""DND Enable role is not assigned to this account. Please contact the admin."" }" |
DND Check=False when ROLE_DND_Check is not assigned | "{ ""Message"": ""DND Enable role is not assigned to this account. Please contact the admin."" }" |
Providing True to all the check Boxes | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing False to all the check Boxes | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing Dial Customer First=True, ACW for UnAnswered Calls=False, Dial By Holding Agent=False | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Dial Customer First=True, ACW for UnAnswered Calls=True, Dial By Holding Agent=True | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing Dial By Holding Agent=True, ACW for UnAnswered Calls=False, Dial Customer First=False | "{ ""Message"": ""Campaign APIProgCamp Created Successfully."" }" |
Providing Dial By Holding Agent=True, ACW for UnAnswered Calls=True, Dial Customer First=True | "{ ""Message"": ""ACW For UnAnswered Calls and Dial By Holding Agent should be false when Dial Customer First is true"" }" |
Providing ACW for UnAnswered Calls=True, Dial By Holding Agent=False | "{ ""Message"": ""ACW For UnAnswered Calls and Dial By Holding Agent should be false when Dial Customer First is true"" }" |
Providing ACW for UnAnswered Calls=True, Dial By Holding Agent=True | "{ ""Message"": ""ACW For UnAnswered Calls and Dial By Holding Agent should be false when Dial Customer First is true"" }" |
Providing valid "Daily Outbound Limit Per Number" | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Invalid "Daily Outbound Limit Per Number" | "{ ""Message"": ""Daily Outbound Limit per Number between 1 and 99."" }" |
Providing acceptable values to "Daily Outbound Limit Per Number" parameter | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing Empty "Daily Outbound Limit Per Number" | "{ ""Message"": ""Daily Outbound Limit per Number between 1 and 99."" }" |
Not Providing "Daily Outbound Limit Per Number" Parameter | "{ ""Message"": ""Campaign XXXXX Created Successfully."" }" |
Providing valid "Daily Outbound Limit Per Number" when ROLE_Outbound_Restriction is not assigned | "{ ""Message"": ""OBD RESTRICTION role is not assigned to this account. Please contact the admin."" }" |
Providing "Daily Outbound Limit Per Number" when ROLE_Outbound_Restriction is not assigned | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing Invalid "Daily Outbound Limit Per Number" when Setting "Outbound Dialing rule On" as None. | "{ ""Message"": ""Daily Outbound Limit per Number between 1 and 99."" }" |
Providing valid "Daily Outbound Limit Per Number" when Setting "Outbound Dialing rule On" as None. | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing "Apply DNC Regulation" | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Providing "Apply DNC Regulation" and Run Time | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Creating Duplicate campaign | "{ ""Message"": ""Campaign name Already Exists."" }" |
Creating Campaign w.r.t Role Based Checks | "{ ""Message"": ""Campaign XXXX Created Successfully."" }" |
Updating play disclaimer when the campaign is in Running State. | "{ ""Message"": ""Please change the campaign status to Ready or Completed to update the campaign."" }" |