Slack Interaction Payload

Slack interaction payload for block actions, view submissions, and shortcuts.

Report an issue
slack

Install

$ npx shadcn@latest add @open-types/slack-interaction-payload

Dependencies

Source

import type { SlackUser, SlackChannel } from "./slack-shared";

export interface SlackActionUser {
  id: SlackUser["id"];
  name: SlackUser["name"];
  team_id: SlackUser["team_id"];
}

export interface SlackActionChannel {
  id: SlackChannel["id"];
  name: SlackChannel["name"];
}

export interface SlackAction {
  action_id: string;
  type: string;
  value?: string;
  block_id: string;
}

export type SlackInteractionType =
  | "block_actions"
  | "view_submission"
  | "shortcut";

export interface SlackInteractionPayload {
  type: SlackInteractionType;
  trigger_id: string;
  user: SlackActionUser;
  channel?: SlackActionChannel;
  actions?: SlackAction[];
  response_url?: string;
}
import type { SlackUser, SlackChannel } from "./slack-shared";

export interface SlackActionUser {
  id: SlackUser["id"];
  name: SlackUser["name"];
  team_id: SlackUser["team_id"];
}

export interface SlackActionChannel {
  id: SlackChannel["id"];
  name: SlackChannel["name"];
}

export interface SlackAction {
  action_id: string;
  type: string;
  value?: string;
  block_id: string;
}

export type SlackInteractionType =
  | "block_actions"
  | "view_submission"
  | "shortcut";

export interface SlackInteractionPayload {
  type: SlackInteractionType;
  trigger_id: string;
  user: SlackActionUser;
  channel?: SlackActionChannel;
  actions?: SlackAction[];
  response_url?: string;
}