Slack API Wrapper

Gem Version Build Status Code Climate Coverage Status

A library that provides a plain function-call interface to the Slack API web endpoints.


Add this line to your application's Gemfile:

gem 'slack-api-wrapper'

And then execute:


Or install it yourself as:

gem install 'slack-api-wrapper


You need to get an api token to use the ruby client. You can follow Slack documentation about it (, or use omniauth-slack to get one.

# Initialize client
client = api_token

# Test user token
response = client.auth_test
puts "id: #{response['user_id']}, name: #{response['user']}"

# Get user teammates
response = client.users_list
response['members'].each do |user|
  puts "id: #{user['id']}, name: #{user['name']}"

# Get user channels
response = client.channels_list
response['channels'].each do |channel|
  puts "id: #{channel['id']}, name: #{channel['name']}"

# Get user private groups
response = client.groups_list
response['groups'].each do |group|
  puts "id: #{group['id']}, name: #{group['name']}"

# Posting a message
response = client.chat_post_message('channel'=> 'CXXXX', 'text'=> 'Testing Slack API', 'as_user'=> true)

Additional Resources

Slack API Docs:


  1. Fork it ( )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request


MIT License. Copyright 2015 Gustavo Bazan.

This software is not created by, affiliated with, or supported by Slack Technologies, Inc.