Skip to content

simlu/slack-sdk

 
 

Repository files navigation

Slack SDK

Build Status Test Coverage Dependabot Status Dependencies NPM Downloads Semantic-Release Gardener

Basic Slack Api SDK using User Session Token

Install

npm i --save slack-sdk

Usage

const slack = require('slack-sdk')('workspace-name', 'user-session-token', {/* options */});

slack.message.channel('channel-name', 'message');

Options

cacheTtl

Cache duration in seconds. Optional, defaults to 60.

cacheMaxEntries

Maximum number of entries in cache at any given time. Optional, defaults to 100.

Obtaining User Session Token

  1. Go to https://YOURWORKSPACE.slack.com/home in Chrome
  2. Right click → Inspect
  3. Select the network tab
  4. Reload the page
  5. Type in api in the search
  6. Click rtm.start and then headers
  7. Scroll down until you find the token. It starts with xoxs-
  8. Copy it!

Functions

message.self(message: string)

Send message to self.

message.channel(channel: string, message: string)

Send message to channel channel.

workspace.details(cache: boolean = true)

Obtain details for workspace. Should usually be cached as it is easy to run into rate limits.

Internal functions

call(endpoint: string, params: object, cache: boolean = false)

Send request to slack endpoint endpoint with parameters params.

E.g. call("rtm.start", {}, true) to obtain information about current user. Use cache if information was already obtained before.

Cache

Cache operates by matching the exact outgoing request signature.

Cached and non-cached requests operate separately. So making a non cached request does never alter the cache.

About

Basic Slack Api SDK

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%