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 canceled
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 acanceled
status.
Invite State and Validity
The invite can have many states, namely:
- pending
- accepted
- declined
- expired
- removed
- canceled
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 canceled
. 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