I have implemented an email verification feature using Appwrite, but the verification process fails when the user clicks the email link. Here's what I'm working with:
Dart Code (Send Verification Email)
Future<void> sendEmailAndPasswordVerificationLink(String userId, String secret) async {
final token = await account.createVerification(url: 'http://67004d383faf2a735120.appwrite.global');
print(token.toMap());
}
Appwrite Cloud Function
import { Client, Users, Account } from 'node-appwrite';
export default async ({ req, res, log, error }) => {
const client = new Client()
.setEndpoint(process.env.APPWRITE_FUNCTION_API_ENDPOINT)
.setProject(process.env.APPWRITE_FUNCTION_PROJECT_ID)
.setKey(req.headers['x-appwrite-key'] ?? '');
const account = new Account(client);
const user = new Users(client);
try {
const { userId, secret } = req.query;
if (!userId || !secret) {
throw new Error('Missing userId or secret in query parameters');
}
const response = await account.updateVerification(userId, secret);
log(req.query);
return res.json({
success: true,
message: 'User verification successful',
data: response,
});
} catch (err) {
log(req.query);
return res.json({
success: false,
message: 'User verification failed',
error: err.message,
});
}
};
Problem:
I am successfully receiving the email, but when I click the verification link, the following error occurs:
{
"success": false,
"message": "User verification failed",
"error": "app.66f7536e00244af68e02@service.cloud.appwrite.io (role: applications) missing scope (public)"
}
It seems like there is a missing scope or permission issue, but I'm unsure how to resolve this. Could someone help me understand what this error means and how I can fix it?
Recommended threads
- Issue with OAuth 2.0 authentication
Good evening, I’m reaching out because I’m having a small issue with Appwrite. I’m trying to set up OAuth2 with Twitch, and even though I’m entering the correc...
- What's the proper way to delete user acc...
I would like to provide an option for the users of my app, to completely remove theirs account if they want to. I don't want to 'deactivate' the account, but to...
- Dart Runtime as Function is missing
Hey guys, I set the _APP_FUNCTIONS_RUNTIMES to dart-3.10 and redeployed the appwrite stack but unfortunately the dart runtime doesnt show up. I copied the val...