Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Slack Integration for Xano

Send messages, manage channels, and upload files to Slack workspaces from your Xano backend.

Functions

Function Description
slack_send_message Posts a message to a specified Slack channel.
slack_send_dm Sends a direct message to a Slack user by their user ID.
slack_list_channels Lists public channels the bot can access in the workspace.
slack_upload_file Uploads a file to a Slack channel.

Install

Option A — Ask Claude Code

With the Xano MCP enabled in Claude Code, paste this into Claude:

Install the integration at https://github.com/xano-community/integration-slack-messaging into my Xano workspace.

Claude will clone the repo and push the functions to your workspace.

Option B — Use the Xano CLI

  1. Install and authenticate the Xano CLI:

    npm install -g @xano/cli
    xano auth
  2. Clone and push this integration:

    git clone https://github.com/xano-community/integration-slack-messaging.git
    cd integration-slack-messaging
    xano workspace:push . -w <your-workspace-id>

    Replace <your-workspace-id> with the ID from xano workspace:list.

Configure Credentials

  1. Go to https://api.slack.com/apps and click Create New App
  2. Choose From Scratch and select your workspace
  3. Under OAuth & Permissions, add the required bot token scopes: chat:write, channels:read, files:write, users:read
  4. Install the app to your workspace
  5. Copy the Bot User OAuth Token (starts with xoxb-)
  6. In Xano, set the environment variable SLACK_BOT_TOKEN to your bot token

Environment variables used by this integration:

  • SLACK_BOT_TOKEN

See .env.example for a template.

Usage

Call any function from another function, task, or API endpoint using function.run:

function.run "slack_send_message" {
  input = {
    // See function signature for required parameters
  }
} as $result

Function Reference

slack_send_message

Sends a text message to any Slack channel the bot has access to. Specify the channel ID and message text, with optional support for Slack's Block Kit for rich formatting. The bot must be invited to private channels before posting. Returns the message timestamp which can be used for threading replies.

slack_send_dm

Opens or reuses a direct message conversation with a Slack user and sends them a message. Requires the target user's Slack user ID. Useful for sending notifications, alerts, or personalized updates directly to individual team members from your application.

slack_list_channels

Retrieves a paginated list of channels visible to the bot in the Slack workspace. Returns channel IDs, names, topics, and member counts. Supports cursor-based pagination for workspaces with many channels. Useful for building channel pickers or dynamically routing messages to the right channel.

slack_upload_file

Uploads a file to one or more Slack channels with an optional message and title. Supports various file types including images, documents, and text snippets. The bot must have the files:write scope and be a member of the target channel. Ideal for sharing reports, logs, or generated documents with your team.

License

MIT — see LICENSE.

About

Send messages, manage channels, and upload files to Slack workspaces from your Xano backend.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages