Skip to main content

Inviting users to a project

Invitations let a project admin grant another user access to a project without having to set up the account and permission by hand. The admin creates an invitation that carries a target project and a permission level; when the invited user accepts, they are added to the project with exactly that permission.

Who can invite

Only a Project Admin of the project (or a Server Admin) can create invitations for it. Everyone else can read invitations they are involved in but cannot create them.

Two kinds of invitation

Targeted invitation

The invitation names a specific user. Only that user can accept it. Use this when the person already has an account on the server.

Open invitation

The invitation has no target user. Anyone who has the invitation can accept it. This is useful for sharing access through a link without knowing in advance which account will use it.

How it works

  1. Create. A project admin creates an invitation, choosing the project and the permission to grant (for example, Read Only or Result Input — see Permissions). The invitation starts in the inviting state.
  2. Accept. The invited user accepts the invitation. They are added to the project with the permission stored on the invitation, and the invitation moves to the accepted state.

Once an invitation has been accepted, it can no longer be accepted again.

Signing up through an invitation

An invitation can also be used to onboard a brand-new user. The signup link carries the invitation, and the new account is created as part of signing up. When the invitation was created with a designated user id, the new account is created with that pre-assigned id, so the account that signs up matches the one the invitation was prepared for.

An invitation can onboard at most one user. Once it has been used — either accepted, or already used to create its designated account — signing up through it again fails with a clear error instead of creating a duplicate or returning an opaque failure.

info

Signing up through an invitation is only possible when self-signup is enabled on the server.

Invitation status

StatusMeaning
invitingThe invitation has been created and is waiting to be accepted.
acceptedThe invitation was accepted; the user now has access.
info

Accepting an invitation grants the permission recorded on it at creation time. To change a user's access afterwards, adjust their project permission directly.