Slack Web API
  1. search
Slack Web API
  • admin.apps
    • /admin.apps.approve
      POST
    • /admin.apps.restrict
      POST
  • admin.apps.approved
    • /admin.apps.approved.list
      GET
  • admin.apps.requests
    • /admin.apps.requests.list
      GET
  • admin.apps.restricted
    • /admin.apps.restricted.list
      GET
  • admin.conversations
    • /admin.conversations.archive
      POST
    • /admin.conversations.convertToPrivate
      POST
    • /admin.conversations.create
      POST
    • /admin.conversations.delete
      POST
    • /admin.conversations.disconnectShared
      POST
    • /admin.conversations.getConversationPrefs
      GET
    • /admin.conversations.getTeams
      GET
    • /admin.conversations.invite
      POST
    • /admin.conversations.rename
      POST
    • /admin.conversations.search
      GET
    • /admin.conversations.setConversationPrefs
      POST
    • /admin.conversations.setTeams
      POST
    • /admin.conversations.unarchive
      POST
  • admin.conversations.ekm
    • /admin.conversations.ekm.listOriginalConnectedChannelInfo
      GET
  • admin.conversations.restrictAccess
    • /admin.conversations.restrictAccess.addGroup
      POST
    • /admin.conversations.restrictAccess.listGroups
      GET
    • /admin.conversations.restrictAccess.removeGroup
      POST
  • admin.emoji
    • /admin.emoji.add
    • /admin.emoji.addAlias
    • /admin.emoji.list
    • /admin.emoji.remove
    • /admin.emoji.rename
  • admin.inviteRequests
    • /admin.inviteRequests.approve
    • /admin.inviteRequests.deny
    • /admin.inviteRequests.list
  • admin.inviteRequests.approved
    • /admin.inviteRequests.approved.list
  • admin.inviteRequests.denied
    • /admin.inviteRequests.denied.list
  • admin.teams.admins
    • /admin.teams.admins.list
  • admin.teams
    • /admin.teams.create
    • /admin.teams.list
  • admin.teams.owners
    • /admin.teams.owners.list
  • admin.teams.settings
    • /admin.teams.settings.info
    • /admin.teams.settings.setDefaultChannels
    • /admin.teams.settings.setDescription
    • /admin.teams.settings.setDiscoverability
    • /admin.teams.settings.setIcon
    • /admin.teams.settings.setName
  • admin.usergroups
    • /admin.usergroups.addChannels
    • /admin.usergroups.addTeams
    • /admin.usergroups.listChannels
    • /admin.usergroups.removeChannels
  • admin.users
    • /admin.users.assign
    • /admin.users.invite
    • /admin.users.list
    • /admin.users.remove
    • /admin.users.setAdmin
    • /admin.users.setExpiration
    • /admin.users.setOwner
    • /admin.users.setRegular
  • admin.users.session
    • /admin.users.session.invalidate
    • /admin.users.session.reset
  • api
    • /api.test
  • apps.event.authorizations
    • /apps.event.authorizations.list
  • apps.permissions
    • /apps.permissions.info
    • /apps.permissions.request
  • apps.permissions.resources
    • /apps.permissions.resources.list
  • apps.permissions.scopes
    • /apps.permissions.scopes.list
  • apps.permissions.users
    • /apps.permissions.users.list
    • /apps.permissions.users.request
  • apps
    • /apps.uninstall
  • auth
    • /auth.revoke
    • /auth.test
  • bots
    • /bots.info
  • calls
    • /calls.add
    • /calls.end
    • /calls.info
    • /calls.update
  • calls.participants
    • /calls.participants.add
    • /calls.participants.remove
  • chat
    • /chat.delete
    • /chat.deleteScheduledMessage
    • /chat.getPermalink
    • /chat.meMessage
    • /chat.postEphemeral
    • /chat.postMessage
    • /chat.scheduleMessage
    • /chat.unfurl
    • /chat.update
  • chat.scheduledMessages
    • /chat.scheduledMessages.list
  • conversations
    • /conversations.archive
    • /conversations.close
    • /conversations.create
    • /conversations.history
    • /conversations.info
    • /conversations.invite
    • /conversations.join
    • /conversations.kick
    • /conversations.leave
    • /conversations.list
    • /conversations.mark
    • /conversations.members
    • /conversations.open
    • /conversations.rename
    • /conversations.replies
    • /conversations.setPurpose
    • /conversations.setTopic
    • /conversations.unarchive
  • dialog
    • /dialog.open
  • dnd
    • /dnd.endDnd
    • /dnd.endSnooze
    • /dnd.info
    • /dnd.setSnooze
    • /dnd.teamInfo
  • emoji
    • /emoji.list
  • files.comments
    • /files.comments.delete
  • files
    • /files.delete
    • /files.info
    • /files.list
    • /files.revokePublicURL
    • /files.sharedPublicURL
    • /files.upload
  • files.remote
    • /files.remote.add
    • /files.remote.info
    • /files.remote.list
    • /files.remote.remove
    • /files.remote.share
    • /files.remote.update
  • migration
    • /migration.exchange
  • oauth
    • /oauth.access
    • /oauth.token
  • oauth.v2
    • /oauth.v2.access
  • pins
    • /pins.add
    • /pins.list
    • /pins.remove
  • reactions
    • /reactions.add
    • /reactions.get
    • /reactions.list
    • /reactions.remove
  • reminders
    • /reminders.add
    • /reminders.complete
    • /reminders.delete
    • /reminders.info
    • /reminders.list
  • rtm
    • /rtm.connect
  • search
    • /search.messages
      GET
  • stars
    • /stars.add
    • /stars.list
    • /stars.remove
  • team
    • /team.accessLogs
    • /team.billableInfo
    • /team.info
    • /team.integrationLogs
  • team.profile
    • /team.profile.get
  • usergroups
    • /usergroups.create
    • /usergroups.disable
    • /usergroups.enable
    • /usergroups.list
    • /usergroups.update
  • usergroups.users
    • /usergroups.users.list
    • /usergroups.users.update
  • users
    • /users.conversations
    • /users.deletePhoto
    • /users.getPresence
    • /users.identity
    • /users.info
    • /users.list
    • /users.lookupByEmail
    • /users.setActive
    • /users.setPhoto
    • /users.setPresence
  • users.profile
    • /users.profile.get
    • /users.profile.set
  • views
    • /views.open
    • /views.publish
    • /views.push
    • /views.update
  • workflows
    • /workflows.stepCompleted
    • /workflows.stepFailed
    • /workflows.updateStep
  1. search

/search.messages

GET
/search.messages
search
Searches for messages matching a query.
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request GET 'https://slack.com/api/search.messages?token=&query='
Response Response Example
200 - response
{
  "messages": {
    "matches": [
      {
        "channel": {
          "id": "C12345678",
          "is_ext_shared": false,
          "is_mpim": false,
          "is_org_shared": false,
          "is_pending_ext_shared": false,
          "is_private": false,
          "is_shared": false,
          "name": "general",
          "pending_shared": []
        },
        "iid": "cb64bdaa-c1e8-4631-8a91-0f78080113e9",
        "permalink": "https://hitchhikers.slack.com/archives/C12345678/p1508284197000015",
        "team": "T12345678",
        "text": "The meaning of life the universe and everything is 42.",
        "ts": "1508284197.000015",
        "type": "message",
        "user": "U2U85N1RV",
        "username": "roach"
      },
      {
        "channel": {
          "id": "C12345678",
          "is_ext_shared": false,
          "is_mpim": false,
          "is_org_shared": false,
          "is_pending_ext_shared": false,
          "is_private": false,
          "is_shared": false,
          "name": "random",
          "pending_shared": []
        },
        "iid": "9a00d3c9-bd2d-45b0-988b-6cff99ae2a90",
        "permalink": "https://hitchhikers.slack.com/archives/C12345678/p1508795665000236",
        "team": "T12345678",
        "text": "The meaning of life the universe and everything is 101010",
        "ts": "1508795665.000236",
        "type": "message",
        "user": "",
        "username": "robot overlord"
      }
    ],
    "pagination": {
      "first": 1,
      "last": 2,
      "page": 1,
      "page_count": 1,
      "per_page": 20,
      "total_count": 2
    },
    "paging": {
      "count": 20,
      "page": 1,
      "pages": 1,
      "total": 2
    },
    "total": 2
  },
  "ok": true,
  "query": "The meaning of life the universe and everything"
}

Request

Query Params
token
string 
required
Authentication token. Requires scope: search:read
count
integer 
optional
Pass the number of results you want per "page". Maximum of 100.
highlight
string 
optional
Pass a value of true to enable query highlight markers (see below).
page
integer 
optional
query
string 
required
Search query.
sort
string 
optional
Return matches sorted by either score or timestamp.
sort_dir
string 
optional
Change sort direction to ascending (asc) or descending (desc).

Responses

🟢200Typical success response
application/json
Body
This method either only returns a brief _OK_ response or a verbose schema is not available for this method.
ok
enum<boolean> 
required
Allowed value:
true
Additional properties
integer  | number  | string  | boolean 
optional
🔴500Typical error response
Previous
/rtm.connect
Next
/stars.add
Built with