Slack platform overview
To jump straight into developing your own Slack app, follow our Quickstart. You can get started right now.
Hello there, fellow developer! 👋
Welcome to the Slack API docs, the place where ideas turn into interactive apps, workflows get automated, and Slack becomes the platform that powers your workday. With new tools for building AI agents and intelligent apps, our docs on APIs, SDKs, and tools can assist you in creating apps that make work life simpler, more pleasant and more productive.
The Slack developer platform revolves around Slack apps.
Which brings us to...
What is a Slack app?
A Slack app is a tool or integration that extends the functionality of Slack: it adds new features, automates tasks, integrates with external services, and enhances the user experience. With the Slack platform, developers can create apps that integrate directly with the tools teams already use, whether that's connecting a CRM, managing project boards, or sending automated alerts.
The path of app creation
There are three high-level steps to creating a Slack app:
- Create an app using the CLI or the app settings page.
- Code the logic of your app. Decide which APIs your app will use, events it will respond to, which actions it will take, etc.—in the code editor of your choice. We recommend VS Code and using the Bolt framework (a Slack-created open source framework for JavaScript, Python, or Java) to make things easiest.
- Run your app locally to test it. Then, look into distribution and authentication.
Along the way, you can decide to use different surfaces, methods, and blocks that make up the visual structure of your app.
We know our platform is deep and wide, and possibly a little intimidating as a result. It's okay to not know where to start. The comparison below shows popular paths, how much coding knowledge it needs, and where to find full instructions.
| Path | Description | Coding knowledge | Instructions |
|---|---|---|---|
| Slack CLI + Bolt | Scaffold from a starter template and run your app locally with the Slack CLI. | JavaScript or Python | View guide |
| Vercel's Slack Agent Skill | Build, test, and deploy a Slack agent on Vercel through a guided wizard. | AI-assisted | View guide |
| Slack MCP and Skills Plugin | Let your AI coding tool scaffold and configure a Slack app for you in Claude Code or Cursor. | AI-assisted | View guide |
| App settings | Click through the browser UI at api.slack.com/apps. Good for webhooks with no build step. | No code | View guide |
Go deeper
Define where your app lives across the several available Surfaces.
Organize your app's information in visually appealing way with Block Kit. This includes interactive blocks, like buttons, that you can use to facilitate user interaction.

Block Kit allows you to build beautiful surfaces with reusable components. Customize the order, appearance, and direct user interactivity with stackable, versatile blocks.
Further customization
Make your app yours. Introduce personality and further custom functionality.
✨ Build AI agents and context-aware apps: Integrate your LLM and take advantage of features like the split-view pane and text streaming, all outlined here.
✨ Interactivity covers the ways users can initiate interaction with Slack apps, including slash commands and shortcuts. Slash commands allow you to start your app from a simple keystroke and provide even wider functionality. Shortcuts are a simple and reliable way to save your app's location for ease of discovery by users.
Tools of the trade
Slack provides several tools to aid you in your quest to creating Slack apps.
✨ Are you using AI to aid your development in Slack? Be sure to check out the AI-assisted development guidelines, including pointing your AI tool to the docs llms.txt file.
✨ The Slack CLI is the recommended way to manage your app's entire lifecycle, from creation to installation and administration.
✨ Developer sandboxes let you play around with platform features outside of a production environment.
✨ The Bolt framework, available for Python, JavaScript, and Java, uses the Slack SDKs (available for Python, Node, and Java) under the hood to handle the fiddly bits of app development, including token rotation and navigating rate limiting. It is the fastest way to build a capable and secure app.
✨ Use app settings to create apps for times when you don't need any code but want to enable access to the platform via tokens to use with the Web API.
App vs. workflow
For the non-technically inclined, Slack offers a no-code product to build workflows: Workflow Builder. This product is accessed via the Slack client. The Slack platform extends Workflow Builder by providing an avenue to write custom workflow steps. These steps are coded as a function in an app. Once deployed, they are available to use as a step in Workflow Builder.
Those custom workflow steps can be created in an app built with the Bolt framework, in any of Bolt's three flavors (Python, JavaScript, and Java).
We encourage you to read through our detailed comparison of the options.
How to use these docs
This documentation site is broken down into four categories:
- Guides: These are more lengthy explanations of a concept within a Slack app, i.e. how to build out a feature, how to implement OAuth, what a surface is, etc. You are here.
- Reference: Have you landed here looking for reference documentation? We admire a straight-shooter. Direct your attention to the Reference section for referential material on API methods, scopes, events, Block Kit payloads, etc.
- Samples: Our collection of sample apps and accompanying tutorials.
- Tools: The library of available tools you can use to build a Slack app. Psst...check out Bolt.
These pages are optimized for AI collaboration. A markdown version of each documentation page can be found at its URL plus .md at the end; for example, this page's markdown is viewable at https://docs.slack.dev/concepts/overview.md. This format is easier for agents to read and parse, helping distill information for you on your app building journey!
What's next?
Each developer's needs differ. Maybe you want to explore how to distribute your app or even have it listed on the Slack Marketplace. Perhaps you're interested in managing apps as an admin. Better yet, explore the tools that make the job of app building easier.
Keep the end-goal in sight like a guiding horizon: a user wants to accomplish something with your app. The rest is getting there as productively and pleasantly as possible. Ready?
