# CreateChannel

> Create a channel (UTM source) with a name and a channel type. Write access, channels toolset, MCP tool create_channel.

**Access:** [Write](https://developer.missin.co.uk/get-started/authentication.md#access-levels)

## Variables

| Variable | Type | Required | Accepts | Description |
|---|---|---|---|---|
| `body` | `JSON!` | yes | Object, fields below |  |

## Input types

### `body`

| Field | Type | Required | Accepts | Description |
|---|---|---|---|---|
| `name` | string | yes | 1 to 120 characters |  |
| `channel_type_id` | string (uuid) | yes |  |  |
| `display_name` | string or null | no | at most 120 characters |  |
| `utm_source` | string or null | no | at most 120 characters |  |
| `utm_medium` | string or null | no | at most 120 characters |  |
| `utm_content` | string or null | no | at most 120 characters |  |
| `status` | string | no | One of `ACTIVE`, `DISABLED`, `DROPPED` |  |
| `media_kind` | string or null | no | One of `IMAGE_POST`, `SHORT_VIDEO`, `LONG_VIDEO`, `STORY`, `LIVE`, `TEXT_POST`, `ADVERTISEMENT` |  |

## Call it

```bash curl
curl https://api.missin.co.uk/graphql/v1 \
  -H "Authorization: Bearer $MISSIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operationName":"CreateChannel","variables":{"body":{"name":"Example","channel_type_id":"00000000-0000-0000-0000-000000000000"}},"extensions":{"persistedQuery":{"version":1,"sha256Hash":"c03913d5440eaa3ebffc95172b56910b07c2e88897d32354e78a0f2ae96a69cc"}}}'
```

## Document

```graphql
mutation CreateChannel($body: JSON!) { __typename createChannel(input: {body: $body}) { __typename channel { __typename channelSlug id name rowId status } channelId channelSlug userErrors { __typename code field message } } }
```

Source: https://developer.missin.co.uk/reference/channels/create-channel
