Skip to main content

Send Slack File

The Send Slack File activity sends a file to a Slack channel as part of your workflow.

Purpose

Use the Send Slack File activity to:

  • Share report outputs with team channels
  • Distribute generated files to stakeholders
  • Send workflow results or exports
  • Automate file delivery to Slack

Prerequisites

Slack Connection Required

  • Must have a configured Slack connection (see Settings → Connections)
  • OAuth token must have files:write permission

File Source

Files are typically generated by previous workflow activities, such as:

  • Report book results (PDFs, Excel files)
  • Exported data files
  • Generated documents

Configuration

Connection Settings

  • Slack Connection: Select a pre-configured Slack connection

Channel Settings

  • Channel Name: The Slack channel to send to (e.g., "products")
  • Channel ID: Alternative to channel name

Message Settings (Optional)

  • Message: Optional text message to accompany the file
  • Appears above the file in Slack
  • Can include workflow parameters

File Settings

  • File Source: Select the file to send
  • Typically uses output from a previous workflow activity

Context Variable (Optional)

  • Message Timestamp: Store the timestamp of the message with the file
  • Can be used to track the upload or read responses

File Source Options

Report Book Result

Most common use case - sending generated reports:

File Source: Report Book Result
└─ Select from previous Report Book activity output

Workflow File

Files stored or generated within the workflow:

File Source: Workflow File
└─ Select from File Explorer or previous activity

Example Configurations

Send Report PDF

Slack Connection: Company Slack
Channel: reports
Message: Monthly report for {MonthName} - generated {GenerationDate}
File: Report Book Result (Monthly_Report.pdf)

Send Data Export

Slack Connection: Company Slack
Channel: data-team
Message: Client data export - {RecordCount} records
File: Export Result (ClientData.xlsx)

Send Generated File with Timestamp

Slack Connection: Company Slack
Channel: finance
Message: Financial summary for {Period}
File: Report Book Result (Finance_Summary.pdf)
Timestamp Context Key: FileUploadTimestamp

Common Use Cases

Automated Report Distribution

1. Generate Report Book (PDF/Excel)
2. Send Slack File
└─ Channel: reports
└─ File: Report Book Result
└─ Message: "{ReportName} for {Period}"

Data Export Delivery

1. Export Data to File
2. Send Slack File
└─ Channel: data-exports
└─ File: Export File
└─ Message: "Daily export completed"

Error Logs

1. Generate Error Report
2. Send Slack File
└─ Channel: alerts
└─ File: Error Log
└─ Message: "⚠️ Workflow errors for {Date}"

Scheduled Deliveries

Workflow Schedule: Daily at 8 AM
└─ Generate Report
└─ Send Slack File
└─ Channel: morning-reports
└─ Message: "Good morning! Here's today's report."

Supported File Types

Slack generally supports:

  • Documents: PDF, DOCX, TXT, MD
  • Spreadsheets: XLSX, CSV
  • Images: PNG, JPG, GIF
  • Archives: ZIP
  • Other: Most common file formats

Check Slack's current file size limits (typically 1 GB for free plans, may vary).

Message Formatting

The accompanying message supports:

  • Plain text
  • Workflow parameters: {ParameterName}
  • Emojis: 📊 📈 📉
  • Simple formatting (Slack auto-detects URLs)

Note: For advanced markdown formatting, use Send Slack Message activity separately.

File Naming

  • Files retain their original names from the source activity
  • Report Book Results use the report book's configured file name
  • Consider configuring meaningful file names in report book settings

Best Practices

  • Clear Messages: Provide context about the file content
  • Appropriate Channels: Send to relevant team channels
  • Naming Convention: Use consistent, descriptive file names
  • Size Awareness: Be mindful of large files (consider compression)
  • Frequency: Avoid overwhelming channels with too many files
  • Test Channel: Test deliveries in a private channel first
  • Error Handling: Plan for file generation failures

Usage Pattern with Report Books

Complete Report Delivery Flow

1. Report Book Activity
└─ Generate: Monthly_Report
└─ Format: PDF
└─ Store Output: MonthlyReportFile

2. Send Slack File
└─ Connection: Company Slack
└─ Channel: management
└─ Message: "📊 Monthly Report - {MonthName} {Year}"
└─ File: MonthlyReportFile

3. Email Activity (parallel)
└─ Also send via email to external stakeholders

Context Variable Usage

Store the message timestamp to:

  • Track successful uploads
  • Read responses about the file
  • Link multiple messages together
  • Implement approval workflows based on file reviews
Timestamp Context Key: ReportUploadTimestamp

Later activities can reference: {ReportUploadTimestamp}

Limitations

  • One File per Activity: Sends one file at a time
  • File Size: Subject to Slack's file size limits
  • Source Dependency: File must be generated by a previous activity
  • No Direct Upload: Cannot upload files from external sources directly

To send multiple files:

  • Use multiple Send Slack File activities
  • Or combine files into a ZIP archive first

Troubleshooting

File Not Appearing in Slack

  • Verify OAuth token has files:write permission
  • Check bot is added to the target channel
  • Confirm file was successfully generated by previous activity
  • Review workflow execution log for errors
  • Verify file size is within Slack limits

Wrong File Sent

  • Check file source configuration
  • Verify correct previous activity is referenced
  • Ensure file variable is populated

Channel Not Found

  • Verify channel name is correct (case-sensitive)
  • Confirm bot is a member of the channel
  • Try using Channel ID instead of name

OAuth Token Setup

Your IT team or Slack admin needs to add permissions:

Required Scopes:

  • files:write - Upload and send files
  • channels:read - Read channel information
  • chat:write - Post messages (for accompanying text)

Setup Steps:

  1. Go to Slack App settings
  2. Navigate to OAuth & Permissions
  3. Add Bot Token Scopes listed above
  4. Reinstall app to workspace
  5. Invite bot to target channels

Security Considerations

  • Files uploaded to Slack are stored in Slack's systems
  • Consider data sensitivity before automated uploads
  • Review Slack's data retention policies
  • Monitor file sharing for compliance requirements
  • Restrict bot access to appropriate channels only
  • Consider encrypting sensitive files before upload

Alternative Approaches

Large Files

For very large files, consider:

  • Generating a download link instead
  • Using cloud storage (SharePoint, OneDrive)
  • Sending email with attachment
  • Compressing files before sending

External Recipients

For recipients outside Slack:

  • Use Email activity instead
  • Or combine: Send Slack File to internal team, Email to external
  • Consider access controls and sharing permissions