From 1abf64af5d0a08e02a7d93a607d01e56631ae8f9 Mon Sep 17 00:00:00 2001 From: Lucas Fernandes da Costa Date: Wed, 18 Dec 2024 11:36:07 -0300 Subject: [PATCH] capture user created events --- apps/api/src/events/posthog.ts | 15 +++++++++++++++ .../src/v1/workspaces/workspace/users/index.ts | 2 ++ 2 files changed, 17 insertions(+) diff --git a/apps/api/src/events/posthog.ts b/apps/api/src/events/posthog.ts index 437d2f5c..2c04e191 100644 --- a/apps/api/src/events/posthog.ts +++ b/apps/api/src/events/posthog.ts @@ -124,3 +124,18 @@ export const captureCreateSchedule = async ( }, }) } + +export const captureUserAdded = async ( + newUser: ApiUser, + workspaceId: string +) => { + const posthog = getPostHogClient() + posthog?.capture({ + distinctId: newUser.id, + event: 'user_created', + properties: { + userId: newUser.id, + workspaceId: workspaceId, + }, + }) +} diff --git a/apps/api/src/v1/workspaces/workspace/users/index.ts b/apps/api/src/v1/workspaces/workspace/users/index.ts index 24486634..a816c078 100644 --- a/apps/api/src/v1/workspaces/workspace/users/index.ts +++ b/apps/api/src/v1/workspaces/workspace/users/index.ts @@ -14,6 +14,7 @@ import { validate } from 'uuid' import { generatePassword, hashPassword } from '../../../../password.js' import { hasWorkspaceRoles } from '../../../../auth/token.js' import { isUserNameValid } from '../../../../utils/validation.js' +import { captureUserCreated } from '../../../../events/posthog.js' const usersRouter = Router({ mergeParams: true }) @@ -64,6 +65,7 @@ usersRouter.post('/', isAdmin, async (req, res) => { } await addUserToWorkspace(invitee.id, workspaceId, result.data.role) + captureUserCreated(invitee, workspace.id) res.json({ ...invitee,