
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
- CSV Import not working
I am running 1.7.4, trying the sample book csv import. I get a pop up saying import started and then a quick follow up saying completed. Nothing ever appears ...
- Is my approach for deleting registered u...
A few weeks ago, I was advised not to use the registered users' id in my web app. Instead, I store the publicly viewable information such as username and email ...
- ❗[Help] Function stuck in "waiting" stat...
Hi Appwrite team 👋 I'm trying to contribute to Appwrite and followed the official setup instructions from the CONTRIBUTING.md guide to run the platform locall...
