slack

package
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 28, 2025 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BookmarksAddName    = "slack.bookmarks.add"
	BookmarksEditName   = "slack.bookmarks.edit"
	BookmarksListName   = "slack.bookmarks.list"
	BookmarksRemoveName = "slack.bookmarks.remove"
)
View Source
const (
	ChatDeleteName        = "slack.chat.delete"
	ChatGetPermalinkName  = "slack.chat.getPermalink"
	ChatPostEphemeralName = "slack.chat.postEphemeral"
	ChatPostMessageName   = "slack.chat.postMessage"
	ChatUpdateName        = "slack.chat.update"

	TimpaniPostApprovalName = "slack.timpani.postApproval"
)
View Source
const (
	DefaultGreenButton = "Approve"
	DefaultRedButton   = "Deny"
)
View Source
const (
	ConversationsArchiveName    = "slack.conversations.archive"
	ConversationsCloseName      = "slack.conversations.close"
	ConversationsCreateName     = "slack.conversations.create"
	ConversationsHistoryName    = "slack.conversations.history"
	ConversationsInfoName       = "slack.conversations.info"
	ConversationsInviteName     = "slack.conversations.invite"
	ConversationsJoinName       = "slack.conversations.join"
	ConversationsKickName       = "slack.conversations.kick"
	ConversationsLeaveName      = "slack.conversations.leave"
	ConversationsListName       = "slack.conversations.list"
	ConversationsMembersName    = "slack.conversations.members"
	ConversationsOpenName       = "slack.conversations.open"
	ConversationsRenameName     = "slack.conversations.rename"
	ConversationsRepliesName    = "slack.conversations.replies"
	ConversationsSetPurposeName = "slack.conversations.setPurpose"
	ConversationsSetTopicName   = "slack.conversations.setTopic"
	ConversationsUnarchiveName  = "slack.conversations.unarchive"
)
View Source
const (
	ReactionsAddName    = "slack.reactions.add"
	ReactionsGetName    = "slack.reactions.get"
	ReactionsListName   = "slack.reactions.list"
	ReactionsRemoveName = "slack.reactions.remove"
)
View Source
const (
	UsersConversationsName = "slack.users.conversations"
	UsersGetPresenceName   = "slack.users.getPresence"
	UsersIdentityName      = "slack.users.identity"
	UsersInfoName          = "slack.users.info"
	UsersListName          = "slack.users.list"
	UsersLookupByEmailName = "slack.users.lookupByEmail"
	UsersProfileGetName    = "slack.users.profile.get"
)

Variables

This section is empty.

Functions

func Register

func Register(l zerolog.Logger, cmd *cli.Command, w worker.Worker)

Register exposes Temporal activities and workflows via the Timpani worker.

Types

type API

type API struct {
	// contains filtered or unexported fields
}

func (*API) TimpaniPostApprovalWorkflow

func (a *API) TimpaniPostApprovalWorkflow(ctx workflow.Context, req TimpaniPostApprovalRequest) (*TimpaniPostApprovalResponse, error)

TimpaniPostApprovalWorkflow is a convenience wrapper over [ChatPostMessageActivity]. It sends an interactive message to a user/group/channel with a short header, a markdown message, and 2 buttons. It then waits for (and returns) the user selection.

For message formatting tips, see https://docs.slack.dev/messaging/formatting-message-text.

type BookmarksAddRequest added in v0.3.0

type BookmarksAddRequest struct {
	ChannelID string `json:"channel_id"`
	Title     string `json:"title"`
	Type      string `json:"type"`

	Link        string `json:"link,omitempty"`
	Emoji       string `json:"emoji,omitempty"`
	EntityID    string `json:"entity_id,omitempty"`
	AccessLevel string `json:"access_level,omitempty"`
	ParentID    string `json:"parent_id,omitempty"`
}

https://docs.slack.dev/reference/methods/bookmarks.add

type BookmarksAddResponse added in v0.3.0

type BookmarksAddResponse struct {
	Bookmark map[string]any `json:"bookmark,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/bookmarks.add

type BookmarksEditRequest added in v0.3.0

type BookmarksEditRequest struct {
	ChannelID  string `json:"channel_id"`
	BookmarkID string `json:"bookmark_id"`

	Title string `json:"title,omitempty"`
	Link  string `json:"link,omitempty"`
	Emoji string `json:"emoji,omitempty"`
}

https://docs.slack.dev/reference/methods/bookmarks.edit

type BookmarksEditResponse added in v0.3.0

type BookmarksEditResponse struct {
	Bookmark map[string]any `json:"bookmark,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/bookmarks.edit

type BookmarksListRequest added in v0.3.0

type BookmarksListRequest struct {
	ChannelID string `json:"channel_id"`
}

https://docs.slack.dev/reference/methods/bookmarks.list

type BookmarksListResponse added in v0.3.0

type BookmarksListResponse struct {
	Bookmarks []map[string]any `json:"bookmarks,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/bookmarks.list

type BookmarksRemoveRequest added in v0.3.0

type BookmarksRemoveRequest struct {
	ChannelID  string `json:"channel_id"`
	BookmarkID string `json:"bookmark_id"`

	QuipSectionID string `json:"quip_section_id,omitempty"`
}

https://docs.slack.dev/reference/methods/bookmarks.remove

type BookmarksRemoveResponse added in v0.3.0

type BookmarksRemoveResponse struct {
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/bookmarks.remove

type ChatDeleteRequest

type ChatDeleteRequest struct {
	Channel string `json:"channel"`
	TS      string `json:"ts"`

	AsUser bool `json:"as_user,omitempty"`
}

https://docs.slack.dev/reference/methods/chat.delete

type ChatDeleteResponse

type ChatDeleteResponse struct {
	Channel string `json:"channel,omitempty"`
	TS      string `json:"ts,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/chat.delete

type ChatGetPermalinkRequest

type ChatGetPermalinkRequest struct {
	Channel   string `json:"channel"`
	MessageTS string `json:"message_ts"`
}

https://docs.slack.dev/reference/methods/chat.getPermalink

type ChatGetPermalinkResponse

type ChatGetPermalinkResponse struct {
	Channel   string `json:"channel,omitempty"`
	Permalink string `json:"permalink,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/chat.getPermalink

type ChatPostEphemeralRequest

type ChatPostEphemeralRequest struct {
	Channel string `json:"channel"`
	User    string `json:"user"`

	Blocks       []map[string]any `json:"blocks,omitempty"`
	Attachments  []map[string]any `json:"attachments,omitempty"`
	MarkdownText string           `json:"markdown_text,omitempty"`
	Text         string           `json:"text,omitempty"`

	ThreadTS string `json:"thread_ts,omitempty"`

	IconEmoji string `json:"icon_emoji,omitempty"`
	IconURL   string `json:"icon_url,omitempty"`

	LinkNames bool   `json:"link_names,omitempty"`
	Parse     string `json:"parse,omitempty"`
	Username  string `json:"username,omitempty"`
}

https://docs.slack.dev/reference/methods/chat.postEphemeral

https://docs.slack.dev/reference/methods/chat.postMessage#channels

type ChatPostEphemeralResponse

type ChatPostEphemeralResponse struct {
	MessageTS string `json:"message_ts,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/chat.postEphemeral

type ChatPostMessageRequest

type ChatPostMessageRequest struct {
	Channel string `json:"channel"`

	Blocks       []map[string]any `json:"blocks,omitempty"`
	Attachments  []map[string]any `json:"attachments,omitempty"`
	MarkdownText string           `json:"markdown_text,omitempty"`
	Text         string           `json:"text,omitempty"`

	ThreadTS       string `json:"thread_ts,omitempty"`
	ReplyBroadcast bool   `json:"reply_broadcast,omitempty"`

	IconEmoji string         `json:"icon_emoji,omitempty"`
	IconURL   string         `json:"icon_url,omitempty"`
	Metadata  map[string]any `json:"metadata,omitempty"`

	LinkNames bool `json:"link_names,omitempty"`
	// Ignoring "mrkdwn" for now, because it has an unusual default value (true).
	Parse       string `json:"parse,omitempty"`
	UnfurlLinks bool   `json:"unfurl_links,omitempty"`
	UnfurlMedia bool   `json:"unfurl_media,omitempty"`
	Username    string `json:"username,omitempty"`
}

https://docs.slack.dev/reference/methods/chat.postMessage

type ChatPostMessageResponse

type ChatPostMessageResponse struct {
	Channel string         `json:"channel,omitempty"`
	TS      string         `json:"ts,omitempty"`
	Message map[string]any `json:"message,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/chat.postMessage

type ChatUpdateRequest

type ChatUpdateRequest struct {
	Channel string `json:"channel"`
	TS      string `json:"ts"`

	Blocks       []map[string]any `json:"blocks,omitempty"`
	Attachments  []map[string]any `json:"attachments,omitempty"`
	MarkdownText string           `json:"markdown_text,omitempty"`
	Text         string           `json:"text,omitempty"`

	AsUser         bool           `json:"as_user,omitempty"`
	FileIDs        []string       `json:"file_ids,omitempty"`
	LinkNames      bool           `json:"link_names,omitempty"`
	Metadata       map[string]any `json:"metadata,omitempty"`
	Parse          string         `json:"parse,omitempty"`
	ReplyBroadcast bool           `json:"reply_broadcast,omitempty"`
}

https://docs.slack.dev/reference/methods/chat.update

https://docs.slack.dev/reference/methods/chat.postMessage#channels

type ChatUpdateResponse

type ChatUpdateResponse struct {
	Channel string         `json:"channel,omitempty"`
	TS      string         `json:"ts,omitempty"`
	Text    string         `json:"text,omitempty"`
	Message map[string]any `json:"message,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/chat.update

type ConversationsArchiveRequest

type ConversationsArchiveRequest struct {
	Channel string `json:"channel"`
}

https://docs.slack.dev/reference/methods/conversations.archive

type ConversationsArchiveResponse

type ConversationsArchiveResponse struct {
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.archive

type ConversationsCloseRequest

type ConversationsCloseRequest struct {
	Channel string `json:"channel"`
}

https://docs.slack.dev/reference/methods/conversations.close

type ConversationsCloseResponse

type ConversationsCloseResponse struct {
	AlreadyClosed bool `json:"already_closed,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.close

type ConversationsCreateRequest

type ConversationsCreateRequest struct {
	Name string `json:"name"`

	IsPrivate bool   `json:"is_private,omitempty"`
	TeamID    string `json:"team_id,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.create

type ConversationsCreateResponse

type ConversationsCreateResponse struct {
	Channel map[string]any `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.create

type ConversationsHistoryRequest

type ConversationsHistoryRequest struct {
	Channel string `json:"channel"`

	Cursor             string `json:"cursor,omitempty"`
	IncludeAllMetadata bool   `json:"include_all_metadata,omitempty"`
	Inclusive          bool   `json:"inclusive,omitempty"`
	Latest             string `json:"latest,omitempty"`
	Limit              int    `json:"limit,omitempty"`
	Oldest             string `json:"oldest,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.history

type ConversationsHistoryResponse

type ConversationsHistoryResponse struct {
	Latest    string           `json:"latest,omitempty"`
	Messages  []map[string]any `json:"messages,omitempty"`
	HasMore   bool             `json:"has_more,omitempty"`
	IsLimited bool             `json:"is_limited,omitempty"` // Undocumented.
	PinCount  int              `json:"pin_count,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.history

type ConversationsInfoRequest

type ConversationsInfoRequest struct {
	Channel string `json:"channel"`

	IncludeLocale     bool `json:"include_locale,omitempty"`
	IncludeNumMembers bool `json:"include_num_members,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.info

type ConversationsInfoResponse

type ConversationsInfoResponse struct {
	Channel map[string]any `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.info

type ConversationsInviteRequest

type ConversationsInviteRequest struct {
	Channel string `json:"channel"`
	Users   string `json:"users"`

	Force bool `json:"force,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.invite

type ConversationsInviteResponse

type ConversationsInviteResponse struct {
	Channel map[string]any   `json:"channel,omitempty"`
	Errors  []map[string]any `json:"errors,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.invite

type ConversationsJoinRequest

type ConversationsJoinRequest struct {
	Channel string `json:"channel"`
}

https://docs.slack.dev/reference/methods/conversations.join

type ConversationsJoinResponse

type ConversationsJoinResponse struct {
	Channel map[string]any `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.join

type ConversationsKickRequest

type ConversationsKickRequest struct {
	Channel string `json:"channel"`

	User string `json:"user,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.kick

type ConversationsKickResponse

type ConversationsKickResponse struct {
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.kick

type ConversationsLeaveRequest

type ConversationsLeaveRequest struct {
	Channel string `json:"channel"`
}

https://docs.slack.dev/reference/methods/conversations.leave

type ConversationsLeaveResponse

type ConversationsLeaveResponse struct {
	NotInChannel bool `json:"not_in_channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.leave

type ConversationsListRequest

type ConversationsListRequest struct {
	Cursor          string `json:"cursor,omitempty"`
	ExcludeArchived bool   `json:"exclude_archived,omitempty"`
	Limit           int    `json:"limit,omitempty"`
	TeamID          string `json:"team_id,omitempty"`
	Types           string `json:"types,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.list

type ConversationsListResponse

type ConversationsListResponse struct {
	Channels []map[string]any `json:"channels,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.list

type ConversationsMembersRequest

type ConversationsMembersRequest struct {
	Channel string `json:"channel"`

	Cursor string `json:"cursor,omitempty"`
	Limit  int    `json:"limit,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.members

type ConversationsMembersResponse

type ConversationsMembersResponse struct {
	Members []string `json:"members,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.members

type ConversationsOpenRequest

type ConversationsOpenRequest struct {
	Channel         string `json:"channel,omitempty"`
	ReturnIM        bool   `json:"return_im,omitempty"`
	Users           string `json:"users,omitempty"`
	PreventCreation bool   `json:"prevent_creation,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.open

type ConversationsOpenResponse

type ConversationsOpenResponse struct {
	NoOp        bool           `json:"no_op,omitempty"`
	AlreadyOpen bool           `json:"already_open,omitempty"`
	Channel     map[string]any `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.open

type ConversationsRenameRequest

type ConversationsRenameRequest struct {
	Channel string `json:"channel"`
	Name    string `json:"name"`
}

https://docs.slack.dev/reference/methods/conversations.rename

type ConversationsRenameResponse

type ConversationsRenameResponse struct {
	Channel map[string]any `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.rename

type ConversationsRepliesRequest

type ConversationsRepliesRequest struct {
	Channel string `json:"channel"`
	TS      string `json:"ts"`

	Cursor             string `json:"cursor,omitempty"`
	IncludeAllMetadata bool   `json:"include_all_metadata,omitempty"`
	Inclusive          bool   `json:"inclusive,omitempty"`
	Latest             string `json:"latest,omitempty"`
	Limit              int    `json:"limit,omitempty"`
	Oldest             string `json:"oldest,omitempty"`
}

https://docs.slack.dev/reference/methods/conversations.replies

type ConversationsRepliesResponse

type ConversationsRepliesResponse struct {
	Messages []map[string]any `json:"messages,omitempty"`
	HasMore  bool             `json:"has_more,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.replies

type ConversationsSetPurposeRequest

type ConversationsSetPurposeRequest struct {
	Channel string `json:"channel"`
	Purpose string `json:"purpose"`
}

https://docs.slack.dev/reference/methods/conversations.setPurpose

type ConversationsSetPurposeResponse

type ConversationsSetPurposeResponse struct {
	Channel map[string]any `json:"channel,omitempty"` // Empirically different from the documentation.
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.setPurpose

type ConversationsSetTopicRequest

type ConversationsSetTopicRequest struct {
	Channel string `json:"channel"`
	Topic   string `json:"topic"`
}

https://docs.slack.dev/reference/methods/conversations.setTopic

type ConversationsSetTopicResponse

type ConversationsSetTopicResponse struct {
	Channel map[string]any `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.setTopic

type ConversationsUnarchiveRequest

type ConversationsUnarchiveRequest struct {
	Channel string `json:"channel"`
}

https://docs.slack.dev/reference/methods/conversations.unarchive

type ConversationsUnarchiveResponse

type ConversationsUnarchiveResponse struct {
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/conversations.unarchive

type ReactionsAddRequest

type ReactionsAddRequest struct {
	Channel   string `json:"channel"`
	Timestamp string `json:"timestamp"`
	Name      string `json:"name"`
}

https://docs.slack.dev/reference/methods/reactions.add

type ReactionsAddResponse

type ReactionsAddResponse struct {
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/reactions.add

type ReactionsGetRequest

type ReactionsGetRequest struct {
	Channel     string `json:"channel,omitempty"`
	File        string `json:"file,omitempty"`
	FileComment string `json:"file_comment,omitempty"`
	Full        bool   `json:"full,omitempty"`
	Timestamp   string `json:"timestamp,omitempty"`
}

https://docs.slack.dev/reference/methods/reactions.get

type ReactionsGetResponse

type ReactionsGetResponse struct {
	Type    string         `json:"type,omitempty"`
	Message map[string]any `json:"message,omitempty"`
	Channel string         `json:"channel,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/reactions.get

type ReactionsListRequest

type ReactionsListRequest struct {
	User   string `json:"user,omitempty"`
	Full   bool   `json:"full,omitempty"`
	Count  int    `json:"count,omitempty"`
	Page   int    `json:"page,omitempty"`
	Cursor string `json:"cursor,omitempty"`
	Limit  int    `json:"limit,omitempty"`
	TeamID string `json:"team_id,omitempty"`
}

https://docs.slack.dev/reference/methods/reactions.list

type ReactionsListResponse

type ReactionsListResponse struct {
	Items []map[string]any `json:"items,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/reactions.list

type ReactionsRemoveRequest

type ReactionsRemoveRequest struct {
	Name string `json:"name"`

	Channel     string `json:"channel,omitempty"`
	File        string `json:"file,omitempty"`
	FileComment string `json:"file_comment,omitempty"`
	Timestamp   string `json:"timestamp,omitempty"`
}

https://docs.slack.dev/reference/methods/reactions.remove

type ReactionsRemoveResponse

type ReactionsRemoveResponse struct {
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/reactions.remove

type TimpaniPostApprovalRequest

type TimpaniPostApprovalRequest struct {
	Channel string `json:"channel"`

	Header  string `json:"header"`
	Message string `json:"message"`

	GreenButton string `json:"green_button,omitempty"`
	RedButton   string `json:"red_button,omitempty"`

	Metadata       map[string]any `json:"metadata,omitempty"`
	ReplyBroadcast bool           `json:"reply_broadcast,omitempty"`
	ThreadTS       string         `json:"thread_ts,omitempty"`

	Timeout string `json:"timeout,omitempty"`
}

TimpaniPostApprovalRequest is very similar to ChatPostMessageRequest. If button labels are not specified here, their default values are DefaultGreenButton and DefaultRedButton.

type TimpaniPostApprovalResponse

type TimpaniPostApprovalResponse struct {
	InteractionEvent map[string]any `json:"interaction_event,omitempty"`
	// contains filtered or unexported fields
}

type UsersConversationsRequest

type UsersConversationsRequest struct {
	Cursor          string `json:"cursor,omitempty"`
	ExcludeArchived bool   `json:"exclude_archived,omitempty"`
	Limit           int    `json:"limit,omitempty"`
	TeamID          string `json:"team_id,omitempty"`
	Types           string `json:"types,omitempty"`
	User            string `json:"user,omitempty"`
}

https://docs.slack.dev/reference/methods/users.conversations

type UsersConversationsResponse

type UsersConversationsResponse struct {
	Channels []map[string]any `json:"channels,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.conversations

type UsersGetPresenceRequest

type UsersGetPresenceRequest struct {
	User string `json:"user,omitempty"`
}

https://docs.slack.dev/reference/methods/users.getPresence

type UsersGetPresenceResponse

type UsersGetPresenceResponse struct {
	Presence        string `json:"presence,omitempty"`
	Online          bool   `json:"online,omitempty"`
	AutoAway        bool   `json:"auto_away,omitempty"`
	ManualAway      bool   `json:"manual_away,omitempty"`
	ConnectionCount int    `json:"connection_count,omitempty"`
	LastActivity    int64  `json:"last_activity,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.getPresence

type UsersIdentityResponse

type UsersIdentityResponse struct {
	User map[string]any `json:"user,omitempty"`
	Team map[string]any `json:"team,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.identity

type UsersInfoRequest

type UsersInfoRequest struct {
	User string `json:"user"`

	IncludeLocale bool `json:"include_locale,omitempty"`
}

https://docs.slack.dev/reference/methods/users.info

type UsersInfoResponse

type UsersInfoResponse struct {
	User map[string]any `json:"user,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.info

type UsersListRequest

type UsersListRequest struct {
	Cursor        string `json:"cursor,omitempty"`
	IncludeLocale bool   `json:"include_locale,omitempty"`
	Limit         int    `json:"limit,omitempty"`
	TeamID        string `json:"team_id,omitempty"`
}

https://docs.slack.dev/reference/methods/users.list

type UsersListResponse

type UsersListResponse struct {
	Members []map[string]any `json:"members,omitempty"`
	CacheTS int64            `json:"cache_ts,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.list

type UsersLookupByEmailRequest

type UsersLookupByEmailRequest struct {
	Email string `json:"email"`
}

https://docs.slack.dev/reference/methods/users.lookupByEmail

type UsersLookupByEmailResponse

type UsersLookupByEmailResponse struct {
	User map[string]any `json:"user,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.lookupByEmail

type UsersProfileGetRequest

type UsersProfileGetRequest struct {
	IncludeLabels bool   `json:"include_labels,omitempty"`
	User          string `json:"user,omitempty"`
}

https://docs.slack.dev/reference/methods/users.profile.get

type UsersProfileGetResponse

type UsersProfileGetResponse struct {
	Profile map[string]any `json:"profile,omitempty"`
	// contains filtered or unexported fields
}

https://docs.slack.dev/reference/methods/users.profile.get

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL