Search + K

Command Palette

Search for a command to run...

Sign In

conversations_create

POST /conversations.create
Copy endpoint
https://slack.com/api

Initiates a public or private channel-based conversation

Parameters

header Header Parameters

Name Type
token

Authentication token. Requires scope: conversations:write

string

Request Body

application/x-www-form-urlencoded
{ is_private?: boolean;name?: string; }

Responses

200 application/json

If successful, the command returns a rather stark conversation object

{ channel: ObjsConversation
type ObjsConversation = ({
accepted_user?: DefsUserId;
connected_team_ids?: DefsWorkspaceId[];
conversation_host_id?: DefsWorkspaceId;
created: number;
creator: DefsUserId;
display_counts?: { display_counts: number;guest_counts: number; };
enterprise_id?: DefsEnterpriseId;
has_pins?: boolean;
id: DefsChannel;
internal_team_ids?: DefsTeam[];
is_archived: boolean;
is_channel: boolean;
is_ext_shared?: boolean;
is_frozen?: boolean;
is_general: boolean;
is_global_shared?: boolean;
is_group: boolean;
is_im: boolean;
is_member?: boolean;
is_moved?: number;
is_mpim: false;
is_non_threadable?: boolean;
is_open?: boolean;
is_org_default?: boolean;
is_org_mandatory?: boolean;
is_org_shared: boolean;
is_pending_ext_shared?: boolean;
is_private: boolean;
is_read_only?: boolean;
is_shared: boolean;
is_starred?: boolean;
is_thread_only?: boolean;
last_read?: DefsTs;
latest?: (ObjsMessage | null)[];
members?: DefsUserId[];
name: string;
name_normalized: string;
num_members?: number;
parent_conversation?: (DefsChannel | null)[];
pending_connected_team_ids?: DefsTeam[];
pending_shared?: DefsTeam[];
pin_count?: number;
previous_names?: DefsChannelName[];
priority?: number;
purpose: { creator: DefsTopicPurposeCreator;last_set: number;value: string; };
shared_team_ids?: DefsTeam[];
shares?: {
accepted_user?: DefsUserId;
is_active: boolean;
team: ObjsTeam;
user: DefsUserId;
}
[]
;
timezone_count?: number;
topic: { creator: DefsTopicPurposeCreator;last_set: number;value: string; };
unlinked?: number;
unread_count?: number;
unread_count_display?: number;
use_case?: string;
user?: DefsUserId;
version?: number;
}
| {
accepted_user?: DefsUserId;
connected_team_ids?: DefsTeam[];
conversation_host_id?: DefsWorkspaceId;
created: number;
creator: DefsUserId;
display_counts?: { display_counts: number;guest_counts: number; };
id: DefsChannel;
internal_team_ids?: DefsTeam[];
is_archived: boolean;
is_channel: boolean;
is_ext_shared?: boolean;
is_frozen?: boolean;
is_general: boolean;
is_group: boolean;
is_im: boolean;
is_member?: boolean;
is_moved?: number;
is_mpim: true;
is_non_threadable?: boolean;
is_open?: boolean;
is_org_shared: boolean;
is_pending_ext_shared?: boolean;
is_private: boolean;
is_read_only?: boolean;
is_shared: boolean;
is_starred?: boolean;
is_thread_only?: boolean;
last_read?: DefsTs;
latest?: (ObjsMessage | null)[];
members?: DefsUserId[];
name: string;
name_normalized: string;
num_members?: number;
parent_conversation?: (DefsChannel | null)[];
pending_connected_team_ids?: DefsTeam[];
pending_shared?: DefsTeam[];
pin_count?: number;
previous_names?: DefsChannelName[];
priority?: number;
purpose: { creator: DefsTopicPurposeCreator;last_set: number;value: string; };
shared_team_ids?: DefsTeam[];
shares?: {
accepted_user?: DefsUserId;
is_active: boolean;
team: ObjsTeam;
user: DefsUserId;
}
[]
;
timezone_count?: number;
topic: { creator: DefsTopicPurposeCreator;last_set: number;value: string; };
unlinked?: number;
unread_count?: number;
unread_count_display?: number;
user?: DefsUserId;
version?: number;
}
| {
created: number;
has_pins?: boolean;
id: DefsDmId;
is_archived?: boolean;
is_ext_shared?: boolean;
is_frozen?: boolean;
is_im: boolean;
is_open?: boolean;
is_org_shared: boolean;
is_shared?: boolean;
is_starred?: boolean;
is_user_deleted?: boolean;
last_read?: DefsTs;
latest?: (ObjsMessage | null)[];
parent_conversation?: (DefsChannel | null)[];
pin_count?: number;
priority: number;
shares?: {
date_create: number;
id: DefsTeam;
is_active: boolean;
name: string;
team: ObjsTeam;
}
[]
;
unread_count?: number;
unread_count_display?: number;
user: DefsUserId;
version?: number;
}
)[]
;ok: DefsOkTrue
type DefsOkTrue = true
; }
default application/json

Typical error response when name already in use

{
callstack?: string;
detail?: string;
error: "method_not_supported_for_channel_type" | "missing_scope" | "name_taken" | "restricted_action" | "no_channel" | "invalid_name_required" | "invalid_name_punctuation" | "invalid_name_maxlength" | "invalid_name_specials" | "invalid_name" | "not_authed" | "invalid_auth" | "account_inactive" | "user_is_bot" | "user_is_restricted" | "invalid_arg_name" | "invalid_array_arg" | "invalid_charset" | "invalid_form_data" | "invalid_post_type" | "missing_post_type" | "team_added_to_org" | "invalid_json" | "json_not_object" | "request_timeout" | "upgrade_required";
needed?: string;
ok: DefsOkFalse
type DefsOkFalse = false
;
provided?: string;
}