---
title: "Create an open channel"
method: POST
path: "/v3/open_channels"
tags: ["Open channel"]
---

# Create an open channel

`POST /v3/open_channels`

## Request

- Base URL: `https://api-APP_ID.sendbird.com`
- URL: `https://api-APP_ID.sendbird.com/v3/open_channels`
- Auth: none declared

## Create an open channel

You can create an [open channel](https://sendbird.com/docs/chat/platform-api/v3/channel/channel-overview#2-channel-types-3-open-channel) that facilitates conversations for millions of users. Open channels allow a seamless chat experience possible for all participants by using [dynamic partitioning](https://sendbird.com/docs/chat/platform-api/v3/channel/channel-overview#4-how-dynamic-partitioning-works) which creates subchannels that each handle up to tens of thousands of participants.

Because users don't need invitations to join open channels, short-lived live events like concerts or live streams that don't require a sustained membership are good use cases for open channels.

[https://sendbird.com/docs/chat/v3/platform-api/guides/open-channel#2-create-a-channel](https://sendbird.com/docs/chat/v3/platform-api/guides/open-channel#2-create-a-channel)

## Headers

- `api-token` string

## Request body

- CreateAnOpenChannelRequest
  - `is_dynamic_partitioned` boolean
  - `channel_url` string
  - `cover_file` string, binary
  - `cover_url` string
  - `custom_type` string
  - `data` string
  - `is_ephemeral` boolean
  - `name` string
  - `operator_ids` string[]

## Response `200`

Successful response

- CreateAnOpenChannelResponse
  - `channel_url` string, required
  - `cover_url` string
  - `created_at` integer
  - `custom_type` string
  - `data` string
  - `freeze` boolean
  - `is_dynamic_partitioned` boolean
  - `is_ephemeral` boolean
  - `max_length_message` integer
  - `name` string
  - `operators` SendbirdBasicUserInfo[]
    - `require_auth_for_profile_image` boolean
    - `is_active` boolean
    - `is_blocked_by_me` boolean
    - `role` '' | 'none' | 'operator'
    - `nickname` string, nullable
    - `user_id` string, required
    - `profile_url` string
    - `metadata` object, nullable
  - `participant_count` integer
  - `metadata` object, nullable

## Changes

- **2025-07-27** `7a85bad03e90`: 3 warning, 3 info
  - deleted the `header` request parameter `Api-Token`
  - removed the request property `[is_dynamic_partitioned](#2-how-dynamic-partitioning-works)`
  - removed the request property `operators`
  - api operation id `ocCreateChannel` removed and replaced with `createAnOpenChannel`
  - …2 more
- **2023-11-10** `135d8b0705d4`: 1 info
  - the `header` request parameter `Api-Token` became optional
- **2022-08-03** `e7d61563a147`: 10 info
  - the request property `[is_dynamic_partitioned](#2-how-dynamic-partitioning-works)` became optional
  - the request property `channel_url` became optional
  - the request property `cover_file` became optional
  - the request property `cover_url` became optional
  - …6 more
- **2022-07-27** `0b6cf41bc62a`: 1 breaking
  - the `operator_ids/items/` request property type changed from `integer` to `string`
- **2022-02-16** `c42164095c7c`: 1 breaking
  - the `header` request parameter `Api-Token` became required

[Operation history](https://skmtc.dev/sendbird/apis/sendbird-platform-sdk/changes/v3/open_channels/post.md)

---

[API](https://skmtc.dev/sendbird/apis/sendbird-platform-sdk.md) - [All operations](https://skmtc.dev/sendbird/apis/sendbird-platform-sdk/llms.txt) - [OpenAPI document](https://skmtc.dev/sendbird/apis/sendbird-platform-sdk/revisions/9e53a5288df0?raw)
