Skip to main content
Back to API List

Create SMS Campaign (Advanced Format) API-v2

Use this API to create an SMS campaign with advanced formatting using the specified experience flow and contact list.
MethodPOST
Endpointhttps://{{host}}/api/v2/public/{{streamId}}/campaign?accountId={{accountId}}&campaignType=sms
Content-Typeapplication/json
Authorizationauth: {{JWT}} See How to generate the JWT Token.
API ScopeCampaign Management

Path Parameters

ParameterDescriptionType
hostEnvironment URL. For example: https://platform.kore.aistring, required
streamIdBot ID or Stream ID. You can get it from the general settings page.string, required

Query Parameters

ParameterDescriptionType
campaignTypeType of campaign. Use "sms".string, required

Sample Request

curl --location 'hhttps://{{host}}/api/v2/public/{{streamId}}/campaign?accountId={{accountId}}&campaignType=sms' \
--header 'auth: <token>' \
--header 'accountid: 67777ce93e25326494exxxxx' \
--header 'iid: st-0603182c-7ffb-53c3-b307-47ca14bxxxxx' \
--data '{
    "name": "Interactive Support SMS Campaign1212",
    "description": "This campaign sends an SMS with a link or instructions to interact with an AI Agent. Customers can check order status, raise tickets, or get help—all via chat-enabled SMS.",
    "contactLists": [
        "CL Only 2020 Dec 4"
    ],
    "dncLists": {
        "name": "testdnc"
    },
    "priority": "5",
    "format": "advanced",
    "campaignType": "sms",
    "dialingStrategy": {
        "callerId": {
            "phoneNumber": "+9198607xxxxx"
        },
        "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

HeaderDescriptionRequired/Optional
authJWT token for authentication.required
iidThe Application Id.required
accountIdThe Account Id.required

Body Parameters

ParameterDescriptionType
nameName of the campaign.string, required
descriptionDescription of the campaign.string, optional
contactListsList of contact list names to use in the campaign.array, required
data.dncListsContains the contact lists added under the Do Not Call (DNC) list.object, optional
data.dncLists.nameThe name of the contact list included in the Do Not Call (DNC) list.string, optional
campaignTypeType of campaign. Always sms.string, required
priorityCampaign execution priority. For example, 5string, optional
formatMessage format. Use simple.string, required
messageMessage content.object, required
message.templateIdTemplate ID for pre-configured message. Leave empty for plain message.string, optional
message.messageBase64-encoded message content.string, required
dialingStrategyCalling strategy.object, required
dialingStrategy.callerIdCaller ID details.object, required
dialingStrategy.callerId.phoneNumberCaller’s phone number in E.164 format.string, required
dialingStrategy.callingHoursPermitted days and times.object, required
dialingStrategy.callingHours.frequencyFrequency type. For example: WEEKLY.string, required
dialingStrategy.callingHours.timezoneTime zone for the campaign. For example: Asia/Kolkata.string, required
dialingStrategy.callingHours.daysList of day/time windows.array, required
dialingStrategy.callingHours.days.dayDay of the week (MO, TU, WE, etc.).string, required
dialingStrategy.callingHours.days.startStart time (for example, 9:00 AM).string, required
dialingStrategy.callingHours.days.endEnd time (for example, 6:00 PM).string, required
scheduleScheduling settings.object, optional
schedule.isSchedulingEnabledSet to false to trigger the campaign immediately.boolean, optional
experienceFlowNameName of the associated experience flow.string, required

Sample Response

{
    "status": "success",
    "message": "Campaign Interactive Support SMS Campaign1212 creation in progress",
    "data": {
        "_id": "cd-e7110489-a30a-5d1e-80ee-f246cc8xxxxx",
        "name": "Interactive Support SMS Campaign1212",
        "lname": "interactive support sms campaign1212",
        "description": "This campaign sends an SMS with a link or instructions to interact with the AI Agent. Customers can check order status, raise tickets, or get help—all via chat-enabled SMS.",
        "status": "Ready",
        "dncLists": {
            "name": "testdnc"
        },
        "priority": "5",
        "dialingStrategy": {
            "callerId": {
                "phoneNumber": "+9198607xxxxx"
            },
            "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-e158cf3xxxxx",
        "isImported": false,
        "isFiltersEnabled": false,
        "createdAt": "2025-12-05T08:16:19.398Z",
        "updatedAt": "2025-12-05T08:16:19.398Z",
        "schedule": {
            "isSchedulingEnabled": false
        },
        "contactLists": [
            "CL Only 2020 Dec 4"
        ],
        "format": "advanced"
    }
}

Response Parameters

ParameterDescriptionType
_idUnique identifier for the campaign.string
nameCampaign name.string
lnameLowercase version of campaign name.string
descriptionCampaign description.string
statusCurrent campaign status. For example: Ready.string
data.dncListsContains the contact lists added under the Do Not Call (DNC) list.object, optional
data.dncLists.nameThe name of the contact list included in the Do Not Call (DNC) list.string, optional
priorityCampaign priority. For example: 5.string
dialingStrategyDialing configuration for the campaign.object
dialingStrategy.callerIdCaller ID configuration.object
dialingStrategy.callerId.phoneNumberCaller phone number in E.164 format.string
dialingStrategy.callingHoursAllowed calling hours.object
dialingStrategy.callingHours.frequencyFrequency of calls. Example: WEEKLY.string
dialingStrategy.callingHours.timezoneTime zone used for calling hours.string
dialingStrategy.callingHours.daysList of daily calling windows.array
dialingStrategy.callingHours.days.dayDay of the week (for example, MO, TU).string
dialingStrategy.callingHours.days.startStart time (for example, 9:00 AM).string
dialingStrategy.callingHours.days.endEnd time (for example, 6:00 PM).string
experienceFlowExperience flow ID assigned.string
totalMessagesSentCount of messages sent.integer
directionCampaign format type. For example: advanced.string
createdAtCampaign creation timestamp in ISO format.string
updatedAtLast update timestamp in ISO format.string
scheduleScheduling settings for the campaign.object
schedule.isSchedulingEnabledIndicates if scheduling is enabled for the campaign.boolean
contactListsList of contact list names used in the campaign.array
data.formatSpecifies the message format (for example, advanced).string