Skip to content

Resolve display names for cross-org Slack Connect users #1

Description

@skapadia

Problem

Messages from Slack Connect (cross-org) users don't include the user_profile field in the conversations.history API response. This means their display name can't be resolved from the export data alone — they show up as raw user IDs (e.g., U03PCS5FE) in the viewer.

Only users from the host workspace get user_profile embedded automatically.

Proposed Solution

Add a user lookup step to the exporter that calls the users.info API for any user ID that doesn't have a user_profile attached. Cache the results to avoid redundant calls, and embed the resolved profile into the message data before export.

Requirements

  • Additional OAuth scope: users:read
  • The bot token must have visibility into the cross-org users (Slack Connect permissions)

Alternatives

  • Allow a manual user ID-to-name mapping file (JSON) that the viewer can load alongside the export
  • Resolve names at viewer load time rather than export time (would require API access from the browser)

Context

Discovered while testing the HTML viewer (feature/html-viewer branch). Affects any export from a channel with Slack Connect guests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions