Skip to content

Add Secure Shareable Invite Links for Teams #413

Description

@wreiske

Is your feature request related to a problem? Please describe.
Team admins can currently share a short join code or invite individual people, but there is no convenient way to generate a secure, shareable URL from the team page. Requiring recipients to manually enter a code adds friction when inviting a group through chat, email, or another communication channel.

Describe the solution you'd like
Add an Invite Link action to the team page that lets a team admin generate and copy a unique, cryptographically secure link for that team.

  • The link should contain an opaque, non-guessable token rather than exposing a reusable join code.
  • An authenticated user who opens a valid link should be added to the intended team automatically.
  • An unauthenticated user should be directed through sign-in or registration and then returned to the invitation flow so they can join the intended team.
  • Reopening a link as an existing team member should be idempotent and should not create duplicate membership.
  • Team admins should be able to revoke an active link and generate a replacement.
  • Revoked, invalid, or expired links should not grant membership and should display clear feedback.
  • The UI should provide confirmation when the invite link is generated or copied and prevent unauthorized team members from managing links.
  • Automated tests should cover generation, redemption, authentication redirects, duplicate redemption, revocation, expiration, and unauthorized access.

Describe alternatives you've considered
Continue using the existing short join code or send invitations to individual email addresses. Those approaches remain useful, but a shareable link is faster for inviting multiple people and avoids asking recipients to copy and manually enter a code. This feature complements the email invitation work in #412 and differs from the pending-admin-approval flow described in #272 because possession of a valid link grants team access automatically.

Additional context
The invite-link control should be added near the existing Invite action on the team Members view shown below. The link itself should never be exposed in logs or analytics. Rate limiting, secure token storage or hashing, and server-side validation should be used to reduce abuse.

Team page Members view with Invite action

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions