Slack API keys
Slack API credentials belong in configuration, not in a commit. This page covers where to create one, what it looks like, and how APIKeyConnect stores it without ever being able to read it.
The facts
- Category
- Communication & Messaging
- API host
slack.com- Key format
xoxb-xxxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx- Env variable
SLACK- Sensitivity
- High
- Create a key
- https://api.slack.com/apps — Pick your app, then OAuth & Permissions to copy the xoxb- Bot User OAuth Token.
- Documentation
- https://docs.slack.dev/authentication/tokens
A leaked key here bills you and can read or write account data. Treat it like a password: server-side only, rotated on staff changes.
Kinds of Slack key
Bot token (xoxb-)
Granular scopes; the usual choice for apps
User token (xoxp-)
Acts on behalf of a workspace member
App-level token (xapp-)
Represents the app across a workspace
How APIKeyConnect stores it
The key is encrypted in your browser with AES-256-GCM, under a key derived from your master password with PBKDF2-SHA-256 at 600,000 iterations. The password never leaves your device, and the server holds ciphertext it has no way to open.
What the server can see — and what this design does not protect against — is written out in full on the security page. That section exists because a page with no limits section is marketing.
Questions
Where do I get a Slack API key?
Slack issues keys from https://api.slack.com/apps. Pick your app, then OAuth & Permissions to copy the xoxb- Bot User OAuth Token. Once you have it, store it in APIKeyConnect rather than in a .env file you might commit — the key is encrypted on your device with a master password we never receive.
What does a Slack API key look like?
Slack keys follow the pattern xoxb-xxxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx. Knowing the shape is useful for spotting one that has been pasted into a commit, a log line, or a support ticket — the places keys leak from most often.
What environment variable should I use for Slack?
Most projects use SLACK. APIKeyConnect recognises these names, so importing an existing .env maps the value onto Slack automatically instead of leaving it as an unlabelled string, and generating a .env writes it back under the same name.
How dangerous is a leaked Slack key?
High sensitivity. A leaked key here bills you and can read or write account data. Treat it like a password: server-side only, rotated on staff changes.
Does Slack have more than one kind of key?
Yes — Bot token (xoxb-), User token (xoxp-), App-level token (xapp-). They differ in scope, so keeping them as separate entries rather than one "the Slack key" is what lets you rotate the risky one without touching the others.
Can APIKeyConnect see my Slack key?
No. The key is encrypted in your browser with AES-256-GCM under a key derived from your master password (PBKDF2-SHA-256, 600,000 iterations). The password never leaves your device and the server stores ciphertext it cannot open. What the server can see is documented in full on the security page, including what this design does not protect against.