Vacation App for Slack
Approve leave without leaving Slack. Interactive approvals, slash commands, and on-leave mention notifications — all in your existing workspace.
What it does in Slack
Approve from a Slack DM
Vacation App sends approvers a DM with interactive Approve / Reject buttons. One decision updates every other approver's message in place.
The /vacation slash command
Run /vacation schedule in any Slack channel where the bot is present. Also try /vacation list and /vacation requests.
On-leave mention auto-notify
When someone @mentions a teammate who's on leave, Vacation App DMs the sender with the return date and coverer. They stop waiting for a reply that won't come.
Slack status during leave
Approved vacation auto-sets the user's Slack status with a plane emoji and the return date. Cleared automatically when leave ends.
Permissions we ask for
Vacation App asks for the minimum scopes required for the features above. We never request scopes for unimplemented future features.
| Scope | Type | Why we need it |
|---|---|---|
| chat:write | bot | Send approval requests, decision confirmations, and digest notifications. |
| chat:write.public | bot | Send leave-event notifications to public team channels admins select, even when the bot has not been invited. |
| channels:read | bot | Render channel pickers in admin settings for approval and leave-event notification channels. |
| channels:history | bot | Detect mentions of teammates currently on leave and DM the sender with the return date. Slack restricts this scope to channels the bot has been explicitly invited to — Vacation App never sees messages from any other channel. |
| groups:read | bot | Same as channels:read but for private channels admins choose to grant access to. |
| groups:history | bot | Same mention-detection feature as channels:history, scoped to private channels. The bot must be explicitly invited; messages from channels without the bot are never visible. |
| commands | bot | Power /vacation schedule, /vacation list, and /vacation requests. |
| users:read | bot | Match Slack users to Vacation App members during one-click team import. |
| users:read.email | bot | Match Slack users to Vacation App members by email when names differ. |
| users.profile:write | user | Auto-set Slack status to "On vacation" during approved leave (per-user opt-in). |
Pricing
Slack integration is included on the Plus plan ($2/user/month) and Premium. Free workspaces can sign in with Slack but cannot connect the bot. See full pricing .
AI & data handling
Vacation App uses Google Gemini for absence-pattern detection on internal leave records. Slack message content is never used for AI training or inference. We read channel messages transiently to detect mentions of teammates on leave, then discard. We do not retain channel messages, channel names, or user identifiers in any AI pipeline.