channels
Endpoints for creating, getting and interacting with channels.
Mark all channels and threads in a team as read
Mark all channels and threads in a team as read for a user.
Get a list of all channels
##### Permissions
Create a channel
Create a new channel.
Create a direct message channel
Create a new direct message channel between two users.
Create a group message channel
Create a new group message channel to group of users. If the logged in user's id is not included in the list, it will be appended to the end.
Search all private and open type channels across all teams
Returns all private and open type channels where 'term' matches on the name, display name, or purpose of
Search Group Channels
Get a list of group channels for a user which members' usernames match the search term.
Get a list of channels by ids
Get a list of public channels on a team by id.
Get timezones in a channel
Get a list of timezones for the users who are in this channel.
Get a channel
Get channel from the provided channel id string.
Update a channel
Update a channel. The fields that can be updated are listed as parameters. Omitted fields will be treated as blanks.
Delete a channel
Archives a channel. This will set the `deleteAt` to the current timestamp in the database. Soft deleted channels may not be accessible in the user interface. They can be viewed and unarchived in the **System Console > User Management > Channels** based on your license. Direct and group message channels cannot be deleted.
Patch a channel
Partially update a channel by providing only the fields you want to update. Omitted fields will not be updated. At least one of the allowed fields must be provided.
Update channel's privacy
Updates channel's privacy allowing changing a channel from Public to Private and back.
Restore a channel
Restore channel from the provided channel id string.
Move a channel
Move a channel to another team.
Get channel statistics
Get statistics for a channel.
Get a channel's pinned posts
Get a list of pinned posts for channel.
Get public channels
Get a page of public channels on a team based on query string parameters - page and per_page.
Get private channels
Get a page of private channels on a team based on query string
Get recommended public channels for the current user
Return the public channels on a team that have a membership policy
Get deleted channels
Get a page of deleted channels on a team based on query string parameters - team_id, page and per_page.
Autocomplete channels
Autocomplete public channels on a team based on the search term provided in the request URL.
Autocomplete channels for search
Autocomplete your channels on a team based on the search term provided in the request URL.
Get managed category mappings
Returns a map of channel ID to managed category name for all channels the requesting user is a member of in the given team that have a managed category assigned.
Search channels
Search public channels on a team based on the search term provided in the request body.
Get a channel by name
Gets channel from the provided team id and channel name strings.
Get a channel by name and team name
Gets a channel from the provided team name and channel name strings.
Get channel members
Get a page of members for a channel.
Add user(s) to channel
Add a user(s) to a channel by creating a channel member object(s).
Set channel members
Set the complete membership list for a channel, with optional channel admin designation.
Get channel members by ids
Get a list of channel members based on the provided user ids.
Get channel member
Get a channel member.
Remove user from channel
Delete a channel member, effectively removing them from a channel.
Update channel roles
Update a user's roles for a channel.
Update the scheme-derived roles of a channel member.
Update a channel member's scheme_admin/scheme_user properties. Typically this should either be `scheme_admin=false, scheme_user=true` for ordinary channel member, or `scheme_admin=true, scheme_user=true` for a channel admin.
Update channel notifications
Update a user's notification properties for a channel. Only the provided fields are updated.
Update channel member autotranslation setting
Update a user's autotranslation setting for a channel. This controls whether messages in the channel should not be automatically translated for the user. By default, autotranslations are enabled for all users if the channel is enabled for autotranslation.
Mark multiple channels as read
Mark multiple channels as viewed for the given user.
Get member counts for multiple channels
Get channel member counts for a list of channel IDs.
View channel
Perform all the actions involved in viewing a channel. This includes marking channels as read, clearing push notifications, and updating the active channel.
Mark all direct and group messages as read
Mark all direct and group messages as read for a user.
Get channel memberships and roles for a user
Get all channel memberships and associated membership roles (i.e. `channel_user`, `channel_admin`) for a user on a specific team.
Get channels for user
Get all the channels on a team for a user.
Get all channels from all teams
Get all channels from all teams that a user is a member of.
Get unread messages
Get the total unread messages and mentions for a channel for a user.
Set a channel's scheme
Set a channel's scheme, more specifically sets the scheme_id value of a channel record.
Channel members minus group members.
Get the set of users who are members of the channel minus the set of users who are members of the given groups.
Channel members counts for each group that has atleast one member in the channel
Returns a set of ChannelMemberCountByGroup objects which contain a `group_id`, `channel_member_count` and a `channel_member_timezones_count`.
Get information about channel's moderation.
##### Permissions
Update a channel's moderation settings.
##### Permissions
Get user's sidebar categories
Get a list of sidebar categories that will appear in the user's sidebar on the given team, including a list of channel IDs in each category.
Create user's sidebar category
Create a custom sidebar category for the user on the given team.
Update user's sidebar categories
Update any number of sidebar categories for the user on the given team. This can be used to reorder the channels in these categories.
Get user's sidebar category order
Returns the order of the sidebar categories for a user on the given team as an array of IDs.
Update user's sidebar category order
Updates the order of the sidebar categories for a user on the given team. The provided array must include the IDs of all categories on the team.
Get sidebar category
Returns a single sidebar category for the user on the given team.
Update sidebar category
Updates a single sidebar category for the user on the given team.
Delete sidebar category
Deletes a single sidebar category for the user on the given team. Only custom categories can be deleted.
Get common teams for members of a Group Message.
Gets all the common teams for all active members of a Group Message channel.
Convert group message to private channel
Converts a group message channel into a private channel in the specified team.
Get access control attributes for a channel
Retrieves the effective access control policy attributes for a specific channel.