Can't send verification email. On the client side registration process after calling this.account.create() I tried to send Email verification by using this.account.createVerification('http://localhost:4200/verify'); but this fails. In the docker-compose logs -f --tail=50 appwrite I see following error:
khashashin@dockers-khasdev:~/appwrite$ docker-compose logs -f --tail=50 appwrite
Attaching to appwrite
appwrite | Worker 1 started successfully
appwrite | Worker 2 started successfully
appwrite | Worker 3 started successfully
appwrite | Worker 4 started successfully
appwrite | [Setup] - Server database init started...
appwrite | [Setup] - Creating database: appwrite...
appwrite | [Setup] - Server database init completed...
appwrite | Server started successfully (max payload is 6,291,456 bytes)
appwrite | Master pid 1, manager pid 8
appwrite | [Error] Timestamp: 2023-07-01T23:27:55+00:00
appwrite | [Error] Type: Utopia\Exception
appwrite | [Error] Message: Not Found
appwrite | [Error] File: /usr/src/code/vendor/utopia-php/framework/src/App.php
appwrite | [Error] Line: 803
appwrite | [Error] Timestamp: 2023-07-01T23:28:18+00:00
appwrite | [Error] Method: POST
appwrite | [Error] URL: /v1/account/verification
appwrite | [Error] Type: TypeError
appwrite | [Error] Message: Appwrite\Event\Mail::setRecipient(): Argument #1 ($recipient) must be of type string, null given, called in /usr/src/code/app/controllers/api/account.php on line 2301
appwrite | [Error] File: /usr/src/code/src/Appwrite/Event/Mail.php
appwrite | [Error] Line: 50
The user creation was successfull an I can verify in Appwrite console the user exists. The response I got from Appwrite instance was:
{"message":"Server Error","code":500,"type":"general_unknown","version":"1.3.7"}
Here is the code in client side:
register(user: UserCreate) {
const promise = this.account.create(
ID.unique(),
user.email,
user.password,
user.firstName + ' ' + user.lastName,
);
promise.then((response) => {
this.account.createVerification('http://localhost:4200/verify');
}, function (error) {
console.log(error); // Failure
});
}
Weird...this is saying the email is null...maybe you have a previous anonymous session
This code is also missing the session creation
@Steven You mean, I should call this.account.createVerification('http://localhost:4200/verify'); after creating session? Could it be anonymous session?
No it doesn't work with anonymous session at the moment. See https://github.com/appwrite/appwrite/issues/5220
Ok, thanks. By creating email session before calling this.account.createVerification('http://localhost:4200/verify'); works!
[SOLVED] [Error] Message: Appwrite\Event\Mail::setRecipient()
Recommended threads
- Console infinite loading behind NginxPro...
Hi All, I am trying to get AppWrite to work behind NPM. I've followed the Medium guide to set proper headers, I've added my proxy configuration to NPM, and I ...
- Hi Folks, Database Writing Issue
Hey Folks im trying to get logging setup on my website but im getting an error, i dont have any document id and i think this is the issue but i havent got the f...
- script "build" was terminated by signal ...
Heyo, For some reason, my Next.js 16.0.10 version does not build properly. Here is the last logs: ``` 1063 packages installed [22.54s] $ next build ⚠ No build...