I try to update the membershiproles of an user when users.*.verification.*.update is triggered. Idk why my function return the error Error adding user to the role maybe there is something wrong with the query when listMemberships is used :
module.exports = async function (req, res) {
const client = new sdk.Client();
const teams = new sdk.Teams(client);
const users = new sdk.Users(client);
if (
!req.variables['APPWRITE_FUNCTION_ENDPOINT'] ||
!req.variables['APPWRITE_FUNCTION_API_KEY']
) {
console.warn("Environment variables are not set. Function cannot use Appwrite SDK.");
} else {
client
.setEndpoint(req.variables['APPWRITE_FUNCTION_ENDPOINT'])
.setProject(req.variables['APPWRITE_FUNCTION_PROJECT_ID'])
.setKey(req.variables['APPWRITE_FUNCTION_API_KEY'])
.setSelfSigned(true);
}
const teamId = req.variables['APPWRITE_FUNCTION_TEAM_ID'];
const token = JSON.parse(req.variables['APPWRITE_FUNCTION_EVENT_DATA']);
const user = await users.get(token.userId);
if (user.emailVerification) {
try {
const members = teams.listMemberships(teamId, [
Query.equal('userId', user.$id)
]);
if (members.total === 1) {
await teams.updateMembershipRoles(teamId, members.memberships[0].$id, ['verified'], 'https://appwrite.nvlab.fr');
res.json({ success: `User ${user.name} added to the Verified Role successfully` });
} else {
throw 'Error looking for a membership user.';
}
} catch (error) {
res.json({ error: 'Error adding user to the role' });
}
}
};
Okay the problem comes from my teamId I guess because even if i do :
console.log(teams.listMemberships(teamId);
No output
It would help if you logged the error and shared it
I think you need to await it
like that : await teams.listMemberships(teamId); ?
When I do console.log(error), ive got an empty {}
Well when i do that :
const membersOld = await teams.listMemberships(teamId);
console.log('Members old', membersOld)
const members = await teams.listMemberships(teamId, [
Query.equal('userId', user.$id)
]);
membersOLD works but not members
well ive no idea why the Query.equal('userId', user.$id) dont work
There is no attribut for Team btw ?
ive no idea why the query dont works
What's the error?
[SOLVED] Update MembershipRoles of a specific user
Recommended threads
- Magic Link woes/noob
Magic Link is working; it sends the link to my email. But the link itself always leads to "Page Not Found. The page you're looking for doesn't exist". Clicking ...
- is `account.get()` safe to be used in th...
I want to user's `id` for authentication. However, a while ago I was told in this server not to use `account.get()` and instead add user preferences for that us...
- Usage of the new Client() and dealing wi...
Hey guys, just a quick one - we had some web traffic the other day and it ended up bombing out - To put in perspective of how the app works, we have a Nuxt Ap...