Package Exports
- slack-sdk
- slack-sdk/lib/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (slack-sdk) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Slack SDK
Basic Slack Api SDK using User Session Token
Install
npm i --save slack-sdkUsage
const slack = require('slack-sdk')('workspace-name', 'user-session-token', {/* options */});
slack.channel.message('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
- Go to https://YOURWORKSPACE.slack.com/home in Chrome
- Right click → Inspect
- Select the network tab
- Reload the page
- Type in api in the search
- Click rtm.start and then headers
- Scroll down until you find the
token. It starts withxoxs- - Copy it!
Functions
self.message(message: string)
Send message to self.
self.shareFiles(files: array)
Share files to self.
channel.meta(channel: string)
Get meta information about channel channel
channel.message(channel: string, message: string)
Send message to channel channel.
channel.setTopic(channel: string, topic: string)
Set topic of channel channel
channel.setPurpose(channel: string, purpose: string)
Set purpose of channel channel
channel.shareFiles(channel: string, files: array)
Share files to a channel channel.
workspace.details(cache: boolean = true)
Obtain details for workspace. Should usually be cached as it is easy to run into rate limits.
files.upload(filepath: string, title: string = null, filename: string = null)
Upload file. Title and filename default to basename of filepath. Returns file id.
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.
