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
does not 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 do not 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 should not 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.
note
It is currently not possible to elevate a member from developer
to owner
,
but will become possible in the future.
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 acancelled
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 has not 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 completely 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