Hello everyone, π I'm currently experiencing a problem with my SvelteKit application. :svelte: I have configured my application to handle user sessions using the Appwrite SDK for Node.js because of SSR. When I try to add or delete documents in my collection from my application, I get the following error: "Permissions must be one of: (any, guests)". I set these security rules for my collection because I want only the right user can read, update, delete
User -> read Document security is enabled
If you need more information or a code, don't hesitate to ask me.
Thank you in advance for your help π
Here's the code :
lib/server/ideas.ts
export const getIdeas = async (): Promise<Idea[]> => {
try {
const client = new Client().setEndpoint(APPWRITE_ENDPOINT).setProject(APPWRITE_PROJECT);
const databases = new Databases(client);
const ideas = await databases.listDocuments(STARTER_DATABASE_ID, STARTER_COLLECTION_ID);
return ideas.documents as Idea[];
} catch (e) {
...
}
return [];
};
export const addIdea = async (idea: Idea) => {
try {
const client = new Client().setEndpoint(APPWRITE_ENDPOINT).setProject(APPWRITE_PROJECT);
const databases = new Databases(client);
return databases.createDocument(
STARTER_DATABASE_ID,
STARTER_COLLECTION_ID,
idea.$id,
{
userId: idea.userId,
title: idea.title,
description: idea.description
},
[
Permission.read(Role.user(idea.userId)),
Permission.update(Role.user(idea.userId)),
Permission.delete(Role.user(idea.userId))
]
);
} catch (e) {
...
}
};
export const deleteIdea = async (id: string) => {
try {
const client = new Client().setEndpoint(APPWRITE_ENDPOINT).setProject(APPWRITE_PROJECT);
const databases = new Databases(client);
return databases.deleteDocument(STARTER_DATABASE_ID, STARTER_COLLECTION_ID, id);
} catch (e) {
..
}
};
Recommended threads
- How to Avoid Double Requests in function...
I'm currently using Appwrite's `functions.createExecution` in my project. I want to avoid double requests when multiple actions (like searching or pagination) a...
- Send Email Verification With REST
I am using REST to create a user on the server side after receiving form data from the client. After the account is successfully created i wanted to send the v...
- Use different email hosts for different ...
Hello, I have 2 projects and i want to be able to set up email templates in the projects. Both projects will have different email host configurations. I see ...