Skip to content

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/{{IID}}/campaign/{{campaignId}}?campaignType=sms
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
IId The Application ID. string, required
campaignId Unique ID of the campaign to be updated. For example: cd-ed19e3c7-3682-5e72-a839-af9e0711xxxx string, required

Query Parameter

Parameter Description Type
campaignType Type of campaign. Use "sms". string, required

Sample Request

curl --location --request PUT 'https://{{host}}/agentassist/api/v1/public/{{IID}}/campaign/{{campaignID}}?campaignType=sms' \
--header 'auth: <token>' \
--header 'Content-Type: application/json' \
--header 'iid: st-0603182c-7ffb-53c3-b307-47ca14b9xxxx' \
--header 'accountId: 67777ce93e25326494e9xxxx' \
--data '{
    "name": "Interactive Support SMS Campaign",
    "description": "Updated: This campaign sends an SMS with a link or instructions to interact with a Kore.ai bot. Customers can check order status, raise tickets, or get help—all via chat-enabled SMS.",
    "contactLists": [
     "Renewal Due - May/June 2025"
    ],
    "priority": "5",
    "format": "advanced",
    "campaignType": "sms",
    "dialingStrategy": {
        "callerId": {
            "phoneNumber": "+919876543210"
        },
        "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 Support Flow"
}'

Headers

Header Description Required/Optional
auth JWT token for authentication. required
iid The Application Id. required
accountId The Account Id. required

Body Parameters

Parameter Description Type
name Name of the SMS campaign. Used to identify the campaign across the platform. Max 48 characters. string, required
description Description explaining the campaign’s objective (for example, enabling user interaction via SMS). Max 256 characters. string, required
contactLists Names of predefined contact lists this campaign will target. At least one contact list name is required. array[string], required
priority Campaign priority. Higher values indicate higher execution priority. Must be one of: 1, 2, 3, 4, or 5. string, required
format Message format type. "advanced" is typically used when personalized content or bot links are included. string, required
campaignType Type of campaign. Must be either 'voice' or 'sms'. string, required
dialingStrategy.callerId.phoneNumber Phone number or sender ID used to send the SMS. Must be registered with the provider. string, required
dialingStrategy.callingHours.frequency Frequency of calling hours. Allowed values: 'WEEKLY', 'DAILY', or 'CUSTOM'. string, required
dialingStrategy.callingHours.timezone Timezone used to enforce sending hours. Example: "Asia/Kolkata". string, required
dialingStrategy.callingHours.days Array of allowed days and time blocks for sending SMS. Each entry includes: day, start (for example, "9:00 AM"), and end (for example, "6:00 PM"). Multiple allowed. array[object], required
experienceFlowName Name of the Kore.ai experience flow (bot flow) triggered via SMS for interactive support. string, required

Sample Response

{
    "status": "success",
    "message": "Campaign Interactive Support SMS Campaign details updated successfully",
    "data": {
        "_id": "cd-3aefda80-f98e-5f4f-ad41-92803abbxxxx",
        "name": "Interactive Support SMS Campaign",
        "lname": "interactive support sms campaign",
        "description": "Updated: This campaign sends an SMS with a link or instructions to interact with a Kore.ai bot. Customers can check order status, raise tickets, or get help—all via chat-enabled SMS.",
        "status": "Ready",
        "priority": "5",
        "dialingStrategy": {
            "callerId": {
                "phoneNumber": "+919876543210"
            },
            "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-67447605-115e-5dd2-a676-e158cf3bxxxx",
        "createdAt": "2025-06-27T09:25:53.320Z",
        "updatedAt": "2025-06-27T09:31:56.940Z",
        "schedule": {
            "isSchedulingEnabled": false,
            "isRecurrenceEnabled": false
        },
        "contactLists": [
            "Renewal Due - May/June 2025"
        ],
        "enableMachineDetect": false,
        "format": "advanced"
    }
}

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
data.format Specifies the message format (for example, advanced). string