I read https://appwrite.io/docs/client/teams but I don't understand how it works? If I add a user to a team, then in the client application I can't track which team he belongs to in order to allow or deny him any actions depending on this. When creating a client session, Response does not have something like "memberships". The only way to determine which teams the user belongs to is /v1/users/{userId}/memberships through Server integration. Maybe I misunderstood the purpose of "teams"?
From the docs: The Teams service allows you to group users of your project.
Simple example:
Say you have an accounts team consisting of 5 members which should only have access to invoices
databases, collections & its documents.
Now a normal user would not & should not have access to this data (unless specified otherwise), but your accounts team will have.
It is better to create teams/groups & grant them permissions rather than assigning permissions individually.
Teams(client).list();
would return a list of teams in which the current user is a member.
when creating a session, I can't see which team the user belongs to in order to give access to a particular function (when creating a session, I can't see which team the user belongs to)
depending on your use-case, this would require the user to be logged in.
That's what I'm asking about. Why don't we have information about which teams a user belongs to after logging in? Session Object does not have this information.
So we can get the list of teams in /v1/teams, and then go through all the teams and /v1/teams/{teamId}/memberships and look for this user there. But what kind of solution is this?
This question has arisen because I want to display additional features for some groups, but checking which group the user belongs to is not implemented.
Session Object does not have information about the teams, having the user id I cannot see which teams it belongs to. Only iterate over all teams and then iterate over all users in the team.
However, you can initiate a request to obtain the memberships of the currently logged-in user. https://appwrite.io/docs/client/teams?sdk=web-default#teamsList
Thanks, this is what I was looking for. I thought that List Teams returns a general list of teams and didn't pay attention to it.π
Can this thread be closed now?
Yes
[SOLVED] How does a user fetch their teams?
Recommended threads
- Apple OAuth Scopes
Hi Hi, I've configured sign in with apple and this is the response i'm getting from apple once i've signed in. I cant find anywhere I set scopes. I remember se...
- Sign In With Apple OAuth Help
Hi All! I've got a flutter & appwrite app which Im trying to use sign in with apple for. I already have sign in with google working and the function is the sam...
- [SOLVED] OAuth With Google & Flutter
Hi all, I'm trying to sign in with google and it all goes swimmingly until the call back. I get a new user created on the appwrite dashboard however the flutte...