Hi everyone! I'm building an application that needs a multi-level hierarchy: Organizations → Teams → Users.
I see that Appwrite provides a Teams service, but I'm unclear on the recommended approach for handling organizations that contain multiple teams:
Option 1: Use Teams as the organization layer, then use labels/attributes within a team to represent actual sub-teams?
- Complexity: Simplest approach, leverages built-in Teams service, but may require custom logic to enforce team-within-team permissions
Option 2: Create a custom Organizations collection that references team IDs, essentially linking multiple teams to a parent organization entity?
- Complexity: Moderate - requires additional database queries and manual relationship management between organizations and teams
Option 3: Flatten the structure entirely and use a single team per organization with roles/labels to differentiate access levels?
- Complexity: Simplest data model, but may become difficult to manage as the number of users and permission requirements grow
My use case: A parent organization needs multiple teams beneath it, where users can belong to multiple teams within the same organization, and each team has its own permissions and data access.
What's the recommended Appwrite pattern for this type of organizational structure? Any examples or documentation I should reference?
Thanks in advance!
Recommended threads
- TablesDB `updateRows` returns `database_...
Hi Appwrite team! I’m seeing a strange issue with TablesDB bulk row updates on a self-hosted Appwrite instance. **Environment** - Appwrite self-hosted `1.9.0` ...
- Updating GitHub App access throws error
Steps to reproduce - 1. Have some private repos allowed on the install access 2. New Site/Func > Connect GitHub > see the side card saying `Missing a repo` > cl...
- Update row sheet not loading
After right clicking a row header and click update, the sidebar fails to load (never-ending skeleton)