
TypeScript
const { Client, Account } = require('appwrite');
const client = new Client();
client
.setEndpoint('xxxxxxxxxxxxxxxxxxxxx')
.setProject('xxxxxxxxxxxxxxxxx');
const authenticateAndGenerateJWT = async (email, password) => {
try {
const account = new Account(client);
// Step 1: Authenticate the user and create a session
const session = await account.createEmailPasswordSession(email, password);
console.log('Session created successfully:', session);
// Step 2: Set the session token for subsequent requests
client.setSession(session); // Use the session ID as the token
// Step 3: Generate JWT
const jwt = await account.createJWT();
console.log('JWT created successfully:', jwt.jwt);
return jwt.jwt; // Return the generated JWT
} catch (error) {
console.error('Error:', error.message);
throw new Error('Failed to authenticate or create JWT.');
}
};
error
TypeScript
Error: User (role: guests) missing scope (account)
Error: Failed to authenticate or create JWT.
TL;DR
To generate a JWT after authentication, developers should ensure the user has the necessary scope. In this case, the error 'User (role: guests) missing scope (account)' indicates a lack of permissions. Make sure the guest role has the 'account' scope enabled in the Appwrite console.Recommended threads
- Use cloudflare origin certificate instea...
Hello! Is it possible to use cloudflare origin certificates instead of let's encrypt? We manage all ssl certs in our cloudflare account and our VMs has a firewa...
- Error getting session: AppwriteException...
I get this error `Error getting session: AppwriteException: User (role: guests) missing scope (account)` when running in prod. As soon as I try running my app o...
- Unable to View / Edit Bucket Files
Hi! I am unable to view / edit Bucket Files. While Previews work just fine, clicking the actual file to view or edit it produces the errors seen in the attache...
