Building more intricate workflows in Slack with Dialogs

Using Dialogs, you can build forms in Slack that do all sorts of things

Slack API
Slack API
Sep 28, 2017 · 3 min read
Image for post
Image for post

Let’s say you want to build a new feature that helps people complete a multi-step task using your app. Dialogs are now here to make that possible — all without relying on a bot or having to post multiple messages to a Slack channel.

Dialogs are new interactive modals that can capture multiple pieces of information and send them directly to your app. You can use them to build a robust form inside Slack, or simply collect a single line of text.

The anatomy of a dialog

Dialogs can contain one, or several, types of inputs. You can choose from three in this initial release: text inputs (for quick single-line text), text areas (for longer free-form text) and static dropdown menus (for predefined lists).

Whereas features like message buttons or menus let people make quick selections and approvals, dialogs open up the opportunity to extend your app’s workflows further, without introducing friction to your UX.

A single dialog can accomplish what used to mean directing someone into a separate browser window, or engaging them in back-and-forth interactions within a Slack channel. You could build an app that lets people file a help desk ticket, complete a survey, manage approvals, take attendance, assign project management tasks, and much more.

Dialogs are dynamically defined, so you can pre-populate fields for quicker editing and submission. For instance, a project management app could pre-fill a ticket description pulled from a company’s existing tracker.

Let’s look at how Slack apps are using dialogs today.

Create a project management task with Wrike

Wrike, an enterprise project management suite, uses dialogs to allow customers to create tasks directly from Slack.

Wrike users can add a title, choose a due date, and add a description, and assign owners to tasks, without ever leaving the Slack interface.

Image for post
Image for post

Create and run customized polls in Slack

Previously when people wanted to use the Slack app Polly to create a poll, they’d need to remember a bulky slash command: /polly “Option A" “Option B" “Option C”.

Now people can use dialogs with Polly to quickly build out custom polls in Slack. And when taking a poll, participants can use dialogs to answer open-ended questions, add their own fields for additional information, and comment on their team’s polls.

Image for post
Image for post

Getting started with dialogs

Review our UX guidelines for best practices about using dialogs in your own app. You can also use Walkie, a Slack app prototyping tool, to experiment with dialogs design for your next feature.

When you’re ready to build, you can use our SDKs for Node.js and Python, which work well with dialogs today, and read our documentation for full details on how to get started.

Learn more about dialogs on our API site, check out our Python tutorial on dialogs, or use our updated Node.js module for interactive Slack messages. If you have questions, our developer support team is all ears!

Slack Platform Blog

Several bots are typing…

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store