Free Salesforce-Slack-Developer Practice Test Questions (2026)

Total 134 Questions


Last Updated On : 9-Oct-2026



Preparing with Salesforce-Slack-Developer practice test 2026 is essential to ensure success on the exam. It allows you to familiarize yourself with the Salesforce-Slack-Developer exam questions format and identify your strengths and weaknesses. By practicing thoroughly, you can maximize your chances of passing the Salesforce certification 2026 exam on your first attempt. Start with free Salesforce Slack Developer - Slack-Dev-201 sample questions or use the timed simulator for full exam practice.

Surveys from different platforms and user-reported pass rates suggest Salesforce Slack Developer - Slack-Dev-201 practice exam users are ~30-40% more likely to pass.

undraw-questions

Think You're Ready? Prove It Under Real Exam Conditions

Take Exam

Design the Interactive Flow of Your App

Which element type would you use inside a block to collect free-text input in a modal?



A. button


B. plain_text_input


C. static_select


D. overflow





B.
  plain_text_input

Explanation:

The question asks which Block Kit element type should be used inside a block to collect free-text input in a modal. In Slack's Block Kit framework, modals are built using input blocks, and the element placed inside an input block determines what kind of data the user can provide.

Correct Answer: B. plain_text_input – plain_text_input is the Block Kit element designed specifically for collecting free-form text from users. It is used inside an input block and supports features like multiline, min_length, max_length, placeholder, and dispatch_action. When the user submits the modal, the entered text is returned in the view_submission payload. This makes it the only element among the options capable of capturing unrestricted, user-typed text.

Why Other Options Are Incorrect:

A. button
– A button is an interactive element that triggers an action when clicked. It does not collect any text input from the user. Buttons are valid only inside section or actions blocks, not as data-entry elements.

C. static_select
– A static_select is a dropdown menu that lets users choose from a predefined list of options. It cannot accept arbitrary or free-text input, so it fails the requirement of collecting open-ended user text.

D. overflow – An overflow element is a compact menu (typically shown as a "⋮" icon) that presents a short list of actions or choices. Like static_select, it only allows selection from fixed options and provides no free-text entry capability.

Only plain_text_input satisfies the requirement of capturing unrestricted text typed by the user inside a modal.

📚 References

Slack API – plain_text_input element

What is a 'modal' in Block Kit terms?



A. A background scheduled job


B. A focused pop-up view layered over the Slack UI


C. A type of OAuth token


D. A workspace-wide announcement banner





B.
  A focused pop-up view layered over the Slack UI

Explanation

In Slack's Block Kit framework, surfaces represent the visual areas where apps interact with users. A modal is a focused pop-up window that overlays the Slack client interface. Modals are primarily designed to collect structured inputs, display detailed context, or guide users through interactive workflows without requiring users to leave their current channel or conversation. They are UI surfaces, not background processes or authentication mechanisms.

Why the other options are incorrect

A. Background scheduled job
– A background scheduled job refers to asynchronous server-side processing or scheduled tasks. It is unrelated to Block Kit's front-end UI surfaces and does not represent a visual interface for users.

C. A type of OAuth token
– OAuth tokens, such as bot or user tokens, are used for authentication and API authorization. They control access to Slack APIs and resources rather than defining visual user interface elements.

D. Workspace-wide announcement banners
– Announcement banners are administrative or messaging features used to communicate information across a workspace. They are different from Block Kit modals, which are interactive UI surfaces that apps can invoke dynamically.

Official References

Slack API Surfaces - Modals – Official Slack documentation describing modals as focused views for interactive forms and structured content above the main Slack interface.

Block Kit Overview – Official Slack documentation describing Block Kit as a UI framework for building Slack app surfaces such as Messages, Home Tabs, and Modals.

You are building an app that allows users to request changes to the Slack workspace through a modal. A user can launch the modal by selecting "Request Changes" from the global shortcuts.
After a user clicks the shortcut, what important piece of data should your app use from the shortcut invocation or interactive action payload to open the modal?



A. token


B. response_url


C. callback_id


D. trigger_id





D.
  trigger_id

Explanation

When a user interacts with a Slack shortcut, slash command, or interactive UI component such as a button or menu, Slack sends a payload to the app containing a temporary trigger ID called trigger_id. To open a modal, the app calls the views.open API method and provides this trigger_id. The trigger_id authorizes the modal-opening action and is short-lived, so it must be used within 3 seconds of receipt. Therefore, trigger_id is the required value for opening a modal.

Why the other options are incorrect

A. token
– The token parameter is associated with request verification and older Slack authentication mechanisms. It is not the value required by views.open to open a modal. Slack's current request verification approach uses signing secrets and signature headers.

B. response_url
– The response_url is a temporary webhook URL used to send responses or follow-up messages associated with an interaction. It does not provide the authorization context required to open a modal with views.open.

C. callback_id
– The callback_id is a developer-defined identifier used to associate an interaction or view with application logic. It identifies context but does not authorize or initiate the opening of a modal.

Official References

Slack API - views.open Method – Official Slack documentation explaining that views.open requires a trigger_id generated by a user interaction.

Slack API Surfaces - Modals – Official documentation describing how applications open interactive modal views using a trigger ID.

What are 'slash commands' used for?



A. Encrypting messages


B. Letting users trigger app functionality by typing a command starting with '/'


C. Changing a workspace's theme


D. Deleting channels





B.
  Letting users trigger app functionality by typing a command starting with '/'

Explanation:

The question asks about the purpose of slash commands in Slack. Slash commands are an interactivity feature that lets users invoke an app's functionality directly from the message input box by typing `/` followed by a command name, such as `/remind`, `/poll`, or `/ticket`. When a user sends a slash command, Slack sends an HTTP POST request to the URL configured by the app developer. The request includes information such as the command name, arguments, user, team, channel, and response URL. The app can then process the request and respond with a message, initiate a workflow, or use the interaction context to perform another supported action. Therefore, slash commands are a standard way for users to trigger app functionality on demand.

Why Other Options Are Incorrect:

A. Encrypting messages
– Slash commands are not an encryption mechanism. Encryption protects the confidentiality of data, while slash commands provide a way for users to invoke application functionality.

C. Changing a workspace's theme
– Workspace themes are managed through Slack's user interface and preferences. Slash commands are designed to trigger application functionality, not manage workspace appearance.

D. Deleting channels
– Slash commands do not inherently delete channels. Channel administration and deletion are controlled through Slack's administrative features and appropriate API permissions.

Reference:

Slack API Documentation – Slash Commands – Official Slack documentation explains that slash commands allow users to invoke app functionality by typing a command beginning with `/` and describes the request payload and response mechanisms.

Which of these best describes 'message shortcuts'?



A. Actions available from the context menu on an individual message


B. Keyboard shortcuts for scrolling


C. A way to schedule recurring messages


D. Admin-only commands





A.
  Actions available from the context menu on an individual message

Explanation:

The question asks about the purpose of message shortcuts in Slack. Message shortcuts are a type of interactivity feature that lets users invoke an app's functionality on a specific message, rather than on a channel or globally. They appear in the context menu (the "More actions" three-dot menu) that appears when a user hovers over or opens the menu on an individual message. A developer registers a message shortcut in the app configuration, and when a user selects it, Slack sends a payload to the app's request URL containing details such as the `callback_id`, `user`, `team`, `channel`, and the `message` object itself (including its `ts`, `text`, and `user`). This makes message shortcuts ideal for actions like "Create a task from this message," "Save this to my notes," "Translate this message," or "Report this message."

Message shortcuts are one of three shortcut types in Slack, alongside global shortcuts (invoked from the composer or search, not tied to a message) and action shortcuts (invoked from within a message or from a message action). Message shortcuts can respond by opening a modal via `trigger_id`, posting an ephemeral message, or updating the message. They require no special scope beyond the app being installed and the shortcut being registered, and they are user-initiated, so the app does not need to listen to every message in a channel.

❌ Why Other Options Are Incorrect:

B. Keyboard shortcuts for scrolling
– These are client-level UI shortcuts like `Ctrl/Cmd + K` for search or arrow keys for navigation. They are built into the Slack client and have no relation to app message shortcuts.

C. A way to schedule recurring messages
– Scheduled messages are handled through Slack's built-in "Schedule for later" feature in the composer, or programmatically via `chat.scheduleMessage`. Message shortcuts do not schedule messages; they trigger an app action on an existing message.

D. Admin-only commands
– Message shortcuts are available to any user who can see the message and has the app installed. They are not restricted to admins, and admin commands are configured separately through workspace settings.

📚 References:

Slack API documentation on Shortcuts – Defines message shortcuts as actions invoked from a message's context menu and distinguishes them from global shortcuts.

Each time a user invokes one of your app's slash commands, a request is dispatched to your app. The request contains information about the command, the user who executed it, where it was run, and a response_url you can use to further interact with users. Which restriction applies when using a slash command's response_url?



A. You cannot delete the source message of an interaction entirely using a response_url.


B. You can use a response_url up to five times in within 30 minutes of receiving the payload.


C. All global shortcut interactive payloads will contain a response_url.


D. You must add your bot or user token to the request when using a response_url.





B.
  You can use a response_url up to five times in within 30 minutes of receiving the payload.

Explanation:

The question asks about the restriction that applies when using a slash command's `response_url`. When a user invokes a slash command, Slack sends a payload to your app that includes a `response_url` — a unique, temporary URL you can POST to in order to send messages back to the channel or user without needing a bot token. However, this URL has strict usage limits: you may use it a maximum of five times, and only within 30 minutes of receiving the original payload. After either limit is exceeded, the `response_url` becomes invalid, and any further requests to it will fail. If your app needs to send more than five follow-up messages, it must instead use the Web API (`chat.postMessage`) with a valid bot token, which has no such per-interaction restriction, subject to standard rate limits.

Why Other Options Are Incorrect:

A. You cannot delete the source message of an interaction entirely using a response_url.
– This is a valid limitation, but it is not the usage-count or time restriction being tested. A `response_url` can be used to send responses, including ephemeral messages, but it cannot be used to delete the original user's command message. This is not the key restriction described in the question.

C. All global shortcut interactive payloads will contain a response_url.
– This is false. Global shortcuts do not include a `response_url` in their payload. They are typically handled by using the `trigger_id` to open a modal or initiate another supported interaction. Only certain interaction types, such as slash commands and some message actions, provide a `response_url`.

D. You must add your bot or user token to the request when using a response_url.
– This is false. A `response_url` is pre-authenticated, so a bot or user token does not need to be included in the request. The URL itself provides the authorization needed to post the response, which is why it should be treated as sensitive information.

References:

Slack API documentation on Slash Commands – Explains the `response_url` provided in slash command payloads and its usage restrictions, including the limit of five uses within 30 minutes.

You want to use Block Kit to construct a message that offers multiple choices. Which block should you use?



A. A section block with multiple button elements in an accessory.


B. An actions block to display message context, including images and text.


C. A section block with multiple menu overflow options in an accessory.


D. A file block to display remote files on an app's home.





A.
  A section block with multiple button elements in an accessory.

Explanation:

The question asks which Block Kit block should be used to construct a message that offers multiple choices. In Block Kit, the standard way to present users with several clickable options is to use an actions block containing button elements, but among the given options, the best fit is a section block that includes button elements as accessories. A section block is a flexible container that can hold text (`mrkdwn` or `plain_text`) alongside an `accessory` element, which can be a button, an overflow menu, a date picker, or a select menu. When multiple choices are needed, the common pattern is either an actions block holding multiple buttons, or a section block with a single accessory such as an overflow menu that reveals multiple choices. Since the question specifically says "offers multiple choices," the answer that correctly pairs a block with multiple button elements as the choice mechanism is A.

❌ Why Other Options Are Incorrect:

B. An actions block to display message context, including images and text.
– This is incorrect. The `actions` block is for interactive elements such as buttons and menus, not for displaying images and context text. Displaying context like images and small text is the job of the `context` block.

C. A section block with multiple menu overflow options in an accessory.
– This is incorrect because a section block's `accessory` field accepts only one element. You cannot place multiple overflow menus in a single section block's accessory. An overflow menu itself offers multiple choices, but the phrasing "multiple menu overflow options" misrepresents how section accessories work.

D. A file block to display remote files on an app's home.
– This is incorrect. The `file` block is used to display information about a file, including remote files, but it is not used to offer choices. It is also typically used in messages, not as an interactive choice mechanism on an app's home.

📚 References:

Slack API Block Kit Documentation – Section Blocks – Explains that a section block holds text and a single `accessory` element, such as a button, overflow menu, or select menu.

Which Bolt feature lets an app listen for button clicks and menu selections?



A. app.action()


B. app.click()


C. app.select()


D. app.interactive()





A.
  app.action()

Explanation:

The question asks which Bolt feature lets an app listen for button clicks and menu selections. In the Bolt framework, interactive components such as buttons, select menus, overflow menus, and date pickers all emit a single interaction type called an action. To handle these, Bolt provides the `app.action()` listener method. You can register a handler that listens for a specific `action_id`, the identifier assigned to the interactive element when it was defined in Block Kit, or use a catch-all constraint with no `action_id` to handle any action. When a user clicks a button or selects an option from a menu, Slack sends an interaction payload to your app, and Bolt routes it to the matching `app.action()` handler, giving you access to the `body`, `action`, `ack`, and `respond` utilities.

❌ Why Other Options Are Incorrect:

B. app.click()
– This is not a real Bolt method. Bolt does not distinguish button clicks with a dedicated `click()` listener. Button clicks are handled through `app.action()` because buttons emit action payloads.

C. app.select()
– This is not a real Bolt method either. Menu selections, including static selects, external selects, multi-selects, and overflow menus, are action payloads handled through `app.action()` rather than a separate `select()` method.

D. app.interactive()
– This is not a valid Bolt listener method. Although the broader Slack feature is called interactivity, Bolt uses specific listeners such as `app.action()` for interactive elements, `app.view()` for view submissions, `app.shortcut()` for shortcuts, and `app.command()` for slash commands.

📚 References:

Bolt for JavaScript Documentation – Listening to Actions – Explains that `app.action()` listens for button clicks and menu selections and can filter interactions by `action_id`.

What kind of view can be layered temporarily over the current screen to collect input or show details?



A. A modal


B. A channel


C. A workspace


D. A workflow trigger





A.
  A modal

Explanation:

The question asks what kind of view can be layered temporarily over the current screen to collect input or show details. In Slack, a modal is exactly this. It is a focused, temporary overlay that appears on top of the user's current screen and must be dismissed before the user returns to the underlying conversation or surface. Modals are built using Block Kit and are opened through the `views.open` Web API method, which requires a valid `trigger_id` that Slack sends in interaction payloads, such as when a user invokes a shortcut, slash command, or button action. The `trigger_id` is valid for only 3 seconds, so apps must call `views.open` promptly after receiving it.

❌ Why Other Options Are Incorrect:

B. A channel
– A channel is a persistent conversation space where workspace members post messages. It is not a temporary overlay and does not layer over the current screen.

C. A workspace
– A workspace is the top-level container for channels, users, and apps in Slack. It is an organizational unit, not a user interface view that can be temporarily layered over another surface.

D. A workflow trigger
– A workflow trigger starts a Workflow Builder workflow, such as through a shortcut, event, or schedule. It is not a visual view and cannot be layered over a screen to collect input.

References:

Slack API Documentation – Modals – Official Slack documentation describing modals as temporary views built with Block Kit that overlay the current interface and are opened with `views.open` using a `trigger_id`.

You are planning to use Slack message shortcuts in order to improve the interactive features of your Slack app. What should you keep in mind as you add to your interactive features?



A. Each app can only have up to three message shortcuts.


B. Message shortcuts are unavailable with ephemeral messages.


C. Your app should not use the response_url to notify the user when using message shortcuts.


D. Your app only needs to respond if it has more than two message shortcuts.





B.
  Message shortcuts are unavailable with ephemeral messages.

Explanation:

The question asks what you should keep in mind when adding Slack message shortcuts to your app. Message shortcuts appear in the context menu (the "More actions" three-dot menu) of an individual message and let users invoke an app action on that specific message. A key restriction is that message shortcuts are not available on ephemeral messages. Ephemeral messages are temporary messages visible only to a single user, and Slack does not offer message shortcuts on them. Shortcuts can only be invoked on regular, persistent messages that exist in a conversation. .

❌ Why Other Options Are Incorrect:

A. Each app can only have up to three message shortcuts.
– This is false. Slack does not limit an app to three message shortcuts. Multiple message shortcuts can be registered in the app configuration, subject to Slack's applicable platform limits.

C. Your app should not use the response_url to notify the user when using message shortcuts.
– This is false. Using `response_url` to notify the user is a valid pattern for message shortcuts, such as posting an ephemeral confirmation or follow-up message after the shortcut is invoked.

D. Your app only needs to respond if it has more than two message shortcuts.
– This is false. The app should acknowledge and appropriately handle a message shortcut regardless of how many shortcuts it has. The number of registered shortcuts does not determine whether the interaction should be acknowledged or handled.

References:

Slack API Documentation – Shortcuts – Official Slack documentation describing message shortcuts as actions available from a message's context menu and the restrictions that apply to their use.

Page 1 out of 14 Pages
Next
12345

Experience the Real Exam Before You Take It

Our new timed 2026 Salesforce-Slack-Developer practice test mirrors the exact format, number of questions, and time limit of the official exam.

The #1 challenge isn't just knowing the material; it's managing the clock. Our new simulation builds your speed and stamina.



Enroll Now

Ready for the Real Thing? Introducing Our Real-Exam Simulation!


You've studied the concepts. You've learned the material. But are you truly prepared for the pressure of the real Salesforce Slack Developer - Slack-Dev-201 exam?

We've launched a brand-new, timed Salesforce-Slack-Developer practice exam that perfectly mirrors the official exam:

✅ Same Number of Questions
✅ Same Time Limit
✅ Same Exam Feel
✅ Unique Exam Every Time

This isn't just another Salesforce-Slack-Developer practice questions bank. It's your ultimate preparation engine.

Enroll now and gain the unbeatable advantage of:

  • Building Exam Stamina: Practice maintaining focus and accuracy for the entire duration.
  • Mastering Time Management: Learn to pace yourself so you never have to rush.
  • Boosting Confidence: Walk into your Salesforce-Slack-Developer exam knowing exactly what to expect, eliminating surprise and anxiety.
  • A New Test Every Time: Our Salesforce Slack Developer - Slack-Dev-201 exam questions pool ensures you get a different, randomized set of questions on every attempt.
  • Unlimited Attempts: Take the test as many times as you need. Take it until you're 100% confident, not just once.

Don't just take a Salesforce-Slack-Developer test once. Practice until you're perfect.

Don't just prepare. Simulate. Succeed.

Take Salesforce-Slack-Developer Practice Exam