Skip to main content

Interaction payloads

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 typeDescription
block_actionsReceived when a user clicks a Block Kit interactive component.
message_actionsReceived when an app action in the message menu is used.
view_closedReceived when a modal is canceled.
view_submissionReceived 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.