> ## 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.

# Channel Enablement API

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

To enable a channel for an AI Agent.

| Field             | Value                                                                                                                            |
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| **Method**        | POST                                                                                                                             |
| **Endpoint**      | `https://{{host}}/api/public/channels`                                                                                           |
| **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**     | App Builder: Not Applicable; Admin Console: Channel Management                                                                   |

## Query Parameters

| Parameter | Description                                                   | Required |
| --------- | ------------------------------------------------------------- | -------- |
| `host`    | The environment URL. For example, `https://platform.kore.ai`. | Required |

## Sample Request

**Web/Mobile channel:**

```bash theme={null}
curl --location --request POST 'https://{{host}}/api/public/channels' \
--header 'auth: {{YOUR_JWT_ACCESS_TOKEN}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "streamId": "st-xxxxfxxx-edxx-xxxx-xxbb-fxxxexxfxfcx",
    "channelDetails": {
        "displayName": "Web / Mobile Client",
        "type": "rtm",
        "app": {
           "clientId": "cs-xexxdxxx-xbbc-xxex-xxef-xxxxxxxxfxfx",
           "appName": "app_name"
        },
     "enable": true
    },
  "type": "rtm"
}'
```

**MS Teams channel:**

```json theme={null}
curl --location --request POST 'https://{{host}}/api/public/channels' \
--header 'auth: {{YOUR_JWT_ACCESS_TOKEN}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "streamId": "st-4xx7ccxx-8xx5-5cxx-9xxf-5bxxxxxxxxxx",
    "channelDetails": {
       "botName": "Banking Bot",
       "enable": true,
       "type": "msteams",
       "appId": "cbabcxce-acxb-xxxx-axxf-xabxxxfexxxb",
       "appPassword": ""
     },
   "type": "msteams"
}'
```

**WebHook channel:**

```json theme={null}
curl --location --request POST 'https://{{host}}/api/public/channels' \
--header 'auth: {{YOUR_JWT_ACCESS_TOKEN}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "streamId": "st-cxfaxxax-xexx-xxex-axxe-xxdxexxxfxex",
    "channelDetails": {
        "app": {
            "clientId": "cs-dxxcxxxc-Xxxx-xxxx-axxx-xxxxcxbexeax",
            "appName": "Banking Bot"
        },
     "createInstance": true,
     "type": "ivr",
     "displayName": "webhook1",
     "enable": true,
     "enablePolling": false,
     "isAsync": false
    },
    "type": "ivr"
}'
```

**Slack channel:**

```json theme={null}
curl --location --request POST 'https://{{host}}/api/public/channels' \
--header 'auth: {{YOUR_JWT_ACCESS_TOKEN}}' \
--header 'Content-Type: application/json' \
--data-raw '{
   "streamId": "st-1bxxxxxx-9xx0-5xxa-abxx-51xxxxxxxxxa",
   "channelDetails": {
       "displayName": "slack",
       "botName":"Banking Bot",
       "enable": true,
       "type": "slack",
       "accessToken": "xoxb-xxxxxxxx-xxxxxx-xxxxxxxxxxxxxxxxxxxxxZ",
       "clientId": "xxxxxx.xxxxxx",
       "clientSecret": "xxexxdxxxdxcxxbxacxxxdfxxxxxex",
       "verificationToken": "abcd"
   },
   "type": "slack"
}'
```

## Body Parameters

| Parameter  | Description                                                                                        | Required |
| ---------- | -------------------------------------------------------------------------------------------------- | -------- |
| `streamId` | Stream or Bot ID. Access it from the General Settings page of the bot.                             | Required |
| `appName`  | The app associated with this bot. Obtain it from the Manage Apps page.                             | Required |
| `clientId` | The client ID for the app. Obtain it from the Manage Apps page.                                    | Required |
| `type`     | Channel to enable: `rtm` (Web/Mobile SDK), `slack` (Slack), `ivr` (WebHook), `msteams` (MS Teams). | Required |

## Sample Response

**Web/Mobile SDK:**

```json theme={null}
{
    "displayName": "Web / Mobile Client",
    "type": "rtm",
    "enable": true,
    "embedWebClientDetails": {
        "apiKey": "d3be215756d94803b0a548e59xxxxxxxxxxxx873cec9e48eb918add573d738f2xxxx",
        "chatURL": "https://platform.kore.ai/webclient/...",
        "isURLEnabled": true
    }
}
```

**Webhook channel:**

```json theme={null}
{
    "streamId": "st-6f90cbdc-46c7-52f8-a388-8db39b0xxxxx",
    "channelDetails": {
        "type": "ivr",
        "displayName": "webhook11",
        "enable": true,
        "isAsync": false
    },
    "type": "ivr"
}
```

**MS Teams channel:**

```json theme={null}
{
    "streamId": "st-6f90cbdc-46c7-52f8-a388-8db39b0xxxxx",
    "channelDetails": {
       "botName": "today",
       "enable": true,
       "type": "msteams",
       "appId": "e51678c4-3c92-4053-8d0e-f9173ecxxxxx"
    },
    "type": "msteams"
}
```
