I'm having issues with querying User in node-appwrite. I've shared my codebase as well.
import { Account, Client, ID, Users } from "node-appwrite";
const APPWRITE_ENDPOINT = import.meta.env.VITE_APPWRITE_ENDPOINT;
const APPWRITE_PROJECT_ID = import.meta.env.VITE_APPWRITE_PROJECT_ID;
const APPWRITE_API_KEY = import.meta.env.VITE_APPWRITE_API_KEY;
const client = new Client()
.setEndpoint(APPWRITE_ENDPOINT)
.setProject(APPWRITE_PROJECT_ID)
.setKey(APPWRITE_API_KEY);
export async function getUserByEmail(email: string) {
const users = new Users(client);
// this is not appreciated way to filter users
const response = await users.list();
const userIndex: number = response.users.findIndex((user) => user.email === email);
// if user email is not found on Users table
if (userIndex !== -1) {
return response.users[userIndex];
} else {
return null;
}
}
export async function verifyUserEmail(email: string) {
const account = new Account(client);
await account.create(ID.unique(), email, "12345");
}
I tried to use Query in node-appwrite but every solutions and discussions didn't work for me.
Please let me know if someone has experienced with it.
Are you using the latest node sdk? Appwrite cloud has been upgraded to v1.5.5 and the queries are a bit different in the latest version of appwrite.
the List users endpoint accepts an array of queries that allows you to filter by email. Have you read https://appwrite.io/docs/references/cloud/server-nodejs/users#list?
I tried this but didn't work actually.
const result = await users.list([Query.equal("email", email)]);
Recommended threads
- Middleware
how to make middleware in nextjs appwrite with client side auth?
- Bug: Cloud Function On Schedule Didn't R...
Heya I have a cloud function with this cron `0 17 * * *` to run at 9AM PT every day. I have not touched this since I set it up, and it has been working fine s...
- functions
Code for function not being created in Github. Permissions are set correctly, repository is created, however no code is in the created repository. Just trying...