Web API methods

admin.analytics.getFileRetrieve analytics data for a given date, presented as a compressed JSON file
admin.apps.activities.listGet logs for a specified team/org
admin.apps.approveApprove an app for installation on a workspace.
admin.apps.clearResolutionClear an app resolution
admin.apps.restrictRestrict an app for installation on a workspace.
admin.apps.uninstallUninstall an app from one or many workspaces, or an entire enterprise organization.
admin.apps.approved.listList approved apps for an org or workspace.
admin.apps.config.lookupLook up the app config for connectors by their IDs
admin.apps.config.setSet the app config for a connector
admin.apps.requests.cancelCancel app request for team
admin.apps.requests.listList app requests for a team/workspace.
admin.apps.restricted.listList restricted apps for an org or workspace.
admin.audit.anomaly.allow.getItemAPI to allow enterprise grid admins to read the allow list of IP blocks and ASNs from the enterprise configuration.
admin.audit.anomaly.allow.updateItemAPI to allow enterprise grid admins to write/overwrite the allow list of IP blocks and ASNs from the enterprise configuration.
admin.auth.policy.assignEntitiesAssign entities to a particular authentication policy.
admin.auth.policy.getEntitiesFetch all the entities assigned to a particular authentication policy by name.
admin.auth.policy.removeEntitiesRemove specified entities from a specified authentication policy.
admin.barriers.createCreate an Information Barrier
admin.barriers.deleteDelete an existing Information Barrier
admin.barriers.listGet all Information Barriers for your organization
admin.barriers.updateUpdate an existing Information Barrier
admin.conversations.archiveArchive a public or private channel.
admin.conversations.bulkArchiveArchive public or private channels in bulk.
admin.conversations.bulkDeleteDelete public or private channels in bulk
admin.conversations.bulkMoveMove public or private channels in bulk.
admin.conversations.convertToPrivateConvert a public channel to a private channel.
admin.conversations.convertToPublicConvert a private channel to a public channel.
admin.conversations.createCreate a public or private channel-based conversation.
admin.conversations.deleteDelete a public or private channel.
admin.conversations.disconnectSharedDisconnect a connected channel from one or more workspaces.
admin.conversations.getConversationPrefsGet conversation preferences for a public or private channel.
admin.conversations.getCustomRetentionThis API endpoint can be used by any admin to get a conversation's retention policy.
admin.conversations.getTeamsGet all the workspaces a given public or private channel is connected to within this Enterprise org.
admin.conversations.inviteInvite a user to a public or private channel.
admin.conversations.linkObjectsLink a Salesforce record to a channel
admin.conversations.lookupReturns channels on the given team using the filters.
admin.conversations.removeCustomRetentionThis API endpoint can be used by any admin to remove a conversation's retention policy.
admin.conversations.renameRename a public or private channel.
admin.conversations.searchSearch for public or private channels in an Enterprise organization.
admin.conversations.setConversationPrefsSet the posting permissions for a public or private channel.
admin.conversations.setCustomRetentionThis API endpoint can be used by any admin to set a conversation's retention policy.
admin.conversations.setTeamsSet the workspaces in an Enterprise grid org that connect to a public or private channel.
admin.conversations.unarchiveUnarchive a public or private channel.
admin.conversations.unlinkObjectsUnlink a Salesforce record from a channel
admin.conversations.ekm.listOriginalConnectedChannelInfoList all disconnected channels—i.e., channels that were once connected to other workspaces and then disconnected—and the corresponding original channel IDs for key revocation with EKM.
admin.conversations.restrictAccess.addGroupAdd an allowlist of IDP groups for accessing a channel
admin.conversations.restrictAccess.listGroupsList all IDP Groups linked to a channel
admin.conversations.restrictAccess.removeGroupRemove a linked IDP group linked from a private channel
admin.emoji.addAdd an emoji.
admin.emoji.addAliasAdd an emoji alias.
admin.emoji.listList emoji for an Enterprise Grid organization.
admin.emoji.removeRemove an emoji across an Enterprise Grid organization
admin.emoji.renameRename an emoji.
admin.functions.listLook up functions by a set of apps
admin.functions.permissions.lookupLookup the visibility of multiple Slack functions and include the users if it is limited to particular named entities.
admin.functions.permissions.setSet the visibility of a Slack function and define the users or workspaces if it is set to named_entities
admin.inviteRequests.approveApprove a workspace invite request.
admin.inviteRequests.denyDeny a workspace invite request.
admin.inviteRequests.listList all pending workspace invite requests.
admin.inviteRequests.approved.listList all approved workspace invite requests.
admin.inviteRequests.denied.listList all denied workspace invite requests.
admin.roles.addAssignmentsAdds members to the specified role with the specified scopes
admin.roles.listAssignmentsLists assignments for all roles across entities. Options to scope results by any combination of roles or entities
admin.roles.removeAssignmentsRemoves a set of users from a role for the given scopes and entities
admin.teams.admins.listList all of the admins on a given workspace.
admin.teams.createCreate an Enterprise team.
admin.teams.listList all teams on an Enterprise organization
admin.teams.owners.listList all of the owners on a given workspace.
admin.teams.settings.infoFetch information about settings in a workspace
admin.teams.settings.setDefaultChannelsSet the default channels of a workspace.
admin.teams.settings.setDescriptionSet the description of a given workspace.
admin.teams.settings.setDiscoverabilityAn API method that allows admins to set the discoverability of a given workspace
admin.teams.settings.setIconSets the icon of a workspace.
admin.teams.settings.setNameSet the name of a given workspace.
admin.usergroups.addChannelsAdd up to one hundred default channels to an IDP group.
admin.usergroups.addTeamsAssociate one or more default workspaces with an organization-wide IDP group.
admin.usergroups.listChannelsList the channels linked to an org-level IDP group (user group).
admin.usergroups.removeChannelsRemove one or more default channels from an org-level IDP group (user group).
admin.users.assignAdd an Enterprise user to a workspace.
admin.users.inviteInvite a user to a workspace.
admin.users.listList users on a workspace
admin.users.removeRemove a user from a workspace.
admin.users.setAdminSet an existing regular user or owner to be a workspace admin.
admin.users.setExpirationSet an expiration for a guest user
admin.users.setOwnerSet an existing regular user or admin to be a workspace owner.
admin.users.setRegularSet an existing guest user, admin user, or owner to be a regular user.
admin.users.session.clearSettingsClear user-specific session settings—the session duration and what happens when the client closes—for a list of users.
admin.users.session.getSettingsGet user-specific session settings—the session duration and what happens when the client closes—given a list of users.
admin.users.session.invalidateRevoke a single session for a user. The user will be forced to login to Slack.
admin.users.session.listList active user sessions for an organization
admin.users.session.resetWipes all valid sessions on all devices for a given user
admin.users.session.resetBulkEnqueues an asynchronous job to wipe all valid sessions on all devices for a given list of users
admin.users.session.setSettingsConfigure the user-level session settings—the session duration and what happens when the client closes—for one or more users.
admin.users.unsupportedVersions.exportAsk Slackbot to send you an export listing all workspace members using unsupported software, presented as a zipped CSV file.
admin.workflows.collaborators.addAdd collaborators to workflows within the team or enterprise
admin.workflows.collaborators.removeRemove collaborators from workflows within the team or enterprise
admin.workflows.permissions.lookupLook up the permissions for a set of workflows
admin.workflows.searchSearch workflows within the team or enterprise
admin.workflows.unpublishUnpublish workflows within the team or enterprise
admin.workflows.triggers.types.permissions.lookuplist the permissions for using each trigger type in workflow builder
admin.workflows.triggers.types.permissions.setSet the permissions for using a trigger type in workflow builder
api.testChecks API calling code.
apps.activities.listGet logs for a specified app
apps.auth.external.deleteDelete external auth tokens only on the Slack side
apps.auth.external.getGet the access token for the provided token ID
apps.connections.openGenerate a temporary Socket Mode WebSocket URL that your app can connect to in order to receive events and interactive payloads over.
apps.datastore.bulkDeleteDelete items from a datastore in bulk
apps.datastore.bulkGetGet items from a datastore in bulk
apps.datastore.bulkPutCreates or replaces existing items in bulk
apps.datastore.countCount the number of items in a datastore that match a query
apps.datastore.deleteDelete an item from a datastore
apps.datastore.getGet an item from a datastore
apps.datastore.putCreates a new item, or replaces an old item with a new item.
apps.datastore.queryQuery a datastore for items
apps.datastore.updateEdits an existing item's attributes, or adds a new item if it does not already exist.
apps.event.authorizations.listGet a list of authorizations for the given event context. Each authorization represents an app installation that the event is visible to.
apps.manifest.createCreate an app from an app manifest.
apps.manifest.deletePermanently deletes an app created through app manifests
apps.manifest.exportExport an app manifest from an existing app
apps.manifest.updateUpdate an app from an app manifest
apps.manifest.validateValidate an app manifest
apps.uninstallUninstalls your app from a workspace.
assistant.threads.setStatusSet the status for an AI assistant thread.
assistant.threads.setSuggestedPromptsSet suggested prompts for the given assistant thread
assistant.threads.setTitleSet the title for the given assistant thread
auth.revokeRevokes a token.
auth.testChecks authentication & identity.
auth.teams.listObtain a full list of workspaces your org-wide app has been approved for.
bookmarks.addAdd bookmark to a channel.
bookmarks.editEdit bookmark.
bookmarks.listList bookmark for the channel.
bookmarks.removeRemove bookmark from the channel.
bots.infoGets information about a bot user.
calls.addRegisters a new Call.
calls.endEnds a Call.
calls.infoReturns information about a Call.
calls.updateUpdates information about a Call.
calls.participants.addRegisters new participants added to a Call.
calls.participants.removeRegisters participants removed from a Call.
canvases.access.deleteRemove access to a canvas for specified entities
canvases.access.setSets the access level to a canvas for specified entities
canvases.createCreate canvas for a user
canvases.deleteDeletes a canvas
canvases.editUpdate an existing canvas
canvases.sections.lookupFind sections matching the provided criteria
channels.markSets the read cursor in a channel.Deprecated
chat.deleteDeletes a message.
chat.deleteScheduledMessageDeletes a pending scheduled message from the queue.
chat.meMessageShare a me message into a channel.
chat.postEphemeralSends an ephemeral message to a user in a channel.
chat.postMessageSends a message to a channel.
chat.scheduleMessageSchedules a message to be sent to a channel.
chat.unfurlProvide custom unfurl behavior for user-posted URLs
chat.updateUpdates a message.
chat.scheduledMessages.listReturns a list of scheduled messages.
conversations.acceptSharedInviteAccepts an invitation to a Slack Connect channel.
conversations.approveSharedInviteApproves an invitation to a Slack Connect channel
conversations.archiveArchives a conversation.
conversations.closeCloses a direct message or multi-person direct message.
conversations.createInitiates a public or private channel-based conversation
conversations.declineSharedInviteDeclines a Slack Connect channel invite.
conversations.historyFetches a conversation's history of messages and events.
conversations.infoRetrieve information about a conversation.
conversations.inviteInvites users to a channel.
conversations.inviteSharedSends an invitation to a Slack Connect channel
conversations.joinJoins an existing conversation.
conversations.kickRemoves a user from a conversation.
conversations.leaveLeaves a conversation.
conversations.listLists all channels in a Slack team.
conversations.listConnectInvitesLists shared channel invites that have been generated or received but have not been approved by all parties
conversations.markSets the read cursor in a channel.
conversations.membersRetrieve members of a conversation.
conversations.openOpens or resumes a direct message or multi-person direct message.
conversations.renameRenames a conversation.
conversations.repliesRetrieve a thread of messages posted to a conversation
conversations.setPurposeSets the channel description.
conversations.setTopicSets the topic for a conversation.
conversations.unarchiveReverses conversation archival.
conversations.canvases.createCreate a channel canvas for a channel
conversations.externalInvitePermissions.setUpgrade or downgrade Slack Connect channel permissions between 'can post only' and 'can post and invite'.
conversations.requestSharedInvite.approveApproves a request to add an external user to a channel and sends them a Slack Connect invite
conversations.requestSharedInvite.denyDenies a request to invite an external user to a channel
conversations.requestSharedInvite.listLists requests to add external users to channels with ability to filter.
dialog.openOpen a dialog with a user
dnd.endDndEnds the current user's Do Not Disturb session immediately.
dnd.endSnoozeEnds the current user's snooze mode immediately.
dnd.infoRetrieves a user's current Do Not Disturb status.
dnd.setSnoozeTurns on Do Not Disturb mode for the current user, or changes its duration.
dnd.teamInfoRetrieves the Do Not Disturb status for up to 50 users on a team.
emoji.listLists custom emoji for a team.
files.comments.deleteDeletes an existing comment on a file.
files.completeUploadExternalFinishes an upload started with files.getUploadURLExternal
files.deleteDeletes a file.
files.getUploadURLExternalGets a URL for an edge external file upload
files.infoGets information about a file.
files.listList for a team, in a channel, or from a user with applied filters.
files.revokePublicURLRevokes public/external sharing access for a file
files.sharedPublicURLEnables a file for public/external sharing.
files.uploadUploads or creates a file.
files.remote.addAdds a file from a remote service
files.remote.infoRetrieve information about a remote file added to Slack
files.remote.listRetrieve information about a remote file added to Slack
files.remote.removeRemove a remote file.
files.remote.shareShare a remote file into a channel.
files.remote.updateUpdates an existing remote file.
functions.completeErrorSignal that a function failed to complete
functions.completeSuccessSignal the successful completion of a function
functions.distributions.permissions.addGrant users access to a custom slack function if its permission_type is set to named_entities
functions.distributions.permissions.listList the access type of a custom slack function and include the users with access if its permission_type is set to named_entities
functions.distributions.permissions.removeRevoke user access to a custom slack function if permission_type set to named_entities
functions.distributions.permissions.setSet the access type of a custom slack function and define the users to be granted access if permission_type is set to named_entities
functions.workflows.steps.listList the steps of a specific function of a workflow's versions
functions.workflows.steps.responses.exportDownload form responses of a workflow
groups.markSets the read cursor in a private channel.Deprecated
migration.exchangeFor Enterprise Grid workspaces, map local user IDs to global user IDs
oauth.accessExchanges a temporary OAuth verifier code for an access token.
oauth.v2.accessExchanges a temporary OAuth verifier code for an access token.
oauth.v2.exchangeExchanges a legacy access token for a new expiring access token and refresh token
openid.connect.tokenExchanges a temporary OAuth verifier code for an access token for Sign in with Slack.
openid.connect.userInfoGet the identity of a user who has authorized Sign in with Slack.
pins.addPins an item to a channel.
pins.listLists items pinned to a channel.
pins.removeUn-pins an item from a channel.
reactions.addAdds a reaction to an item.
reactions.getGets reactions for an item.
reactions.listLists reactions made by a user.
reactions.removeRemoves a reaction from an item.
reminders.addCreates a reminder.
reminders.completeMarks a reminder as complete.
reminders.deleteDeletes a reminder.
reminders.infoGets information about a reminder.
reminders.listLists all reminders created by or for a given user.
rtm.connectStarts a Real Time Messaging session.
rtm.startDeprecated: Starts a Real Time Messaging session. Use rtm.connect instead.
search.allSearches for messages and files matching a query.
search.filesSearches for files matching a query.
search.messagesSearches for messages matching a query.
stars.addSave an item for later. Formerly known as adding a star.
stars.listListed a user's saved items, formerly known as stars.
stars.removeRemoves a saved item (star) from an item.
team.accessLogsGets the access logs for the current team.
team.billableInfoGets billable users information for the current team.
team.infoGets information about the current team.
team.integrationLogsGets the integration logs for the current team.
team.billing.infoReads a workspace's billing plan information.
team.externalTeams.disconnectDisconnect an external organization.
team.externalTeams.listReturns a list of all the external teams connected and details about the connection.
team.preferences.listRetrieve a list of a workspace's team preferences.
team.profile.getRetrieve a team's profile.
tooling.tokens.rotateExchanges a refresh token for a new app configuration token.
usergroups.createCreate a User Group.
usergroups.disableDisable an existing User Group.
usergroups.enableEnable a User Group.
usergroups.listList all User Groups for a team.
usergroups.updateUpdate an existing User Group.
usergroups.users.listList all users in a User Group.
usergroups.users.updateUpdate the list of users for a user group.
users.conversationsList conversations the calling user may access.
users.deletePhotoDelete the user profile photo
users.getPresenceGets user presence information.
users.identityGet a user's identity.
users.infoGets information about a user.
users.listLists all users in a Slack team.
users.lookupByEmailFind a user with an email address.
users.setActiveMarked a user as active. Deprecated and non-functional.
users.setPhotoSet the user profile photo
users.setPresenceManually sets user presence.
users.discoverableContacts.lookupLook up an email address to see if someone is discoverable on Slack
users.profile.getRetrieve a user's profile information, including their custom status.
users.profile.setSet a user's profile information, including custom status.
views.openOpen a view for a user.
views.publishPublish a static view for a User.
views.pushPush a view onto the stack of a root view.
views.updateUpdate an existing view.
workflows.stepCompletedIndicate that an app's step in a workflow completed execution.
workflows.stepFailedIndicate that an app's step in a workflow failed to execute.
workflows.updateStepUpdate the configuration for a workflow step.
workflows.triggers.permissions.addAllows users to run a trigger that has its permission type set to named_entities
workflows.triggers.permissions.listReturns the permission type of a trigger and if applicable, includes the entities that have been granted access
workflows.triggers.permissions.removeRevoke an entity's access to a trigger that has its permission type set to named_entities
workflows.triggers.permissions.setSet the permission type for who can run a trigger
im.listLists direct message channels for the calling user.Deprecated
im.markSets the read cursor in a direct message channel.Deprecated
mpim.listLists multiparty direct message channels for the calling user.Deprecated
mpim.markSets the read cursor in a multiparty direct message channel.Deprecated

Usage guides

Easily access APIs with Bolt

Make API calls, and handle responses, with a couple of lines of code, using our Bolt framework.

Using the Web API

If you can't use Bolt, read our guide to hand-craft Web API usage into your app.