Slack · Capability
Slack Files API — Remote
Slack Files API — Remote. 6 operations. Lead operation: Slack Post Files Remote Add. Self-contained Naftiko capability covering one Slack business surface.
What You Can Do
POST
Postfilesremoteadd
— Slack Post Files Remote Add
/v1/files-remote-add
GET
Getfilesremoteinfo
— Slack Get Files Remote Info
/v1/files-remote-info
GET
Getfilesremotelist
— Slack Get Files Remote List
/v1/files-remote-list
POST
Postfilesremoteremove
— Slack Post Files Remote Remove
/v1/files-remote-remove
GET
Getfilesremoteshare
— Slack Get Files Remote Share
/v1/files-remote-share
POST
Postfilesremoteupdate
— Slack Post Files Remote Update
/v1/files-remote-update
MCP Tools
slack-post-files-remote-add
Slack Post Files Remote Add
slack-get-files-remote-info
Slack Get Files Remote Info
read-only
idempotent
slack-get-files-remote-list
Slack Get Files Remote List
read-only
idempotent
slack-post-files-remote-remove
Slack Post Files Remote Remove
slack-get-files-remote-share
Slack Get Files Remote Share
read-only
idempotent
slack-post-files-remote-update
Slack Post Files Remote Update
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Slack Files API — Remote
description: 'Slack Files API — Remote. 6 operations. Lead operation: Slack Post Files Remote Add. Self-contained Naftiko
capability covering one Slack business surface.'
tags:
- Slack
- Remote
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SLACK_API_KEY: SLACK_API_KEY
capability:
consumes:
- type: http
namespace: files-remote
baseUri: ''
description: Slack Files API — Remote business capability. Self-contained, no shared references.
resources:
- name: files.remote.add
path: /files.remote.add
operations:
- name: postfilesremoteadd
method: POST
description: Slack Post Files Remote Add
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: files.remote.info
path: /files.remote.info
operations:
- name: getfilesremoteinfo
method: GET
description: Slack Get Files Remote Info
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: query
type: string
description: 'Authentication token. Requires scope: `remote_files:read`'
- name: file
in: query
type: string
description: Specify a file by providing its ID.
- name: external_id
in: query
type: string
description: Creator defined GUID for the file.
- name: files.remote.list
path: /files.remote.list
operations:
- name: getfilesremotelist
method: GET
description: Slack Get Files Remote List
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: query
type: string
description: 'Authentication token. Requires scope: `remote_files:read`'
- name: channel
in: query
type: string
description: Filter files appearing in a specific channel, indicated by its ID.
- name: ts_from
in: query
type: number
description: Filter files created after this timestamp (inclusive).
- name: ts_to
in: query
type: number
description: Filter files created before this timestamp (inclusive).
- name: limit
in: query
type: integer
description: The maximum number of items to return.
- name: cursor
in: query
type: string
description: Paginate through collections of data by setting the `cursor` parameter to a `next_cursor` attribute
returned by a previous request's `response_metadata`. Defaul
- name: files.remote.remove
path: /files.remote.remove
operations:
- name: postfilesremoteremove
method: POST
description: Slack Post Files Remote Remove
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: files.remote.share
path: /files.remote.share
operations:
- name: getfilesremoteshare
method: GET
description: Slack Get Files Remote Share
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: token
in: query
type: string
description: 'Authentication token. Requires scope: `remote_files:share`'
- name: file
in: query
type: string
description: Specify a file registered with Slack by providing its ID. Either this field or `external_id` or both
are required.
- name: external_id
in: query
type: string
description: The globally unique identifier (GUID) for the file, as set by the app registering the file with Slack. Either
this field or `file` or both are required.
- name: channels
in: query
type: string
description: Comma-separated list of channel IDs where the file will be shared.
- name: files.remote.update
path: /files.remote.update
operations:
- name: postfilesremoteupdate
method: POST
description: Slack Post Files Remote Update
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: false
exposes:
- type: rest
namespace: files-remote-rest
port: 8080
description: REST adapter for Slack Files API — Remote. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/files-remote-add
name: files-remote-add
description: REST surface for files.remote.add.
operations:
- method: POST
name: postfilesremoteadd
description: Slack Post Files Remote Add
call: files-remote.postfilesremoteadd
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/files-remote-info
name: files-remote-info
description: REST surface for files.remote.info.
operations:
- method: GET
name: getfilesremoteinfo
description: Slack Get Files Remote Info
call: files-remote.getfilesremoteinfo
with:
token: rest.token
file: rest.file
external_id: rest.external_id
outputParameters:
- type: object
mapping: $.
- path: /v1/files-remote-list
name: files-remote-list
description: REST surface for files.remote.list.
operations:
- method: GET
name: getfilesremotelist
description: Slack Get Files Remote List
call: files-remote.getfilesremotelist
with:
token: rest.token
channel: rest.channel
ts_from: rest.ts_from
ts_to: rest.ts_to
limit: rest.limit
cursor: rest.cursor
outputParameters:
- type: object
mapping: $.
- path: /v1/files-remote-remove
name: files-remote-remove
description: REST surface for files.remote.remove.
operations:
- method: POST
name: postfilesremoteremove
description: Slack Post Files Remote Remove
call: files-remote.postfilesremoteremove
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/files-remote-share
name: files-remote-share
description: REST surface for files.remote.share.
operations:
- method: GET
name: getfilesremoteshare
description: Slack Get Files Remote Share
call: files-remote.getfilesremoteshare
with:
token: rest.token
file: rest.file
external_id: rest.external_id
channels: rest.channels
outputParameters:
- type: object
mapping: $.
- path: /v1/files-remote-update
name: files-remote-update
description: REST surface for files.remote.update.
operations:
- method: POST
name: postfilesremoteupdate
description: Slack Post Files Remote Update
call: files-remote.postfilesremoteupdate
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: files-remote-mcp
port: 9090
transport: http
description: MCP adapter for Slack Files API — Remote. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: slack-post-files-remote-add
description: Slack Post Files Remote Add
hints:
readOnly: false
destructive: false
idempotent: false
call: files-remote.postfilesremoteadd
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: slack-get-files-remote-info
description: Slack Get Files Remote Info
hints:
readOnly: true
destructive: false
idempotent: true
call: files-remote.getfilesremoteinfo
with:
token: tools.token
file: tools.file
external_id: tools.external_id
outputParameters:
- type: object
mapping: $.
- name: slack-get-files-remote-list
description: Slack Get Files Remote List
hints:
readOnly: true
destructive: false
idempotent: true
call: files-remote.getfilesremotelist
with:
token: tools.token
channel: tools.channel
ts_from: tools.ts_from
ts_to: tools.ts_to
limit: tools.limit
cursor: tools.cursor
outputParameters:
- type: object
mapping: $.
- name: slack-post-files-remote-remove
description: Slack Post Files Remote Remove
hints:
readOnly: false
destructive: false
idempotent: false
call: files-remote.postfilesremoteremove
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: slack-get-files-remote-share
description: Slack Get Files Remote Share
hints:
readOnly: true
destructive: false
idempotent: true
call: files-remote.getfilesremoteshare
with:
token: tools.token
file: tools.file
external_id: tools.external_id
channels: tools.channels
outputParameters:
- type: object
mapping: $.
- name: slack-post-files-remote-update
description: Slack Post Files Remote Update
hints:
readOnly: false
destructive: false
idempotent: false
call: files-remote.postfilesremoteupdate
with:
body: tools.body
outputParameters:
- type: object
mapping: $.