Design the Interactive Flow of Your App20% of the exam

Entry points: slash commands, shortcuts, mentions and unfurls

How users start an app's workflow and what each entry point delivers: slash commands and their limits, global versus message shortcuts and their payload types, app_mention versus message.im, and link unfurling with link_shared and chat.unfurl, including composer previews.

Official exam objective
Handle possible user entry points for an app's workflow.

~7 min read · 13 practice questions ·

What the exam expects

  • Pick the entry point from the context the workflow needs: a typed command, a global shortcut, a message shortcut, a mention, a DM or a pasted link.
  • Configure shortcuts correctly: commands scope and reinstall, Interactivity Request URL, 3-second acknowledgement, the five-and-five limit, verb-first names.
  • Route shortcut payloads by type (shortcut or message_action) and callback_id.
  • Know where entry points don't work: slash commands in threads, message shortcuts on ephemeral messages, replies into a thread, some guest accounts.
  • Receive mentions with app_mention and DMs with message.im.
  • Unfurl links with link_shared and chat.unfurl, including composer previews and new domains.

Key terms: entry point (an app feature users invoke to start an interaction); global shortcut (available from the composer's shortcuts button and search, no message context); message shortcut (in a message's context menu, carries that message); callback_id (the ID you give a shortcut, sent in its payload); link_shared (the event sent when a link to your registered domain is posted or pasted).

Key facts

Developer slash commands in threads
Detail
Not supported; only built-in and Giphy commands
Duplicate command names
Detail
The most recently installed app's command runs
Shortcut limits
Detail
5 global and 5 message shortcuts per app
Shortcut scope
Detail
commands; reinstall if not requested before
Shortcut payload type
Detail
shortcut (global) or message_action (message)
DMs to the bot
Detail
Not sent as app_mention; subscribe to message.im
Unfurl domains
Detail
Up to five; changes require reinstall
Composer unfurl
Detail
channel_id is always COMPOSER; unfurl with unfurl_id and source (or COMPOSER and ts)
Sources for this section (5)
  • Why does a message shortcut suit "attach this message to a task" better than a global shortcut?
  • When must an app be reinstalled to unfurl links?
  • Why doesn't a help bot see questions sent to it by DM with only `app_mention`?
  • Which name follows the shortcut naming guidance: "Log a visit" or "Visit logger"?

The questions are free to read. Answers with their sources and self-grading are included with the pack.

Keep reading with the Slack Developer pack

  • Core concepts
  • Exam traps
  • Worked scenario

The pack includes:

  • All 38 lessons of the Slack Developer guide, with reading progress
  • Interactive decision walks and step-by-step sequence steppers
  • Inline practice questions and one-click topic practice (13 questions for this lesson)
  • An official source cited for every claim
  • An AI tutor that answers from the guide
  • Unlimited timed practice exams

Practice for the Slack Developer exam