Slack · Capability
Slack Reactions API — Reactions
Slack Reactions API — Reactions. 4 operations. Lead operation: Slack Post Reactions Add. Self-contained Naftiko capability covering one Slack business surface.
What You Can Do
POST
Postreactionsadd
— Slack Post Reactions Add
/v1/reactions-add
GET
Getreactionsget
— Slack Get Reactions Get
/v1/reactions-get
GET
Getreactionslist
— Slack Get Reactions List
/v1/reactions-list
POST
Postreactionsremove
— Slack Post Reactions Remove
/v1/reactions-remove
MCP Tools
slack-post-reactions-add
Slack Post Reactions Add
slack-get-reactions-get
Slack Get Reactions Get
read-only
idempotent
slack-get-reactions-list
Slack Get Reactions List
read-only
idempotent
slack-post-reactions-remove
Slack Post Reactions Remove
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Slack Reactions API — Reactions
description: 'Slack Reactions API — Reactions. 4 operations. Lead operation: Slack Post Reactions Add. Self-contained Naftiko
capability covering one Slack business surface.'
tags:
- Slack
- Reactions
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SLACK_API_KEY: SLACK_API_KEY
capability:
consumes:
- type: http
namespace: reactions-reactions
baseUri: ''
description: Slack Reactions API — Reactions business capability. Self-contained, no shared references.
resources:
- name: reactions.add
path: /reactions.add
operations:
- name: postreactionsadd
method: POST
description: Slack Post Reactions Add
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: header
type: string
description: 'Authentication token. Requires scope: `reactions:write`'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: reactions.get
path: /reactions.get
operations:
- name: getreactionsget
method: GET
description: Slack Get Reactions Get
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: query
type: string
description: 'Authentication token. Requires scope: `reactions:read`'
required: true
- name: channel
in: query
type: string
description: Channel where the message to get reactions for was posted.
- name: file
in: query
type: string
description: File to get reactions for.
- name: file_comment
in: query
type: string
description: File comment to get reactions for.
- name: full
in: query
type: boolean
description: If true always return the complete reaction list.
- name: timestamp
in: query
type: string
description: Timestamp of the message to get reactions for.
- name: reactions.list
path: /reactions.list
operations:
- name: getreactionslist
method: GET
description: Slack Get Reactions List
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: query
type: string
description: 'Authentication token. Requires scope: `reactions:read`'
required: true
- name: user
in: query
type: string
description: Show reactions made by this user. Defaults to the authed user.
- name: full
in: query
type: boolean
description: If true always return the complete reaction list.
- name: count
in: query
type: integer
- name: page
in: query
type: integer
- name: cursor
in: query
type: string
description: 'Parameter for pagination. Set `cursor` equal to the `next_cursor` attribute returned by the previous
request''s `response_metadata`. This parameter is optional, '
- name: limit
in: query
type: integer
description: The maximum number of items to return. Fewer than the requested number of items may be returned, even
if the end of the list hasn't been reached.
- name: reactions.remove
path: /reactions.remove
operations:
- name: postreactionsremove
method: POST
description: Slack Post Reactions Remove
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: header
type: string
description: 'Authentication token. Requires scope: `reactions:write`'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
exposes:
- type: rest
namespace: reactions-reactions-rest
port: 8080
description: REST adapter for Slack Reactions API — Reactions. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/reactions-add
name: reactions-add
description: REST surface for reactions.add.
operations:
- method: POST
name: postreactionsadd
description: Slack Post Reactions Add
call: reactions-reactions.postreactionsadd
with:
token: rest.token
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/reactions-get
name: reactions-get
description: REST surface for reactions.get.
operations:
- method: GET
name: getreactionsget
description: Slack Get Reactions Get
call: reactions-reactions.getreactionsget
with:
token: rest.token
channel: rest.channel
file: rest.file
file_comment: rest.file_comment
full: rest.full
timestamp: rest.timestamp
outputParameters:
- type: object
mapping: $.
- path: /v1/reactions-list
name: reactions-list
description: REST surface for reactions.list.
operations:
- method: GET
name: getreactionslist
description: Slack Get Reactions List
call: reactions-reactions.getreactionslist
with:
token: rest.token
user: rest.user
full: rest.full
count: rest.count
page: rest.page
cursor: rest.cursor
limit: rest.limit
outputParameters:
- type: object
mapping: $.
- path: /v1/reactions-remove
name: reactions-remove
description: REST surface for reactions.remove.
operations:
- method: POST
name: postreactionsremove
description: Slack Post Reactions Remove
call: reactions-reactions.postreactionsremove
with:
token: rest.token
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: reactions-reactions-mcp
port: 9090
transport: http
description: MCP adapter for Slack Reactions API — Reactions. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: slack-post-reactions-add
description: Slack Post Reactions Add
hints:
readOnly: false
destructive: false
idempotent: false
call: reactions-reactions.postreactionsadd
with:
token: tools.token
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: slack-get-reactions-get
description: Slack Get Reactions Get
hints:
readOnly: true
destructive: false
idempotent: true
call: reactions-reactions.getreactionsget
with:
token: tools.token
channel: tools.channel
file: tools.file
file_comment: tools.file_comment
full: tools.full
timestamp: tools.timestamp
outputParameters:
- type: object
mapping: $.
- name: slack-get-reactions-list
description: Slack Get Reactions List
hints:
readOnly: true
destructive: false
idempotent: true
call: reactions-reactions.getreactionslist
with:
token: tools.token
user: tools.user
full: tools.full
count: tools.count
page: tools.page
cursor: tools.cursor
limit: tools.limit
outputParameters:
- type: object
mapping: $.
- name: slack-post-reactions-remove
description: Slack Post Reactions Remove
hints:
readOnly: false
destructive: false
idempotent: false
call: reactions-reactions.postreactionsremove
with:
token: tools.token
body: tools.body
outputParameters:
- type: object
mapping: $.