Docs
Tutorials
Developer Program
Your apps
Slack Platform
Samples & templates
Developer sandboxes
Workflow automations
Quickstart: Start a workflow
Workflow apps
Samples & templates
Create or remove an app
App manifest
Functions
Function types
Slack functions
Connector functions
Custom functions for workflow apps
Custom steps for Bolt apps
Custom function access
Using Slack API methods
External authentication
Workflows
Triggers
Starting workflows with triggers
Link triggers
Scheduled triggers
Event triggers
Webhook triggers
Trigger management
Datastores
Create and interact with a datastore
Add items to a datastore
Retrieve items from a datastore
Delete items from a datastore
Data types
Message metadata events
Slack types
Custom types
Team collaboration
Interactivity
Interactivity overview
Creating a form
Creating an interactive message
Creating an interactive modal
Testing and deploying apps
Local development
Deploy to Slack
Permissions control for Admins
Security
Governing Slack Connect invites
Guided Tutorials
Announcement Bot
Request Time Off
Welcome Bot
GitHub Issue
Virtual Running Buddies
Give Kudos
Hello World
Create a custom step for Workflow Builder: Deno SDK
Create a custom step for Workflow Builder: existing Bolt app
Create a custom step for Workflow Builder: new Bolt app
Give us feedback
Slack CLI
Install or uninstall the Slack CLI for Mac and Linux
Install or uninstall the Slack CLI for Windows
Authorize the Slack CLI
Commands
Command quick reference
Environment variables
Logging
CI/CD
CI/CD overview and setup
Slack CLI Deployment using GitHub Actions
Using Slack CLI on Enterprise Grid
Error troubleshooting
Workflow Builder
Overview
Pre-built workflows
Legacy steps from apps
Legacy steps from apps
Legacy steps from apps FAQ
Workflow Powerups
Configuration views
workflow_step
workflow_step_edit
workflow_step_execute
workflow_published
workflow_unpublished
workflow_deleted
workflow_step_deleted
Slack apps
Quickstart: Send a message
Authentication
Overview
Installing with OAuth
Token rotation
Verifying requests
Security best practices
Authorize with Postman
Sign in with Slack
Sign in with Slack setup
Sign in with Slack links
Sign in with Slack links using Auth0
Legacy app migration
Differences between classic apps and Slack apps
Migration guide
Agents & Assistants
Usage guide
Best practices
Messaging
Send or schedule a message
Retrieve a message
Edit or delete a message
Message composition
Add interactivity
Working with files
Working with metadata
Overview
Designing metadata schema
Metadata events
Using incoming webhooks
Unfurling links in messages
Upgrading to blocks
Interactivity
Handling user interaction
Shortcuts
Slash commands
App distribution
Distributing Slack apps
Hosting Slack apps
Onboarding users
Slack Marketplace
Overview
Slack Marketplace review guide
Slack Marketplace guidelines
Using Slack Marketplace
Slack Marketplace checklist
Apps for Admins
Overview
Workspace management
Managing users
Managing channels
Managing app approvals
Managing workflow permissions and approvals
Manging invite requests
Legal Holds API
Overview
Reference
Audit Logs API
Monitoring audit events
Monitoring anomaly events
Endpoints and actions
SCIM API
Provisioning with SCIM
Provisioning with SCIM 2.0
Legacy
Overview
Legacy authentication
Legacy: V1 OAuth 2.0
Legacy: OAuth Scopes
Legacy: Sign in with Slack
Legacy messaging
Legacy: Messaging overview
Legacy: interactive messages
Legacy: Interactive field guide
Legacy: Message buttons
Legacy: Message menus
Legacy: Secondary attachments
Legacy bots
Legacy dialogs
Legacy custom integrations
Legacy custom integrations migration
Legacy custom integrations bot users
Legacy custom integrations incoming webhooks
Legacy custom integrations outgoing webhooks
Legacy custom integations slash commands
Legacy custom integrations tokens
Legacy Steps from Apps
Legacy Steps from Apps FAQ
Legacy Steps from Apps migration guide
Legacy RTM API
Platform concepts
APIs
Overview
Web API
Overview
Pagination
Rate limits
Conversations API
Calls API
Presence & status
Events API
Events API
HTTP vs Socket Mode
HTTP Request URLs
Socket Mode
Slack Connect
Understanding Slack Connect
Slack Connect Spaces
Using Slack Connect API methods
Slack Connect API reference
Slack Status API
App design
App manifests
Block Kit
Overview
Building with Block Kit
Designing with Block Kit
Block Kit Builder
Reference
Overview
Blocks
Block elements & interactive components
Composition objects
Block actions payloads
Block suggestion payloads
Formatting rich text
Bolt Frameworks
Overview
Bolt for Java β
Bolt for JavaScript β
Bolt for Python β
Deno Slack SDK
Install Deno
Develop with Deno
TypeScript overview
Enterprise Grid
Overview
Single-workspace apps
Organization-ready apps
Migrating to organization-ready apps
Testing Enterprise Grid apps
Invocation & interactivity
Run on Slack Infrastructure
Surfaces
Overview
Messages
Modals
App Home
Canvases
More
Formatting text for surfaces
Defining views
Upgrading dialogs to modals
Deep linking into Slack
Tokens
Workflow steps
Reference
Events
Methods
Object types
Channel object
Conversation object
Event object
File object
Group object
IM object
MPIM object
User object
Usergroup object
Scopes
Slack functions
Connector functions
Slack app manifests
Interaction payloads
Overview
Shortcuts payloads
Block actions payloads
Block suggestion payloads
View interaction payloads
Translated content
π―π΅ ζ₯ζ¬θͺηγγΌγΈ
Gov Slack
Stay updated
Developer changelog
Developer blog
@SlackAPI
Resources
Get support
Partner with us
Slack Fund
FAQ
Developer beta
API Terms of Service
Community
Community Discussion
Groups and events
Slack Engineering
Community code of conduct
Slack Platform
Samples & templates
Developer sandboxes
Workflow automations
Quickstart: Start a workflow
Workflow apps
Samples & templates
Create or remove an app
App manifest
Functions
Function types
Slack functions
Connector functions
Custom functions for workflow apps
Custom steps for Bolt apps
Custom function access
Using Slack API methods
External authentication
Workflows
Triggers
Starting workflows with triggers
Link triggers
Scheduled triggers
Event triggers
Webhook triggers
Trigger management
Datastores
Create and interact with a datastore
Add items to a datastore
Retrieve items from a datastore
Delete items from a datastore
Data types
Message metadata events
Slack types
Custom types
Team collaboration
Interactivity
Interactivity overview
Creating a form
Creating an interactive message
Creating an interactive modal
Testing and deploying apps
Local development
Deploy to Slack
Permissions control for Admins
Security
Governing Slack Connect invites
Guided Tutorials
Announcement Bot
Request Time Off
Welcome Bot
GitHub Issue
Virtual Running Buddies
Give Kudos
Hello World
Create a custom step for Workflow Builder: Deno SDK
Create a custom step for Workflow Builder: existing Bolt app
Create a custom step for Workflow Builder: new Bolt app
Give us feedback
Slack CLI
Install or uninstall the Slack CLI for Mac and Linux
Install or uninstall the Slack CLI for Windows
Authorize the Slack CLI
Commands
Command quick reference
Environment variables
Logging
CI/CD
CI/CD overview and setup
Slack CLI Deployment using GitHub Actions
Using Slack CLI on Enterprise Grid
Error troubleshooting
Workflow Builder
Overview
Pre-built workflows
Legacy steps from apps
Legacy steps from apps
Legacy steps from apps FAQ
Workflow Powerups
Configuration views
workflow_step
workflow_step_edit
workflow_step_execute
workflow_published
workflow_unpublished
workflow_deleted
workflow_step_deleted
Slack apps
Quickstart: Send a message
Authentication
Overview
Installing with OAuth
Token rotation
Verifying requests
Security best practices
Authorize with Postman
Sign in with Slack
Sign in with Slack setup
Sign in with Slack links
Sign in with Slack links using Auth0
Legacy app migration
Differences between classic apps and Slack apps
Migration guide
Agents & Assistants
Usage guide
Best practices
Messaging
Send or schedule a message
Retrieve a message
Edit or delete a message
Message composition
Add interactivity
Working with files
Working with metadata
Overview
Designing metadata schema
Metadata events
Using incoming webhooks
Unfurling links in messages
Upgrading to blocks
Interactivity
Handling user interaction
Shortcuts
Slash commands
App distribution
Distributing Slack apps
Hosting Slack apps
Onboarding users
Slack Marketplace
Overview
Slack Marketplace review guide
Slack Marketplace guidelines
Using Slack Marketplace
Slack Marketplace checklist
Apps for Admins
Overview
Workspace management
Managing users
Managing channels
Managing app approvals
Managing workflow permissions and approvals
Manging invite requests
Legal Holds API
Overview
Reference
Audit Logs API
Monitoring audit events
Monitoring anomaly events
Endpoints and actions
SCIM API
Provisioning with SCIM
Provisioning with SCIM 2.0
Legacy
Overview
Legacy authentication
Legacy: V1 OAuth 2.0
Legacy: OAuth Scopes
Legacy: Sign in with Slack
Legacy messaging
Legacy: Messaging overview
Legacy: interactive messages
Legacy: Interactive field guide
Legacy: Message buttons
Legacy: Message menus
Legacy: Secondary attachments
Legacy bots
Legacy dialogs
Legacy custom integrations
Legacy custom integrations migration
Legacy custom integrations bot users
Legacy custom integrations incoming webhooks
Legacy custom integrations outgoing webhooks
Legacy custom integations slash commands
Legacy custom integrations tokens
Legacy Steps from Apps
Legacy Steps from Apps FAQ
Legacy Steps from Apps migration guide
Legacy RTM API
Platform concepts
APIs
Overview
Web API
Overview
Pagination
Rate limits
Conversations API
Calls API
Presence & status
Events API
Events API
HTTP vs Socket Mode
HTTP Request URLs
Socket Mode
Slack Connect
Understanding Slack Connect
Slack Connect Spaces
Using Slack Connect API methods
Slack Connect API reference
Slack Status API
App design
App manifests
Block Kit
Overview
Building with Block Kit
Designing with Block Kit
Block Kit Builder
Reference
Overview
Blocks
Block elements & interactive components
Composition objects
Block actions payloads
Block suggestion payloads
Formatting rich text
Bolt Frameworks
Overview
Bolt for Java β
Bolt for JavaScript β
Bolt for Python β
Deno Slack SDK
Install Deno
Develop with Deno
TypeScript overview
Enterprise Grid
Overview
Single-workspace apps
Organization-ready apps
Migrating to organization-ready apps
Testing Enterprise Grid apps
Invocation & interactivity
Run on Slack Infrastructure
Surfaces
Overview
Messages
Modals
App Home
Canvases
More
Formatting text for surfaces
Defining views
Upgrading dialogs to modals
Deep linking into Slack
Tokens
Workflow steps
Reference
Events
Methods
Object types
Channel object
Conversation object
Event object
File object
Group object
IM object
MPIM object
User object
Usergroup object
Scopes
Slack functions
Connector functions
Slack app manifests
Interaction payloads
Overview
Shortcuts payloads
Block actions payloads
Block suggestion payloads
View interaction payloads
Translated content
π―π΅ ζ₯ζ¬θͺηγγΌγΈ
Gov Slack
Stay updated
Developer changelog
Developer blog
@SlackAPI
Resources
Get support
Partner with us
Slack Fund
FAQ
Developer beta
API Terms of Service
Community
Community Discussion
Groups and events
Slack Engineering
Community code of conduct
View all scopes
apps.requests:write
View other scopes
Create or cancel an App Approval request on user's behalf
Facts
Supported token types
User
On this page
Facts