Platform concepts

The Slack platform is vast and growing by the day, offering you many options on the road to creating custom Slack apps and workflow automations. While the breadth of possibilities is exciting, it can be daunting to recognize which pieces of the platform apply to which type of app.

This section of documentation outlines concepts of the Slack platform that are not specific to the type of app you build, but rather apply to all Slack apps.

App manifests

App manifests are the ingredient list in the recipe of a Slack app. They tell you everything included in an app, describing the building blocks of the app. They're also portableβ€” you can export and share them to make creating apps quicker and testing a team effort.


Surfaces

Surfaces encompass all the areas that a Slack app can touch: messages, modals, and the App Home. Messages and modals are available for all types of Slack apps, while the App Home is available for non-workflow apps.


Invocation & interactivity

Invocation & 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 for non-workflow apps, provide even wider functionality. Shortcuts are a simple and reliable way to save your app's location for ease of discovery by users. Interactivity covers all the ways you can invite users to interact with apps and workflow automations.


Block Kit

Block Kit allows you to build beautiful surfaces with reusable components. Customize the order, appearance, and even direct user interactivity with stackable, versatile blocks.


Developer SDKs

Developer SDKs enable you to choose the language and hosting preferences that best suit your needs. Bolt apps are self-hosted, while Deno SDK apps are Slack-hosted.

✨ Bolt for JavaScript
✨ Bolt for Python
✨ Bolt for Java
✨ Deno Slack SDK


APIs

APIs cover the wide array of ways to communicate with Slack data. Hundreds of methods allow you to read, write, and update Slack data in countless ways, from responding to activities in Slack to building event management tools, and more!


ROSI: Run on Slack Infrastructure

ROSI allows you to build apps and leave the responsibility of hosting, data management, and security to Slack. ROSI aims to make hosting and maintaining Slack integrations simpler by providing tooling and APIs that enable developers to quickly and securely develop custom Slack integrations.