---
title: "Creates a new channel in Slack."
method: POST
path: "/createChannel"
tags: ["channel"]
---

# Creates a new channel in Slack.

`POST /createChannel`

Creates a new channel in Slack, which can be either public or private.

## Request body

- object
  - `body` object — Body of the createChannel sls call
    - `arguments` object, required
      - `name` string, required — The name of the channel to create.
      - `isPrivate` boolean — Whether the channel should be private. Defaults to false.
      - `join` boolean — Whether the user should join the channel. Defaults to true.
      - `userIds` string[] — Optional array of user IDs to add to the channel after creation. User IDs start with 'U'.

## Response `200`

Successful response

- object
  - `id` string, required — The ID of the channel.
  - `name` string, required — The name of the channel.
  - `is_channel` boolean, required — Indicates if the object represents a channel.
  - `is_group` boolean — Indicates if the object represents a private channel.
  - `is_im` boolean — Indicates if the object represents a direct message conversation.
  - `created` integer, required — A Unix timestamp indicating when the channel was created.
  - `creator` string, required — The ID of the user who created the channel.
  - `is_archived` boolean — Indicates if the channel is archived.
  - `is_general` boolean — Indicates if the channel is the default "general" channel.
  - `unlinked` integer — The number of members that have been removed from the channel
  - `name_normalized` string — The channel name, but with any special characters replaced.
  - `is_shared` boolean — Indicates if the channel is shared with other workspaces.
  - `is_ext_shared` boolean — Indicates if the channel is part of an external shared connection.
  - `is_org_shared` boolean — Indicates if the channel is shared with the entire organization.
  - `pending_shared` string[] — A list of team IDs that have been invited to the channel but have not yet joined
  - `is_pending_ext_shared` boolean — Indicates if the conversation is ready to become an external shared channel but needs approval
  - `is_member` boolean — Indicates if the calling user is a member of the channel.
  - `is_private` boolean, required — Indicates if the channel is private.
  - `is_mpim` boolean — Indicates if the object represents a multi-person direct message.
  - `topic` object — An object containing the channel's topic information.
  - `purpose` object — An object containing the channel's purpose information.
  - `previous_names` unknown[] — A list of any previous names the channel had.
    - unknown
  - `num_members` integer — The number of members in the channel.

## Other responses

- `400` — Bad Request - Invalid parameters provided
- `403` — Forbidden - Not authorized to create channels
- `500` — Internal Server Error

## Changes

- **2025-07-22** `06e497165365` — 1 info
  - added the new optional request property `body/arguments/userIds`
- **2025-07-16** `6a2873d28ea3` — 1 info
  - added the new optional request property `body/arguments/join`
- **2025-07-15** `c28a413c6b00` — 1 breaking, 25 info
  - removed the required property `channel` from the response with the `200` status
  - api tag `channel` added
  - the `isPrivate` request property default value `false` was removed
  - added the optional property `is_archived` to the response with the `200` status
  - …22 more
- **2025-07-10** `b883cbfe46f6` — 1 info
  - endpoint added
- **2025-06-20** `37c50ff8be3a` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/microfox-ai/apis/slack-d/changes/createChannel/post.md)

---

[API](https://skmtc.dev/microfox-ai/apis/slack-d.md) · [All operations](https://skmtc.dev/microfox-ai/apis/slack-d/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/microfox-ai/slack-d/revisions/cd0edf0c2cdf/schema)
