Slack Reactions API

The Reactions API from Slack — 4 operation(s) for reactions.

Operations 4

POST /reactions.add Slack Add an Emoji Reaction #
POST /reactions.remove Slack Remove an Emoji Reaction #
GET /reactions.get Slack Get Reactions for an Item #
GET /reactions.list Slack List Reactions Made by a User #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/slack-reactions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

slack-reactions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Slack Web Reactions API
  description: The Slack Web API is an HTTP-based interface that provides access to all of Slack's platform features. It consists of over 200 methods organized by functional area (chat, conversations, users, files, admin, and more) that apps call over HTTPS with JSON payloads and receive JSON responses. All methods require authentication via OAuth tokens (bot or user) with granular permission scopes, and are subject to tiered rate limits. The Web API supports cursor-based pagination for large result sets and provides consistent error handling across all endpoints.
  version: 1.0.0
  termsOfService: https://slack.com/terms-of-service/api
  contact:
    name: Slack Developer Support
    url: https://docs.slack.dev
  license:
    name: Slack API Terms of Service
    url: https://slack.com/terms-of-service/api
servers:
- url: https://slack.com/api
  description: Slack Web API production server
security:
- bearerAuth: []
tags:
- name: Reactions
  description: Add and manage emoji reactions
paths:
  /reactions.add:
    post:
      tags:
      - Reactions
      summary: Slack Add an Emoji Reaction
      description: Adds a reaction (emoji) to a message, file, or file comment. Requires reactions:write scope.
      operationId: reactionsAdd
      externalDocs:
        description: API method documentation
        url: https://docs.slack.dev/reference/methods/reactions.add
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - channel
              - name
              - timestamp
              properties:
                channel:
                  type: string
                  description: Channel where the message to add reaction to was posted.
                name:
                  type: string
                  description: Reaction (emoji) name without colons.
                timestamp:
                  type: string
                  description: Timestamp of the message to add reaction to.
      responses:
        '200':
          description: Reaction added
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /reactions.remove:
    post:
      tags:
      - Reactions
      summary: Slack Remove an Emoji Reaction
      description: Removes a reaction (emoji) from an item.
      operationId: reactionsRemove
      externalDocs:
        description: API method documentation
        url: https://docs.slack.dev/reference/methods/reactions.remove
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              properties:
                channel:
                  type: string
                name:
                  type: string
                  description: Reaction (emoji) name without colons.
                timestamp:
                  type: string
                file:
                  type: string
                file_comment:
                  type: string
      responses:
        '200':
          description: Reaction removed
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /reactions.get:
    get:
      tags:
      - Reactions
      summary: Slack Get Reactions for an Item
      description: Gets reactions for an item (message, file, or file comment).
      operationId: reactionsGet
      externalDocs:
        description: API method documentation
        url: https://docs.slack.dev/reference/methods/reactions.get
      parameters:
      - name: channel
        in: query
        description: Channel where the message to get reactions for was posted.
        schema:
          type: string
      - name: file
        in: query
        description: File to get reactions for.
        schema:
          type: string
      - name: file_comment
        in: query
        description: File comment to get reactions for.
        schema:
          type: string
      - name: full
        in: query
        description: If true, return complete reaction list.
        schema:
          type: boolean
      - name: timestamp
        in: query
        description: Timestamp of the message to get reactions for.
        schema:
          type: string
      responses:
        '200':
          description: Reactions retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  type:
                    type: string
                  message:
                    $ref: '#/components/schemas/Message'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /reactions.list:
    get:
      tags:
      - Reactions
      summary: Slack List Reactions Made by a User
      description: Lists reactions made by a user. Paginated with cursor-based pagination.
      operationId: reactionsList
      externalDocs:
        description: API method documentation
        url: https://docs.slack.dev/reference/methods/reactions.list
      parameters:
      - name: count
        in: query
        schema:
          type: integer
          default: 100
      - name: cursor
        in: query
        schema:
          type: string
      - name: full
        in: query
        schema:
          type: boolean
      - name: limit
        in: query
        schema:
          type: integer
          default: 100
      - name: page
        in: query
        schema:
          type: integer
          default: 1
      - name: user
        in: query
        description: Show reactions made by this user.
        schema:
          type: string
      responses:
        '200':
          description: Reactions listed
          content:
            application/json:
              schema:
                type: object
                properties:
                  ok:
                    type: boolean
                  items:
                    type: array
                    items:
                      type: object
                  response_metadata:
                    $ref: '#/components/schemas/ResponseMetadata'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    File:
      type: object
      description: A Slack file object representing an uploaded file with its metadata and sharing information.
      properties:
        id:
          type: string
          description: Unique file identifier.
          example: abc123
        created:
          type: integer
          description: Unix timestamp of when the file was created.
          example: 10
        timestamp:
          type: integer
          description: Unix timestamp.
          example: 10
        name:
          type: string
          description: The file name.
          example: Example Title
        title:
          type: string
          description: Title of the file.
          example: Example Title
        mimetype:
          type: string
          description: MIME type of the file.
          example: example_value
        filetype:
          type: string
          description: Slack file type identifier (e.g., "png", "pdf", "snippet").
          example: example_value
        pretty_type:
          type: string
          description: Human-readable file type.
          example: example_value
        user:
          type: string
          description: User ID of the user who uploaded the file.
          example: example_value
        user_team:
          type: string
          description: Team ID of the user who uploaded the file.
          example: example_value
        editable:
          type: boolean
          description: Whether the file content is editable.
          example: true
        size:
          type: integer
          description: File size in bytes.
          example: 10
        mode:
          type: string
          description: File mode (e.g., "hosted", "external", "snippet", "post").
          example: example_value
        is_external:
          type: boolean
          description: Whether the file is externally hosted.
          example: true
        external_type:
          type: string
          description: Type of external file.
          example: example_value
        is_public:
          type: boolean
          description: Whether the file is public.
          example: true
        public_url_shared:
          type: boolean
          example: https://www.example.com
        display_as_bot:
          type: boolean
          example: true
        username:
          type: string
          example: example_value
        url_private:
          type: string
          format: uri
          description: URL to access the file. Requires authentication.
          example: https://www.example.com
        url_private_download:
          type: string
          format: uri
          description: URL to download the file. Requires authentication.
          example: https://www.example.com
        permalink:
          type: string
          format: uri
          description: Permalink URL for the file.
          example: https://www.example.com
        permalink_public:
          type: string
          format: uri
          description: Public permalink URL for the file (if shared publicly).
          example: https://www.example.com
        channels:
          type: array
          description: Array of channel IDs where the file is shared.
          items:
            type: string
          example: []
        groups:
          type: array
          description: Array of private channel IDs where the file is shared.
          items:
            type: string
          example: []
        ims:
          type: array
          description: Array of DM IDs where the file is shared.
          items:
            type: string
          example: []
        shares:
          type: object
          description: Sharing information broken down by type.
          example: example_value
        comments_count:
          type: integer
          description: Number of comments on the file.
          example: 10
    Message:
      type: object
      description: A Slack message object representing a single message in a conversation. Messages can contain text, blocks, attachments, files, and reactions.
      properties:
        type:
          type: string
          description: Always "message" for messages.
          const: message
          example: example_value
        subtype:
          type: string
          description: Optional subtype indicating a specialized message type such as bot_message, channel_join, channel_leave, etc.
          example: example_value
        channel:
          type: string
          description: The channel ID where the message was posted.
          example: example_value
        user:
          type: string
          description: The user ID of the message author.
          example: example_value
        text:
          type: string
          description: The text content of the message.
          example: example_value
        ts:
          type: string
          description: Unique timestamp identifier for the message, also serves as the message ID. Format is Unix epoch with microseconds (e.g., "1503435956.000247").
          example: example_value
        thread_ts:
          type: string
          description: The timestamp of the parent message in a thread. Present only for threaded replies.
          example: example_value
        reply_count:
          type: integer
          description: Number of replies in the thread.
          example: 10
        reply_users_count:
          type: integer
          description: Number of unique users who have replied in the thread.
          example: 10
        latest_reply:
          type: string
          description: Timestamp of the most recent reply in the thread.
          example: example_value
        reply_users:
          type: array
          description: Array of user IDs who have replied in the thread.
          items:
            type: string
          example: []
        blocks:
          type: array
          description: An array of Block Kit layout blocks used for rich message formatting.
          items:
            type: object
          example: []
        attachments:
          type: array
          description: An array of message attachments.
          items:
            type: object
            properties:
              id:
                type: integer
              color:
                type: string
              fallback:
                type: string
              text:
                type: string
              pretext:
                type: string
              author_name:
                type: string
              author_link:
                type: string
                format: uri
              author_icon:
                type: string
                format: uri
              title:
                type: string
              title_link:
                type: string
                format: uri
              fields:
                type: array
                items:
                  type: object
                  properties:
                    title:
                      type: string
                    value:
                      type: string
                    short:
                      type: boolean
              footer:
                type: string
              footer_icon:
                type: string
                format: uri
              ts:
                type: integer
          example: []
        files:
          type: array
          description: An array of file objects attached to the message.
          items:
            $ref: '#/components/schemas/File'
          example: []
        reactions:
          type: array
          description: An array of emoji reactions on this message.
          items:
            type: object
            properties:
              name:
                type: string
                description: Emoji name without colons.
              count:
                type: integer
                description: Number of users who added this reaction.
              users:
                type: array
                description: User IDs of users who added this reaction.
                items:
                  type: string
          example: []
        edited:
          type: object
          description: Edit information if the message was edited.
          properties:
            user:
              type: string
            ts:
              type: string
          example: example_value
        bot_id:
          type: string
          description: Bot ID if the message was posted by a bot.
          example: '500123'
        bot_profile:
          type: object
          description: Bot profile information if posted by a bot.
          properties:
            id:
              type: string
            deleted:
              type: boolean
            name:
              type: string
            updated:
              type: integer
            app_id:
              type: string
            icons:
              type: object
          example: example_value
        metadata:
          type: object
          description: Custom metadata attached to the message by an application.
          properties:
            event_type:
              type: string
            event_payload:
              type: object
          example: example_value
        permalink:
          type: string
          format: uri
          description: Permalink URL for the message.
          example: https://www.example.com
    ResponseMetadata:
      type: object
      description: Metadata for paginated responses containing cursor information.
      properties:
        next_cursor:
          type: string
          description: An opaque cursor to use in the next request to get the next page of results. Empty string indicates no more results.
          example: example_value
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Slack API uses Bearer token authentication. Pass a bot token or user token in the Authorization header.