Slack Integration

Connect Slack workspaces to Metalogue

Slack Integration

Connect your Slack workspace to index messages, threads, and files.

Setup

1. Install Metalogue App

  1. Go to Settings → Integrations → Slack
  2. Click Add to Slack
  3. Authorize Metalogue for your workspace

2. Configure Channels

await metalogue.sync({
  source: "slack",
  workspace: "your-workspace",
  channels: ["#engineering", "#product", "#support"]
});

What Gets Indexed

Content TypeIndexed
Messages
Thread replies
File attachments✅ (text-based)
ReactionsMetadata only
DMs❌ (privacy)

Channel Access Control

Map Slack channels to Metalogue access roles:

await metalogue.configureAccess({
  node_id: "slack-acme-001",
  rules: [
    { channel: "#finance", roles: ["cfo", "finance_team"] },
    { channel: "#engineering", roles: ["engineering", "cto"] },
    { channel: "#general", roles: ["*"] }  // All users
  ]
});

Real-Time Sync

Enable webhooks for real-time message indexing:

await metalogue.enableRealtimeSync({
  node_id: "slack-acme-001",
  events: ["message", "file_shared", "reaction_added"]
});

Query Examples

// Find discussions about a topic
const result = await metalogue.query({
  question: "What did the team decide about the API redesign?",
  sources: ["slack"]
});

// Search with date range
const result = await metalogue.query({
  question: "Customer complaints last week",
  sources: ["slack"],
  options: {
    filters: {
      dateRange: { start: "2024-01-08", end: "2024-01-15" }
    }
  }
});

Permissions Required

Slack ScopePurpose
channels:historyRead public channel messages
channels:readList channels
files:readAccess file content
users:readMap user mentions