diff --git a/src/cache.ts b/src/cache.ts index a636320..1404ae7 100644 --- a/src/cache.ts +++ b/src/cache.ts @@ -1114,7 +1114,7 @@ class Cache { // Update user in cache with fresh data await this.insertUser( - slackUser.id, + userId.toUpperCase(), slackUser.real_name || slackUser.name || "Unknown", slackUser.profile?.pronouns || "", slackUser.profile?.image_512 || slackUser.profile?.image_192 || "", diff --git a/src/handlers/index.ts b/src/handlers/index.ts index 1d6035c..d7e73a3 100644 --- a/src/handlers/index.ts +++ b/src/handlers/index.ts @@ -89,8 +89,9 @@ export const handleGetUser: RouteHandlerWithAnalytics = async ( ); } + const resolvedId = userId.toUpperCase(); await cache.insertUser( - slackUser.id, + resolvedId, slackUser.real_name || slackUser.name || "Unknown", slackUser.profile?.pronouns || "", slackUser.profile?.image_512 || slackUser.profile?.image_192 || "", @@ -98,8 +99,8 @@ export const handleGetUser: RouteHandlerWithAnalytics = async ( recordAnalytics(200); return Response.json({ - id: slackUser.id, - userId: slackUser.id, + id: resolvedId, + userId: resolvedId, displayName: slackUser.real_name || slackUser.name || "Unknown", pronouns: slackUser.profile?.pronouns || "", imageUrl: diff --git a/src/slack.d.ts b/src/slack.d.ts index 0c7d925..52161a5 100644 --- a/src/slack.d.ts +++ b/src/slack.d.ts @@ -64,6 +64,12 @@ export interface SlackUser { is_app_user: boolean; /** Whether user has two-factor auth enabled */ has_2fa: boolean; + /** Enterprise user info (present for enterprise grid users) */ + enterprise_user?: { + id: string; + enterprise_id: string; + enterprise_name: string; + }; } /**