Organizations & Multi-tenancy
Vigi uses a multi-tenant architecture centered around Organizations. This ensures strict data isolation and security between different teams or workspaces.
Structure
- Organization: The top-level entity. All resources (Monitors, Status Pages, Notification Channels, Settings) belong to a specific organization.
- User: Users are global entities but can be members of multiple organizations.
- Membership: A user's access to an organization is defined by their membership role.
Data Isolation
All data queries and mutations are scoped to the Organization ID of the active session. This guarantees that:
- Users can only access resources within the organizations they are members of.
- Resources from one organization are completely invisible to others.
Invitations Flow
Vigi supports a secure invitation flow for adding new members:
- Invite: An organization admin sends an invite using the new member's email.
- Token: A unique, secure token is generated and sent via email (or provided as a link).
- Accept: The invited user, upon logging in or creating an account, can accept the invitation.
- Join: Once accepted, the user becomes a member and gains immediate access to the organization's dashboard.
API Usage
You can manage invitations and organizations programmatically via the API. See the API Reference for details on endpoints like:
POST /invitations/accept/{token}GET /account/invitationsPOST /organizations/{orgSlug}/members