Skip to Content
Unified docs shell with shared Classifyre tokens and acid-green highlight accents.
SourcesSlack

Slack

Schema-driven source documentation.

SLACK35 fields3 examples
Commonly Asked Questions
Assistant knowledge mapped to this source type from assistant_knowledge.json.

Required
Fields required for a valid configuration payload under `config.required`.
PathTypeRequiredDescriptionDefaultConstraints
requiredobjectYesno extra properties
required.workspacestringNoSlack workspace name or domain (for display and stable IDs)
Masked
Sensitive fields under `config.masked` (secrets/credentials).
PathTypeRequiredDescriptionDefaultConstraints
maskedobjectYes
Optional
Optional configuration fields under `config.optional`.
PathTypeRequiredDescriptionDefaultConstraints
optionalobjectNono extra properties
optional.channelsobjectNoChannel discovery and targeting controls.no extra properties
optional.channels.channel_idsarrayNoExplicit channel IDs to scan. If provided, channel_types is ignored.
optional.channels.channel_ids[]stringNo
optional.channels.channel_typesarrayNoSlack conversation types to include when listing channels["public_channel"]
optional.channels.channel_types[]enumNoSlack conversation types to include Allowed values: public_channel, private_channel, mpim, im
optional.channels.exclude_archivedbooleanNoExclude archived channels when listingtrue
optional.ingestionobjectNoThroughput and payload controls for Slack ingestion.no extra properties
optional.ingestion.batch_sizeintegerNoMessages per API call (max 200)200min 1, max 200
optional.ingestion.include_thread_repliesbooleanNoInclude thread replies in fetched content for detectorsfalse
optional.ingestion.rate_limit_delay_secondsnumberNoDelay between API calls to avoid rate limits1min 0
optional.time_rangeobjectNoTime window filters for message ingestion.no extra properties
optional.time_range.lateststringNoEnd of date range (Slack timestamp or ISO 8601)
optional.time_range.oldeststringNoStart of date range (Slack timestamp or ISO 8601)
Examples
Reference payloads generated from shared source examples JSON.
Extract public channels with bot token
Fetch messages from all public channels using a bot token

Schedule

{
  "enabled": true,
  "preset": "weekday_morning",
  "cron": "45 7 * * 1-5",
  "timezone": "UTC"
}

Config Payload

{
  "type": "SLACK",
  "required": {
    "workspace": "acme"
  },
  "masked": {
    "bot_token": "xoxb-your-bot-token"
  },
  "optional": {
    "channels": {
      "channel_types": [
        "public_channel"
      ],
      "exclude_archived": true
    },
    "ingestion": {
      "rate_limit_delay_seconds": 1
    }
  },
  "sampling": {
    "strategy": "LATEST",
    "limit": 500
  }
}
Extract private channels and DMs with user token
Fetch messages from private channels and DMs using a user token

Schedule

{
  "enabled": true,
  "preset": "weekday_morning",
  "cron": "18 6 * * 1-5",
  "timezone": "UTC"
}

Config Payload

{
  "type": "SLACK",
  "required": {
    "workspace": "acme"
  },
  "masked": {
    "user_token": "xoxp-your-user-token"
  },
  "optional": {
    "channels": {
      "channel_types": [
        "private_channel",
        "mpim",
        "im"
      ],
      "exclude_archived": true
    }
  },
  "sampling": {
    "strategy": "LATEST",
    "limit": 200
  }
}
Extract specific channels in a date range
Fetch messages for specific channels within a date range and include thread replies for detectors

Schedule

{
  "enabled": true,
  "preset": "weekly",
  "cron": "52 1 * * 0",
  "timezone": "UTC"
}

Config Payload

{
  "type": "SLACK",
  "required": {
    "workspace": "acme"
  },
  "masked": {
    "token": "xoxb-or-xoxp-token",
    "token_type": "bot"
  },
  "optional": {
    "channels": {
      "channel_ids": [
        "C1234567890",
        "C0987654321"
      ]
    },
    "time_range": {
      "oldest": "2025-01-01T00:00:00Z",
      "latest": "2025-02-01T00:00:00Z"
    },
    "ingestion": {
      "batch_size": 200,
      "include_thread_replies": true
    }
  },
  "sampling": {
    "strategy": "ALL"
  }
}