Reference: 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 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.