Skip to main content

Project Invites and Membership

Project collaborators can be added by the project owner through the project invite flow. The invite flow requires the user's email address to be entered and doesn't depend on the user having an Ory Cloud account. Ory Cloud will send them an invite link via the entered email, notifying them of the project they are invited to as well as who has invited them (your email as the project owner).

Invite user

Without an Ory Cloud account

Ory Cloud supports inviting user's without an Ory Cloud account, however, some conditions need to be met. Once the user follows the invite link, they will be required to register an account. The email entered upon registration has to match the email specified in the invite, if they don't match, the user will need to change their email through the settings flow or recreate an account. The invite also has to still be valid, this means the invite shouldn't have expired or been used.

With Ory Cloud account

The user can simply click on the link, sign in and accept the invite. Of course with the condition that the link is still valid.

Permissions

Only project owners can invite more members to a project. Any invited member will automatically have the developer role assigned, thus preventing any new member from removing members or adding new ones.

Project Member Seats

Each project, depending on the plan, has a set number of seats associated with it. The number of seats are used up by pending and accepted invites. Once the invite state changes to expired, removed, declined and cancelled the seat is freed up again. The reason for pending invites to take up seats are to prevent users from using up the seats on a first-come, first-served basis, leading to more invites sent than member slot availability.

There are two ways to free up member seats:

  • Remove a member from the project will result in a removed status.
  • Cancel a pending invite will result in a cancelled status.

Invite State and Validity

The invite can have many states, namely:

  • pending
  • accepted
  • declined
  • expired
  • removed
  • cancelled

The state of the invite can only change in certain ways depending on the actions of the subject (invited user), the actor (project owner) and the system. In the below state diagram the invite state starts out at pending and then goes on to be either accepted, declined, expired or cancelled. Only the subject can accept and decline the invite, while the actor can cancel, remove and delete an invite. The system can expire an invite.

The link is only valid if it has no user account linked to it and hasn't expired. Once the link has been successfully linked to the user account, the invite will appear in the user's notification panel. Here the user can manage their invites.

Once an invite has been removed by the project owner, the invite will also be removed for the invited user.

note

Invite Links expire after 6 hours and can only be used once.

warning

Deleting an invite is irreversible