Type aliases
ActionsBlock
Type declaration
Optional blockId?: string
type: "actions"
Attachment
Attachment: { actions: { confirm?: { dismissText?: string; okText?: string; text?: string; title?: string }; name?: string; options?: { text: string; value: string }[]; style?: string; text?: string; type?: string; value?: string }[]; attachmentType?: string; authorIcon?: string; authorLink?: string; authorName?: string; callbackId?: string; color?: string; fallback: string; fields?: { short: boolean; title: string; value: string }[]; footer?: string; footerIcon?: string; imageUrl?: string; pretext?: string; text?: string; thumbUrl?: string; title?: string; titleLink?: string; ts?: number }
Type declaration
actions: { confirm?: { dismissText?: string; okText?: string; text?: string; title?: string }; name?: string; options?: { text: string; value: string }[]; style?: string; text?: string; type?: string; value?: string }[]
Optional attachmentType?: string
Optional authorIcon?: string
Optional authorLink?: string
Optional authorName?: string
Optional callbackId?: string
Optional color?: string
fallback: string
Optional fields?: { short: boolean; title: string; value: string }[]
Optional footer?: string
Optional footerIcon?: string
Optional imageUrl?: string
Optional pretext?: string
Optional text?: string
Optional thumbUrl?: string
Optional title?: string
Optional titleLink?: string
Optional ts?: number
AvailableMethod
AvailableMethod: "api.test" | "apps.permissions.info" | "apps.permissions.request" | "auth.revoke" | "auth.test" | "bots.info" | "channels.archive" | "channels.create" | "channels.history" | "channels.info" | "channels.invite" | "channels.join" | "channels.kick" | "channels.leave" | "channels.list" | "channels.mark" | "channels.rename" | "channels.replies" | "channels.setPurpose" | "channels.setTopic" | "channels.unarchive" | "chat.delete" | "chat.meMessage" | "chat.postEphemeral" | "chat.postMessage" | "chat.getPermalink" | "chat.scheduleMessage" | "chat.deleteScheduledMessage" | "chat.scheduledMessages.list" | "chat.unfurl" | "chat.update" | "conversations.archive" | "conversations.close" | "conversations.create" | "conversations.history" | "conversations.info" | "conversations.invite" | "conversations.join" | "conversations.kick" | "conversations.leave" | "conversations.list" | "conversations.members" | "conversations.open" | "conversations.rename" | "conversations.replies" | "conversations.setPurpose" | "conversations.setTopic" | "conversations.unarchive" | "dnd.endDnd" | "dnd.endSnooze" | "dnd.info" | "dnd.setSnooze" | "dnd.teamInfo" | "emoji.list" | "files.comments.add" | "files.comments.delete" | "files.comments.edit" | "files.delete" | "files.info" | "files.list" | "files.revokePublicURL" | "files.sharedPublicURL" | "files.upload" | "groups.archive" | "groups.create" | "groups.createChild" | "groups.history" | "groups.info" | "groups.invite" | "groups.kick" | "groups.leave" | "groups.list" | "groups.mark" | "groups.open" | "groups.rename" | "groups.replies" | "groups.setPurpose" | "groups.setTopic" | "groups.unarchive" | "im.close" | "im.history" | "im.list" | "im.mark" | "im.open" | "im.replies" | "oauth.access" | "oauth.token" | "pins.add" | "pins.list" | "pins.remove" | "reactions.add" | "reactions.get" | "reactions.list" | "reactions.remove" | "reminders.add" | "reminders.complete" | "reminders.delete" | "reminders.info" | "reminders.list" | "rtm.connect" | "rtm.start" | "search.all" | "search.files" | "search.messages" | "stars.add" | "stars.list" | "stars.remove" | "team.accessLogs" | "team.billableInfo" | "team.info" | "team.integrationLogs" | "team.profile.get" | "usergroups.create" | "usergroups.disable" | "usergroups.enable" | "usergroups.list" | "usergroups.update" | "usergroups.users.list" | "usergroups.users.update" | "users.deletePhoto" | "users.getPresence" | "users.identity" | "users.info" | "users.list" | "users.setActive" | "users.setPhoto" | "users.setPresence" | "users.profile.get" | "users.profile.set" | "views.open" | "views.publish" | "views.update" | "views.push"
ButtonElement
Button
Element
: { actionId
: string; confirm
?: ConfirmObject; style
?: "primary" | "danger"; text
: PlainTextObject; type
: "button"; url
?: string; value
?: string }Type declaration
actionId: string
Optional style?: "primary" | "danger"
type: "button"
Optional url?: string
Optional value?: string
Channel
Channel
: { id
: string; members
?: User[]; name
: string }Type declaration
id: string
Optional members?: User[]
name: string
ChannelsSelectElement
Channels
Select
Element
: { actionId
: string; confirm
?: ConfirmObject; initialChannel
?: string; placeholder
: PlainTextObject; type
: "channels_select" }Type declaration
actionId: string
Optional initialChannel?: string
type: "channels_select"
ClientConfig
ClientConfig: { accessToken: string; onRequest?: OnRequestFunction; origin?: string }
Type declaration
accessToken: string
Optional onRequest?: OnRequestFunction
Optional origin?: string
ContextBlock
Type declaration
Optional blockId?: string
type: "context"
ConversationListOptions
ConversationListOptions: { cursor?: string; excludeArchived?: boolean; limit?: number; types?: string }
Type declaration
Optional cursor?: string
Optional excludeArchived?: boolean
Optional limit?: number
Optional types?: string
ConversationMembersOptions
ConversationMembersOptions: { cursor?: string; limit?: number }
Type declaration
Optional cursor?: string
Optional limit?: number
ConversationsSelectElement
Conversations
Select
Element
: { actionId
: string; confirm
?: ConfirmObject; initialConversation
?: string; placeholder
: PlainTextObject; type
: "conversations_select" }Type declaration
actionId: string
Optional initialConversation?: string
type: "conversations_select"
DatepickerElement
Type declaration
actionId: string
Optional initialDate?: string
type: "datepicker"
DeleteMessageOptions
DeleteMessageOptions: { asUser?: boolean; channel: string; ts: string }
Type declaration
Optional asUser?: boolean
channel: string
ts: string
DeleteScheduledMessageOptions
DeleteScheduledMessageOptions: { asUser?: boolean; channel: string; scheduledMessageId: string }
Type declaration
Optional asUser?: boolean
channel: string
scheduledMessageId: string
DividerBlock
DividerBlock: { blockId?: string; type: "divider" }
Type declaration
Optional blockId?: string
type: "divider"
ExternalSelectElement
Type declaration
actionId: string
Optional initialOption?: OptionObject
Optional minQueryLength?: number
type: "external_select"
FileBlock
FileBlock: { blockId?: string; externalId: string; source: string; type: "file" }
Type declaration
Optional blockId?: string
externalId: string
source: string
type: "file"
GetInfoOptions
GetInfoOptions: { includeLocale?: boolean }
Type declaration
Optional includeLocale?: boolean
GetPermalinkOptions
GetPermalinkOptions: { channel: string; messageTs: string }
Type declaration
channel: string
messageTs: string
GetScheduledMessagesOptions
GetScheduledMessagesOptions: { channel?: string; cursor?: string; latest?: string; limit?: number; oldest?: string }
Type declaration
Optional channel?: string
Optional cursor?: string
Optional latest?: string
Optional limit?: number
Optional oldest?: string
ImageBlock
Image
Block
: { altText
: string; blockId
?: string; imageUrl
: string; title
?: PlainTextObject; type
: "image" }Type declaration
altText: string
Optional blockId?: string
imageUrl: string
type: "image"
ImageElement
ImageElement: { altText: string; imageUrl: string; type: "image" }
Type declaration
altText: string
imageUrl: string
type: "image"
InputBlock
Type declaration
Optional blockId?: string
Optional optional?: boolean
type: "input"
MeMessageOptions
MeMessageOptions: { channel: string; text: string }
Type declaration
channel: string
text: string
MrkdwnObject
MrkdwnObject: { text: string; type: "mrkdwn"; verbatim?: boolean }
Type declaration
text: string
type: "mrkdwn"
Optional verbatim?: boolean
MultiChannelsSelectElement
Multi
Channels
Select
Element
: { actionId
: string; confirm
?: ConfirmObject; initialChannels
?: string[]; placeholder
: PlainTextObject; type
: "multi_channels_select" }Type declaration
actionId: string
Optional initialChannels?: string[]
type: "multi_channels_select"
MultiConversationsSelectElement
Multi
Conversations
Select
Element
: { actionId
: string; confirm
?: ConfirmObject; initialConversations
?: string[]; placeholder
: PlainTextObject; type
: "multi_conversations_select" }Type declaration
actionId: string
Optional initialConversations?: string[]
type: "multi_conversations_select"
MultiExternalSelectElement
Type declaration
actionId: string
Optional initialOptions?: OptionObject[]
Optional minQueryLength?: number
type: "multi_external_select"
MultiStaticSelectElement
Type declaration
actionId: string
Optional initialOptions?: OptionObject[]
type: "multi_static_select"
MultiUsersSelectElement
Multi
Users
Select
Element
: { actionId
: string; confirm
?: ConfirmObject; initialUsers
?: string[]; placeholder
: PlainTextObject; type
: "multi_users_select" }Type declaration
actionId: string
Optional initialUsers?: string[]
type: "multi_users_select"
OAuthAPIResponse
OAuthAPIResponse: Record<string, any> & { ok: boolean }
OpenViewOptions
Open
View
Options
: { triggerId
: string; view
: View }OptionObject
Type declaration
Optional url?: string
value: string
OverflowElement
Type declaration
actionId: string
type: "overflow"
PlainTextInputElement
Plain
Text
Input
Element
: { actionId
: string; initialValue
: string; maxLength
?: number; minLength
?: number; multiline
?: boolean; placeholder
?: PlainTextObject; type
: "plain_text_input" }Type declaration
actionId: string
initialValue: string
Optional maxLength?: number
Optional minLength?: number
Optional multiline?: boolean
type: "plain_text_input"
PlainTextObject
PlainTextObject: { emoji?: boolean; text: string; type: "plain_text" }
Type declaration
Optional emoji?: boolean
text: string
type: "plain_text"
PostEphemeralOptionalOptions
Post
Ephemeral
Optional
Options
: { asUser
?: boolean; attachments
?: string | Attachment[]; linkNames
?: boolean; parse
?: "none" | "full" }Type declaration
Optional asUser?: boolean
Optional attachments?: string | Attachment[]
Optional linkNames?: boolean
Optional parse?: "none" | "full"
PostMessageOptionalOptions
Post
Message
Optional
Options
: { asUser
?: boolean; attachments
?: string | Attachment[]; iconEmoji
?: string; iconUrl
?: string; linkNames
?: boolean; parse
?: "none" | "full"; replyBroadcast
?: boolean; threadTs
?: string; unfurlLinks
?: boolean; unfurlMedia
?: boolean; username
?: string }Type declaration
Optional asUser?: boolean
Optional attachments?: string | Attachment[]
Optional iconEmoji?: string
Optional iconUrl?: string
Optional linkNames?: boolean
Optional parse?: "none" | "full"
Optional replyBroadcast?: boolean
Optional threadTs?: string
Optional unfurlLinks?: boolean
Optional unfurlMedia?: boolean
Optional username?: string
PublishViewOptions
Publish
View
Options
: { hash
?: string; userId
: string; view
: View }Type declaration
Optional hash?: string
userId: string
PushViewOptions
Push
View
Options
: { triggerId
: string; view
: View }RadioButtonsElement
Type declaration
actionId: string
Optional initialOption?: OptionObject
type: "radio_buttons"
ScheduleMessageOptions
Schedule
Message
Options
: Message & { asUser
?: boolean; attachments
?: string | Attachment[]; channel
: string; linkNames
?: boolean; parse
?: "none" | "full"; postAt
?: string; replyBroadcast
?: boolean; threadTs
?: string; unfurlLinks
?: boolean; unfurlMedia
?: boolean }SectionBlock
Type declaration
Optional blockId?: string
type: "section"
SendMessageSuccessResponse
SendMessageSuccessResponse: "ok"
StaticSelectElement
Type declaration
actionId: string
Optional initialOption?: OptionObject
type: "static_select"
UnfurlOptions
UnfurlOptions: { channel: string; ts: string; unfurls: Record<string, any>; userAuthMessage?: string; userAuthRequired?: boolean; userAuthUrl?: string }
Type declaration
channel: string
ts: string
unfurls: Record<string, any>
Optional userAuthMessage?: string
Optional userAuthRequired?: boolean
Optional userAuthUrl?: string
UpdateMessageOptions
Update
Message
Options
: Message & { asUser
?: boolean; attachments
?: string | Attachment[]; blocks
?: any; channel
: string; linkNames
?: boolean; parse
?: "none" | "full"; text
?: string; ts
: string }UpdateViewOptions
Update
View
Options
: { externalId
?: string; hash
?: string; view
: View; viewId
?: string }Type declaration
Optional externalId?: string
Optional hash?: string
Optional viewId?: string
UserInfoOptions
UserInfoOptions: { includeLocale?: boolean }
Type declaration
Optional includeLocale?: boolean
UserListOptions
UserListOptions: { cursor?: string; includeLocale?: boolean; limit?: number }
Type declaration
Optional cursor?: string
Optional includeLocale?: boolean
Optional limit?: number
UsersSelectElement
Type declaration
actionId: string
Optional initialUser?: string
type: "users_select"
ViewCommon
ViewCommon: { callbackId?: string; externalId?: string; privateMetadata?: string }
Type declaration
Optional callbackId?: string
Optional externalId?: string
Optional privateMetadata?: string
Pass true to delete the message as the authed user with chat:write:user scope. Bot users in this context are considered authed users. If unused or false, the message will be deleted with chat:write:bot scope.