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
- [ENHANCEMENT] Use the custom Next.js dep...
Deployment adapters on Next.js are now stable! This means that we don't have to stick to the limitations of sniffing out build outputs and manually moving or mo...
- NextJS builds sudden runtime_timeout
My builds suddenly stopped working. Activating old prebuilt snapshots work, but redeploying that same code produces builds that throw runtime_timeout FRA region
- Project paused?
Hello, I have two Appwrite projects and I can not resume them for some reason. I'm using the free plan, and I saw in the pricing page that 2 free projects are a...