Slack v0.9.0 Slack.Web.Channels

Summary

Functions

Fetches history of messages and events from a channel

Gets information about a channel

Invites a user to a channel

Joins a channel, creating it if needed

Removes a user from a channel

Lists all channels in a Slack team

Sets the read cursor in a channel

Functions

archive(channel, optional_params \\ %{})

Archives a channel.

Required Params

  • channel - Channel to archive

Errors the API can return:

  • already_archived - Channel has already been archived.
  • cant_archive_general - You cannot archive the general channel
  • channel_not_found - Value passed for channel was invalid.
  • last_ra_channel - You cannot archive the last channel for a restricted account
  • restricted_action - A team preference prevents the authenticated user from archiving.
create(name, optional_params \\ %{})

Creates a channel.

Required Params

  • name - Name of channel to create ex: mychannel

Errors the API can return:

  • name_taken - A channel cannot be created with the given name.
  • no_channel - Value passed for name was empty.
  • restricted_action - A team preference prevents the authenticated user from creating channels.
history(channel, optional_params \\ %{})

Fetches history of messages and events from a channel.

Required Params

  • channel - Channel to fetch history for.

Optional Params

  • count - Number of messages to return, between 1 and 1000. ex: 100
  • inclusive - Include messages with latest or oldest timestamp in results. ex: 1
  • latest - End of time range of messages to include in results.
  • oldest - Start of time range of messages to include in results.
  • unreads - Include unread_count_display in the output? ex: 1

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • invalid_ts_latest - Value passed for latest was invalid
  • invalid_ts_oldest - Value passed for oldest was invalid
info(channel, optional_params \\ %{})

Gets information about a channel.

Required Params

  • channel - Channel to get info on

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
invite(channel, user, optional_params \\ %{})

Invites a user to a channel.

Required Params

  • channel - Channel to invite user to.
  • user - User to invite to channel.

Errors the API can return:

  • already_in_channel - Invited user is already in the channel.
  • cant_invite - User cannot be invited to this channel.
  • cant_invite_self - Authenticated user cannot invite themselves to a channel.
  • channel_not_found - Value passed for channel was invalid.
  • is_archived - Channel has been archived.
  • not_in_channel - Authenticated user is not in the channel.
  • user_not_found - Value passed for user was invalid.
join(name, optional_params \\ %{})

Joins a channel, creating it if needed.

Required Params

  • name - Name of channel to join

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • is_archived - Channel has been archived.
  • name_taken - A channel cannot be created with the given name.
  • no_channel - Value passed for name was empty.
  • restricted_action - A team preference prevents the authenticated user from creating channels.
kick(channel, user, optional_params \\ %{})

Removes a user from a channel.

Required Params

  • channel - Channel to remove user from.
  • user - User to remove from channel.

Errors the API can return:

  • cant_kick_from_general - User cannot be removed from #general.
  • cant_kick_from_last_channel - User cannot be removed from the last channel they’re in.
  • cant_kick_self - Authenticated user can’t kick themselves from a channel.
  • channel_not_found - Value passed for channel was invalid.
  • not_in_channel - User was not in the channel.
  • restricted_action - A team preference prevents the authenticated user from kicking.
  • user_not_found - Value passed for user was invalid.
leave(channel, optional_params \\ %{})

Leaves a channel.

Required Params

  • channel - Channel to leave

Errors the API can return:

  • cant_leave_general - Authenticated user cannot leave the general channel
  • channel_not_found - Value passed for channel was invalid.
  • is_archived - Channel has been archived.
list(optional_params \\ %{})

Lists all channels in a Slack team.

Optional Params

  • exclude_archived - Don’t return archived channels. ex: 1
mark(channel, ts, optional_params \\ %{})

Sets the read cursor in a channel.

Required Params

  • channel - Channel to set reading cursor in.
  • ts - Timestamp of the most recently seen message.

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • invalid_timestamp - Value passed for timestamp was invalid.
  • not_in_channel - Caller is not a member of the channel.
rename(channel, name, optional_params \\ %{})

Renames a channel.

Required Params

  • channel - Channel to rename
  • name - New name for channel.

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • invalid_name - New name is invalid
  • name_taken - New channel name is taken
  • not_authorized - Caller cannot rename this channel
  • not_in_channel - Caller is not a member of the channel.
set_purpose(channel, purpose, optional_params \\ %{})

Sets the purpose for a channel.

Required Params

  • channel - Channel to set the purpose of
  • purpose - The new purpose ex: My Purpose

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • is_archived - Channel has been archived.
  • not_in_channel - Authenticated user is not in the channel.
  • too_long - Purpose was longer than 250 characters.
  • user_is_restricted - Setting the purpose is a restricted action.
set_topic(channel, topic, optional_params \\ %{})

Sets the topic for a channel.

Required Params

  • channel - Channel to set the topic of
  • topic - The new topic ex: My Topic

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • is_archived - Channel has been archived.
  • not_in_channel - Authenticated user is not in the channel.
  • too_long - Topic was longer than 250 characters.
  • user_is_restricted - Setting the topic is a restricted action.
unarchive(channel, optional_params \\ %{})

Unarchives a channel.

Required Params

  • channel - Channel to unarchive

Errors the API can return:

  • channel_not_found - Value passed for channel was invalid.
  • not_archived - Channel is not archived.