> ## Documentation Index
> Fetch the complete documentation index at: https://koreai.mintlify.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Create SMS Campaign Using Template

<Badge icon="arrow-left" color="gray">[Back to API List](/ai-for-service/apis/contact-center/api-list)</Badge>

# Create SMS Campaign (Using Template) API

Use this API to create an SMS campaign using a predefined message template.

| **Method**        | POST                                                                                                                           |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **Endpoint**      | `https://{{host}}/agentassist/api/v1/public/{{IID}}/campaign?campaignType=sms`                                                 |
| **Content-Type**  | `application/json`                                                                                                             |
| **Authorization** | `auth: {{JWT}}` See [How to generate the JWT Token](/ai-for-service/apis/automation/api-introduction#generating-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 |

## Query Parameters

| **Parameter**  | **Description**                | **Type**         |
| -------------- | ------------------------------ | ---------------- |
| `campaignType` | Type of Campaign. Use `"sms"`. | string, required |

## Sample Request

```
curl --location 'https://{{host}}/agentassist/api/v1/public/{{IID}}/campaign?campaignType=sms' \
--header 'auth: <token>' \
--header 'iid: st-0603182c-7ffb-53c3-b307-47ca14b9xxxx' \
--header 'accountId: 67777ce93e25326494exxxx' \
--header 'Content-Type: application/json' \
--data '{
    "name": "Billing Alert Template Campaign",
    "description": "Uses a pre-approved message template to alert customers about pending bills. Includes dynamic fields for customer name, due date, and bill amount",
    "contactLists": [
     "Renewal Due - May/June 2025"
    ],
    "campaignType": "sms",
    "priority": "5",
    "format": "simple",
    "message": {
        "template_name": "Payment Reminder Template",
        "message": "VGhpcyBpcyBhIHJlbWluZGVyIHRoYXQgeW91ciBwYXltZW50IGlzIGR1ZSBzb29uLiBQbGVhc2UgY29tcGxldGUgdGhlIHBheW1lbnQgb24gdGltZSB0byBhdm9pZCBhbnkgc2VydmljZSBpbnRlcnJ1cHRpb24uIFZpc2l0IHlvdXIgYWNjb3VudCB0byBwYXkgbm93Lg%3D%3D"
    },
    "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
    }
}'
```

## 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 for identification and reporting. Max 48 characters.                                                                                        | string, required          |
| `description`                            | Description of the campaign’s purpose. Helpful for internal reference. Max 256 characters.                                                                                 | string, required          |
| `contactLists`                           | List of contact list names that will receive the message. Must already exist. At least one required.                                                                       | array\[string], required  |
| `campaignType`                           | Type of campaign. Must be either `'voice'` or `'sms'`.                                                                                                                     | string, required          |
| `priority`                               | Campaign priority. Higher values indicate higher execution priority. Allowed values: 1, 2, 3, 4, 5.                                                                        | string, required          |
| `format`                                 | Format of the SMS. `'simple'` = plain template without personalization logic.                                                                                              | string, required          |
| `message.template_name`                  | Name of the pre-approved message template to use.                                                                                                                          | string, required          |
| `message.message`                        | Base64-encoded message body to be sent. Should match the registered template body exactly.                                                                                 | string (Base64), required |
| `dialingStrategy.callerId.phoneNumber`   | Sender phone number or ID used to send SMS. Must be approved and linked to your SMS provider.                                                                              | string, required          |
| `dialingStrategy.callingHours.frequency` | Frequency of calling hours. Allowed values: `'WEEKLY'`, `'DAILY'`, `'CUSTOM'`.                                                                                             | string, required          |
| `dialingStrategy.callingHours.timezone`  | Timezone used to interpret calling hours. Example: `"Asia/Kolkata"`.                                                                                                       | string, required          |
| `dialingStrategy.callingHours.days`      | List of day/time ranges when messaging is allowed. Each object includes: `day`, `start` (for example, "9:00 AM"), `end` (for example, "6:00 PM"). Multiple blocks allowed. | array\[object], required  |

## Sample Response

```
{
    "status": "success",
    "message": "Campaign Billing Alert Template Campaign creation in progress",
    "data": {
        "_id": "cd-d6824984-fb9c-513f-b7aa-25c355fdxxxx",
        "name": "Billing Alert Template Campaign",
        "lname": "billing alert template campaign",
        "description": "Uses a pre-approved message template to alert customers about pending bills. Includes dynamic fields for customer name, due date, and bill amount",
        "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"
                    }
                ]
            }
        },
        "message": {
            "template_name": "Payment Reminder Template",
            "message": "PHA%2BVGhpcyBpcyBhIDxzdHJvbmc%2BcmVtaW5kZXI8L3N0cm9uZz4gdGhhdCB5b3VyIHBheW1lbnQgaXMgZHVlIHNvb24uIFBsZWFzZSBjb21wbGV0ZSB0aGUgcGF5bWVudCBvbiB0aW1lIHRvIGF2b2lkIGFueSBzZXJ2aWNlIGludGVycnVwdGlvbi4gVmlzaXQgeW91ciBhY2NvdW50IHRvIHBheSBub3cuPC9wPg%3D%3D",
            "templateId": "cmt-152aa8a4-81a6-591e-aff3-d5645dafxxxx"
        },
        "createdAt": "2025-06-27T08:48:57.215Z",
        "updatedAt": "2025-06-27T08:48:57.215Z",
        "schedule": {
            "isSchedulingEnabled": false
        },
        "contactLists": [
            "Renewal Due - May/June 2025"
        ],
        "enableMachineDetect": false,
        "format": "simple"
    }
}
```

## 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. 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   |
| `message`                                 | Contains the Base64-encoded SMS content.                            | object   |
| `message.message`                         | Base64-encoded SMS message string.                                  | string   |
| `totalMessagesSent`                       | Count of messages sent.                                             | integer  |
| `direction`                               | Campaign format type. For example: `simple`.                        | 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  |
| `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, `simple`).               | string   |
