Add Member / Add Team Member creation flow

FeatureSecurityService
Shipped
April 23, 2026 at 8:43 PM UTC
Author
Kamo
Commit
d158239

- New MemberCreateController exposes: * GET **************** — age-req, timezone, departments, job titles * GET **************** — debounced existence check by email or username * POST /api/security/members/create — create Member in caller's org * POST **************** — create TeamMember with department / job title / work location / membership status / security level - Reuses an existing User when email or username already matches; otherwise creates a net-new User and sends the EMAIL_VERIFICATION template. WELCOME template is always sent on creation. - For orgs whose AgeReqType permits under-13 users, email collection is skipped and username becomes the primary identifier. - Extends GET /members/{id} to return location + teamMembershipStatus + isOrganizationOwner for TeamMembers, and PUT to persist location, teamMembershipStatus, and jobTitleOfficial when the record is a TeamMember. - Default role assignment + rights materialization delegated to MemberService so every new member lands with their effective rights already applied. - Fix EntitlementService: boolean getter was spelled getIsOrganizationOwner (Lombok generates isOrganizationOwner for primitive boolean fields).

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing