Slack Create API

The Create API from Slack — 7 operation(s) for create.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

slack-create-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  version: '1.0'
  title: Slack Admin Access Create API
  description: "The Slack Admin API is a set of privileged endpoints\x14primarily under admin.* with related SCIM and Audit Logs APIs\x14that lets Enterprise Grid owners and admins automate organization\x11 wide management and governance. It covers user lifecycle (provision, suspend, assign roles), workspace and channel administration across workspaces (create, move, archive channels; manage membership and settings), app governance (approve/deny or allowlist/ban apps and install them to workspaces), invite request handling, and security/compliance controls such as information barriers, session and authentication policies, and org\x11level analytics exports. These APIs require elevated admin scopes and are commonly used to power automated onboarding/offboarding, centralized channel and app controls, and integrations with identity, ITSM, and compliance systems."
tags:
- name: Create
paths:
  /admin.conversations.create:
    post:
      tags:
      - Create
      description: Create a public or private channel-based conversation.
      externalDocs:
        description: API method documentation
        url: https://api.slack.com/methods/admin.conversations.create
      operationId: postAdminConversationsCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `admin.conversations:write`'
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - is_private
              - name
              type: object
              properties:
                name:
                  type: string
                  description: Name of the public or private channel to create.
                description:
                  type: string
                  description: Description of the public or private channel to create.
                is_private:
                  type: boolean
                  description: When `true`, creates a private channel instead of a public channel
                org_wide:
                  type: boolean
                  description: 'When `true`, the channel will be available org-wide. Note: if the channel is not `org_wide=true`, you must specify a `team_id` for this channel'
                team_id:
                  type: string
                  description: 'The workspace to create the channel in. Note: this argument is required unless you set `org_wide=true`.'
          application/json:
            schema:
              required:
              - is_private
              - name
              type: object
              properties:
                name:
                  type: string
                  description: Name of the public or private channel to create.
                description:
                  type: string
                  description: Description of the public or private channel to create.
                is_private:
                  type: boolean
                  description: When `true`, creates a private channel instead of a public channel
                org_wide:
                  type: boolean
                  description: 'When `true`, the channel will be available org-wide. Note: if the channel is not `org_wide=true`, you must specify a `team_id` for this channel'
                team_id:
                  type: string
                  description: 'The workspace to create the channel in. Note: this argument is required unless you set `org_wide=true`.'
        required: true
      responses:
        '200':
          description: Typical success response
          content:
            application/json:
              schema:
                title: admin.conversations.create schema
                required:
                - ok
                type: object
                properties:
                  channel_id:
                    $ref: '#/components/schemas/defs_channel_id'
                  ok:
                    $ref: '#/components/schemas/defs_ok_true'
                additionalProperties: false
                description: Schema for successful response of admin.conversations.create
              example:
                channel_id: C12345
                ok: true
        default:
          description: Typical error response
          content:
            application/json:
              schema:
                title: admin.conversations.create error schema
                required:
                - error
                - ok
                type: object
                properties:
                  error:
                    type: string
                    enum:
                    - feature_not_enabled
                    - name_taken
                    - restricted_action
                    - team_not_found
                    - invalid_team
                    - invalid_name
                    - could_not_create_channel
                    - team_id_or_org_required
                  ok:
                    $ref: '#/components/schemas/defs_ok_false'
                additionalProperties: false
                description: Schema for error response from admin.conversations.create
              example:
                error: invalid_auth
                ok: false
      security:
      - slackAuth:
        - admin.conversations:write
      summary: Slack Post Admin Conversations Create
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /admin.teams.create:
    post:
      tags:
      - Create
      description: Create an Enterprise team.
      externalDocs:
        description: API method documentation
        url: https://api.slack.com/methods/admin.teams.create
      operationId: postAdminTeamsCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `admin.teams:write`'
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - team_domain
              - team_name
              type: object
              properties:
                team_domain:
                  type: string
                  description: Team domain (for example, slacksoftballteam).
                team_name:
                  type: string
                  description: Team name (for example, Slack Softball Team).
                team_description:
                  type: string
                  description: Description for the team.
                team_discoverability:
                  type: string
                  description: Who can join the team. A team's discoverability can be `open`, `closed`, `invite_only`, or `unlisted`.
          application/json:
            schema:
              required:
              - team_domain
              - team_name
              type: object
              properties:
                team_domain:
                  type: string
                  description: Team domain (for example, slacksoftballteam).
                team_name:
                  type: string
                  description: Team name (for example, Slack Softball Team).
                team_description:
                  type: string
                  description: Description for the team.
                team_discoverability:
                  type: string
                  description: Who can join the team. A team's discoverability can be `open`, `closed`, `invite_only`, or `unlisted`.
        required: true
      responses:
        '200':
          description: Typical success response
          content:
            application/json:
              schema:
                title: Default success template
                required:
                - ok
                type: object
                properties:
                  ok:
                    $ref: '#/components/schemas/defs_ok_true'
                additionalProperties: true
                description: This method either only returns a brief _OK_ response or a verbose schema is not available for this method.
              example:
                ok: true
                team: T12345
        default:
          description: Typical error response
          content:
            application/json:
              schema:
                title: Default error template
                required:
                - ok
                type: object
                properties:
                  ok:
                    $ref: '#/components/schemas/defs_ok_false'
                additionalProperties: true
                description: This method either only returns a brief _not OK_ response or a verbose schema is not available for this method.
              example:
                error: invalid_auth
                ok: false
      security:
      - slackAuth:
        - admin.teams:write
      summary: Slack Post Admin Teams Create
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /canvases.create:
    post:
      tags:
      - Create
      summary: Create Canvas
      description: Creates a Slack Canvas.
      operationId: postCanvasesCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `canvases:write`'
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  description: Title of the canvas.
                document_content:
                  type: object
                  description: Initial content for the canvas.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  canvas_id:
                    type: string
              example:
                ok: true
                canvas_id: F123ABC
        default:
          description: Error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  error:
                    type: string
              example:
                ok: false
                error: invalid_auth
      security:
      - slackAuth:
        - canvases:write
  /conversations.create:
    post:
      tags:
      - Create
      description: Initiates a public or private channel-based conversation
      externalDocs:
        description: API method documentation
        url: https://api.slack.com/methods/conversations.create
      operationId: postConversationsCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `conversations:write`'
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of the public or private channel to create
                is_private:
                  type: boolean
                  description: Create a private channel instead of a public one
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of the public or private channel to create
                is_private:
                  type: boolean
                  description: Create a private channel instead of a public one
      responses:
        '200':
          description: If successful, the command returns a rather stark [conversation object](/types/conversation)
          content:
            application/json:
              schema:
                title: conversations.create success schema
                required:
                - channel
                - ok
                type: object
                properties:
                  channel:
                    $ref: '#/components/schemas/objs_conversation'
                  ok:
                    $ref: '#/components/schemas/defs_ok_true'
                additionalProperties: false
                description: Schema for successful response conversations.create method
              example:
                channel:
                  created: 1504554479
                  creator: U0123456
                  id: C0EAQDV4Z
                  is_archived: false
                  is_channel: true
                  is_ext_shared: false
                  is_general: false
                  is_group: false
                  is_im: false
                  is_member: true
                  is_mpim: false
                  is_org_shared: false
                  is_pending_ext_shared: false
                  is_private: false
                  is_shared: false
                  last_read: '0000000000.000000'
                  latest: null
                  name: endeavor
                  name_normalized: endeavor
                  pending_shared: []
                  previous_names: []
                  priority: 0
                  purpose:
                    creator: ''
                    last_set: 0
                    value: ''
                  topic:
                    creator: ''
                    last_set: 0
                    value: ''
                  unlinked: 0
                  unread_count: 0
                  unread_count_display: 0
                ok: true
        default:
          description: Typical error response when name already in use
          content:
            application/json:
              schema:
                title: conversations.create error schema
                required:
                - error
                - ok
                type: object
                properties:
                  callstack:
                    type: string
                    description: 'Note: PHP callstack is only visible in dev/qa'
                  detail:
                    type: string
                  error:
                    type: string
                    enum:
                    - 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:
                    type: string
                  ok:
                    $ref: '#/components/schemas/defs_ok_false'
                  provided:
                    type: string
                additionalProperties: false
                description: Schema for error response from conversations.create method
              example:
                error: name_taken
                ok: false
      security:
      - slackAuth:
        - channels:write
        - groups:write
        - im:write
        - mpim:write
      summary: Slack Post Conversations Create
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /slackLists.create:
    post:
      tags:
      - Create
      summary: Create List
      description: Creates a new Slack List for tracking work items, tasks, or records.
      operationId: postSlackListsCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `lists:write`'
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              required:
              - title
              - channel_id
              type: object
              properties:
                title:
                  type: string
                  description: Title of the list.
                channel_id:
                  type: string
                  description: Channel to create the list in.
                columns:
                  type: array
                  description: Column definitions for the list.
                  items:
                    type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  list:
                    type: object
              example:
                ok: true
        default:
          description: Error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  error:
                    type: string
              example:
                ok: false
                error: invalid_auth
      security:
      - slackAuth:
        - lists:write
  /slackLists.items.create:
    post:
      tags:
      - Create
      summary: Create List Item
      description: Creates a new item (row) in a Slack List.
      operationId: postSlackListsItemsCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `lists:write`'
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              required:
              - list_id
              - column_values
              type: object
              properties:
                list_id:
                  type: string
                  description: ID of the list to add the item to.
                column_values:
                  type: object
                  description: Map of column IDs to their values for the new item.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  item:
                    type: object
              example:
                ok: true
        default:
          description: Error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  error:
                    type: string
              example:
                ok: false
                error: list_not_found
      security:
      - slackAuth:
        - lists:write
  /usergroups.create:
    post:
      tags:
      - Create
      description: Create a User Group
      externalDocs:
        description: API method documentation
        url: https://api.slack.com/methods/usergroups.create
      operationId: postUsergroupsCreate
      parameters:
      - name: token
        in: header
        description: 'Authentication token. Requires scope: `usergroups:write`'
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              required:
              - name
              type: object
              properties:
                channels:
                  type: string
                  description: A comma separated string of encoded channel IDs for which the User Group uses as a default.
                description:
                  type: string
                  description: A short description of the User Group.
                handle:
                  type: string
                  description: A mention handle. Must be unique among channels, users and User Groups.
                include_count:
                  type: boolean
                  description: Include the number of users in each User Group.
                name:
                  type: string
                  description: A name for the User Group. Must be unique among User Groups.
          application/json:
            schema:
              required:
              - name
              type: object
              properties:
                channels:
                  type: string
                  description: A comma separated string of encoded channel IDs for which the User Group uses as a default.
                description:
                  type: string
                  description: A short description of the User Group.
                handle:
                  type: string
                  description: A mention handle. Must be unique among channels, users and User Groups.
                include_count:
                  type: boolean
                  description: Include the number of users in each User Group.
                name:
                  type: string
                  description: A name for the User Group. Must be unique among User Groups.
        required: true
      responses:
        '200':
          description: Typical success response
          content:
            application/json:
              schema:
                title: usergroups.create schema
                required:
                - ok
                - usergroup
                type: object
                properties:
                  ok:
                    $ref: '#/components/schemas/defs_ok_true'
                  usergroup:
                    $ref: '#/components/schemas/objs_subteam'
                additionalProperties: false
                description: Schema for successful response from usergroups.create method
              example:
                ok: true
        default:
          description: Typical error response
          content:
            application/json:
              schema:
                title: usergroups.create error schema
                required:
                - error
                - ok
                type: object
                properties:
                  callstack:
                    type: string
                    description: 'Note: PHP callstack is only visible in dev/qa'
                  error:
                    type: string
                    enum:
                    - permission_denied
                    - not_authed
                    - invalid_auth
                    - account_inactive
                    - token_revoked
                    - no_permission
                    - org_login_required
                    - 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
                    - fatal_error
                  ok:
                    $ref: '#/components/schemas/defs_ok_false'
                additionalProperties: false
                description: Schema for error response from usergroups.create method
              example:
                error: invalid_auth
                ok: false
      security:
      - slackAuth:
        - usergroups:write
      summary: Slack Post User Groups Create
      x-api-evangelist-processing:
        GenerateOperationSummariesFromPath: true
        PascalCaseOperationSummaries: true
        CaselCaseOperationIds: true
        ChooseTags: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK