Update SMS Campaign API
Use this API to update an existing SMS campaign using the format, contact lists, experience flow, and dialing strategy.
Method |
PUT |
Endpoint |
https://{{host}}/agentassist/api/v1/public/{{streamId}}/campaign/{{campaignId}}?accountId={{accountId}}&campaignType={{campaignType}} |
Content-Type |
application/json |
Authorization |
auth: {{JWT}} See How to generate the JWT Token. |
API Scope |
Campaign Management |
Path Parameters
Parameter |
Description |
Type |
host |
Environment URL. For example: https://platform.kore.ai |
string, required |
streamId |
The bot ID or stream ID. You can find it on the General Settings page of the bot. |
string, required |
campaignId |
Unique ID of the campaign to be updated. For example: cd-ed19e3c7-3682-5e72-a839-af9e0711xxxx |
string, required |
Query Parameters
Parameter |
Description |
Type |
accountId |
The unique ID associated with the account. |
string, required |
campaignType |
Type of campaign. Use "sms" . |
string, required |
Sample Request
curl --location --request PUT 'https://{{host}}/agentassist/api/v1/public/{{streamId}}/campaign/{{campaignId}}?accountId={{accountId}}&campaignType={{campaignType}}' \
--header 'auth: <token>' \
--data '{
"name": "SMS From API - With Advanced Format - 2",
"description": "SMS From API - With Advanced Format- 2",
"contactLists": [
"APIContctList"
],
"priority": "5",
"format": "advanced",
"campaignType": "sms",
"dialingStrategy": {
"callerId": {
"phoneNumber": "+919860792682",
"direction": "outbound"
},
"callingHours": {
"frequency": "WEEKLY",
"timezone": "Asia/Kolkata",
"days": [
{
"day": "MO",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "TU",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "WE",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "TH",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "FR",
"start": "9:00 AM",
"end": "6:00 PM"
}
]
}
},
"schedule": {
"isSchedulingEnabled": false
},
"experienceFlowName": "sms flow"
}'
Header |
Description |
Required/Optional |
auth |
JWT token for authentication. |
required |
Body Parameters
Parameter |
Description |
Type |
name |
Name of the campaign. |
string, required |
description |
Description of the campaign. |
string, optional |
contactLists |
List of contact list names to use in the campaign. |
array, required |
campaignType |
Type of campaign. Always sms . |
string, required |
priority |
Campaign execution priority. For example, 5 |
string, optional |
format |
Message format. Use simple . |
string, required |
message |
Message content. |
object, required |
message.templateId |
Template ID for pre-configured message. Leave empty if sending a plain message. |
string, optional |
message.message |
Base64-encoded message content. |
string, required |
dialingStrategy |
Calling strategy. |
object, required |
dialingStrategy.callerId |
Caller ID details. |
object, required |
dialingStrategy.callerId.phoneNumber |
Caller’s phone number in E.164 format. |
string, required |
dialingStrategy.callingHours |
Permitted days and times. |
object, required |
dialingStrategy.callingHours.frequency |
Frequency type. For example: WEEKLY . |
string, required |
dialingStrategy.callingHours.timezone |
Time zone for the campaign. For example: Asia/Kolkata . |
string, required |
dialingStrategy.callingHours.days |
List of day/time windows. |
array, required |
dialingStrategy.callingHours.days.day |
Day of the week (MO , TU , WE , etc.). |
string, required |
dialingStrategy.callingHours.days.start |
Start time (for example, 9:00 AM ). |
string, required |
dialingStrategy.callingHours.days.end |
End time (for example, 6:00 PM ). |
string, required |
schedule |
Scheduling settings. |
object, optional |
schedule.isSchedulingEnabled |
Set to false to trigger the campaign immediately. |
boolean, optional |
experienceFlowName |
Name of the associated experience flow. |
string, required |
Sample Response
{
"status": "success",
"message": "Campaign SMS From API - With Advanced Format- 2 details updated successfully",
"data": {
"_id": "cd-ed19e3c7-3682-5e72-a839-af9e0711ddda",
"name": "SMS From API - With Advanced Format - 2",
"lname": "sms from api - with advanced format - 2",
"description": "SMS From API - With Advanced Format- 2",
"status": "Stopped",
"priority": "5",
"dialingStrategy": {
"callerId": {
"phoneNumber": "+919860792682"
},
"callingHours": {
"frequency": "WEEKLY",
"timezone": "Asia/Kolkata",
"days": [
{
"day": "MO",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "TU",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "WE",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "TH",
"start": "9:00 AM",
"end": "6:00 PM"
},
{
"day": "FR",
"start": "9:00 AM",
"end": "6:00 PM"
}
]
}
},
"experienceFlow": "cf-0d438227-57cb-5a42-82b8-0099453a8af0",
"totalMessagesSent": 0,
"direction": "advanced",
"createdAt": "2025-06-26T06:03:48.502Z",
"updatedAt": "2025-06-26T09:54:42.030Z",
"schedule": {
"isSchedulingEnabled": false,
"isRecurrenceEnabled": false
},
"campaignInstanceId": "cid-b1c6849b-b40f-550e-ace7-3b17aab9dxxxx",
"contactLists": [
"APIContctList"
],
"enableMachineDetect": false
}
}
Response Body Parameters
Parameter |
Description |
Type |
_id |
Unique identifier for the campaign. |
string |
name |
Campaign name. |
string |
lname |
Lowercase version of campaign name. |
string |
description |
Campaign description. |
string |
status |
Current campaign status. For example: Ready . |
string |
priority |
Campaign priority. For example: 5 . |
string |
dialingStrategy |
Dialing configuration for the campaign. |
object |
dialingStrategy.callerId |
Caller ID configuration. |
object |
dialingStrategy.callerId.phoneNumber |
Caller phone number in E.164 format. |
string |
dialingStrategy.callingHours |
Allowed calling hours. |
object |
dialingStrategy.callingHours.frequency |
Frequency of calls. For example: WEEKLY . |
string |
dialingStrategy.callingHours.timezone |
Time zone used for calling hours. |
string |
dialingStrategy.callingHours.days |
List of daily calling windows. |
array |
dialingStrategy.callingHours.days.day |
Day of the week (for example, MO , TU ). |
string |
dialingStrategy.callingHours.days.start |
Start time (for example, 9:00 AM ). |
string |
dialingStrategy.callingHours.days.end |
End time (for example, 6:00 PM ). |
string |
experienceFlow |
Experience flow ID assigned. |
string |
totalMessagesSent |
Count of messages sent. |
integer |
direction |
Campaign format type. For example: advanced . |
string |
createdAt |
Campaign creation timestamp in ISO format. |
string |
updatedAt |
Last update timestamp in ISO format. |
string |
schedule |
Scheduling settings for the campaign. |
object |
schedule.isSchedulingEnabled |
Indicates if scheduling is enabled for the campaign. |
boolean |
schedule.isRecurrenceEnabled |
Indicates if the campaign repeats automatically (daily, weekly, etc.). |
boolean |
campaignInstanceId |
Internal campaign instance identifier. For example: cid-b1c6849b-b40f-550e-ace7-xxxx |
string |
contactLists |
List of contact list names used in the campaign. |
array |
enableMachineDetect |
Indicates if machine detection is enabled (not applicable for SMS). |
boolean |