Slack · Schema

File

A Slack file object representing an uploaded file with its metadata and sharing information.

BotsChatCollaborationMessagingProductivityT1Team Communication

Properties

Name Type Description
id string Unique file identifier.
created integer Unix timestamp of when the file was created.
timestamp integer Unix timestamp.
name string The file name.
title string Title of the file.
mimetype string MIME type of the file.
filetype string Slack file type identifier (e.g., "png", "pdf", "snippet").
pretty_type string Human-readable file type.
user string User ID of the user who uploaded the file.
user_team string Team ID of the user who uploaded the file.
editable boolean Whether the file content is editable.
size integer File size in bytes.
mode string File mode (e.g., "hosted", "external", "snippet", "post").
is_external boolean Whether the file is externally hosted.
external_type string Type of external file.
is_public boolean Whether the file is public.
public_url_shared boolean
display_as_bot boolean
username string
url_private string URL to access the file. Requires authentication.
url_private_download string URL to download the file. Requires authentication.
permalink string Permalink URL for the file.
permalink_public string Public permalink URL for the file (if shared publicly).
channels array Array of channel IDs where the file is shared.
groups array Array of private channel IDs where the file is shared.
ims array Array of DM IDs where the file is shared.
shares object Sharing information broken down by type.
comments_count integer Number of comments on the file.
View JSON Schema on GitHub

JSON Schema

slack-web-file-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "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."
    },
    "created": {
      "type": "integer",
      "description": "Unix timestamp of when the file was created."
    },
    "timestamp": {
      "type": "integer",
      "description": "Unix timestamp."
    },
    "name": {
      "type": "string",
      "description": "The file name."
    },
    "title": {
      "type": "string",
      "description": "Title of the file."
    },
    "mimetype": {
      "type": "string",
      "description": "MIME type of the file."
    },
    "filetype": {
      "type": "string",
      "description": "Slack file type identifier (e.g., \"png\", \"pdf\", \"snippet\")."
    },
    "pretty_type": {
      "type": "string",
      "description": "Human-readable file type."
    },
    "user": {
      "type": "string",
      "description": "User ID of the user who uploaded the file."
    },
    "user_team": {
      "type": "string",
      "description": "Team ID of the user who uploaded the file."
    },
    "editable": {
      "type": "boolean",
      "description": "Whether the file content is editable."
    },
    "size": {
      "type": "integer",
      "description": "File size in bytes."
    },
    "mode": {
      "type": "string",
      "description": "File mode (e.g., \"hosted\", \"external\", \"snippet\", \"post\")."
    },
    "is_external": {
      "type": "boolean",
      "description": "Whether the file is externally hosted."
    },
    "external_type": {
      "type": "string",
      "description": "Type of external file."
    },
    "is_public": {
      "type": "boolean",
      "description": "Whether the file is public."
    },
    "public_url_shared": {
      "type": "boolean"
    },
    "display_as_bot": {
      "type": "boolean"
    },
    "username": {
      "type": "string"
    },
    "url_private": {
      "type": "string",
      "description": "URL to access the file. Requires authentication."
    },
    "url_private_download": {
      "type": "string",
      "description": "URL to download the file. Requires authentication."
    },
    "permalink": {
      "type": "string",
      "description": "Permalink URL for the file."
    },
    "permalink_public": {
      "type": "string",
      "description": "Public permalink URL for the file (if shared publicly)."
    },
    "channels": {
      "type": "array",
      "description": "Array of channel IDs where the file is shared."
    },
    "groups": {
      "type": "array",
      "description": "Array of private channel IDs where the file is shared."
    },
    "ims": {
      "type": "array",
      "description": "Array of DM IDs where the file is shared."
    },
    "shares": {
      "type": "object",
      "description": "Sharing information broken down by type."
    },
    "comments_count": {
      "type": "integer",
      "description": "Number of comments on the file."
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/slack-web-file"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.