Interaction payloads
We're still building and not all features are available quite yet. Enjoy this peek into the future!
Not ready for the future? Return to the past at api.slack.com.
Interaction payloads are sent to your app when an end user interacts with one of a range of Slack app features.
The resulting interaction payload can have different structures depending on the source. The structures will have a type
field that indicates the source of the interaction.
The interactivity
type includes properties for both context about the interactor
(i.e., the user) and an interactivity_pointer
. This type can be input to function as with other attributes: through a Workflow Builder template (e.g., a user who clicked a button) or as an output from a previous step. The only functions allowed to output the interactivity context
are Slack functions. An example is as follows:
{
"interactor": {
"id": "U01AB2CDEFG",
"secret": "AbCdEFghIJklOMno1P2qRStuVwXyZAbcDef3GhijKLM4NoPqRSTuVWXyZaB5CdEfGHIjKLM6NoP7QrSt"
},
"interactivity_pointer": "1234567890123.4567890123456.78a90bc12d3e4f567g89h0i1j23k4l56"
}
For more details, refer to interactivity.
Read the individual reference guides to see the breakdown of each type
of payload:
Payload type | Description |
---|---|
block_actions | Received when a user clicks a Block Kit interactive component. |
message_actions | Received when an app action in the message menu is used. |
view_closed | Received when a modal is canceled. |
view_submission | Received when a modal is submitted. |
Read our guide to handling payloads from user interactions to learn how your app should process and respond to these payloads.