
If you put a normal webpage at the URL you provide when creating the verification, you could use javascript to retrieve the userId and secret. Then you use the appwrite SDK to confirm the verification.

Since you want to use deep linking into Flutter, you have to set that up. There are separate systems that android and iOS use for deep linking called Universal Links (iOS) and Deep Links/Dynamic Links/App Links (Android). Flutter provides a package that Joyti linked to which helps set this up for Flutter. These systems are a part of the operating system and Flutter, not Appwrite. But if you set them up correctly you can forward the query parameters into your app when the operating system opens your app due to the link being clicked.

One hard problem you'll have to figure out is how to forward the query parameters into Flutter. It can be done, but it'll be a bit more involved since Flutter runs on both Android and iOS (but neither operating system supports deep link parameters automatically).

You may find it easier to just write a small static webpage that verifies the account, then forwards the user to a deep link into the app. Since URL paths are supported well on both platforms, you could forward the user to a fail or a success path in your app. You can host static webpages for free.

Optionally, you could just host a static webpage that converts the query parameters into path parameters inside your app. Those will be easier to forward into Flutter and verify. It'll be like yourdomain.com/verifyAccount/$23nj3434n34/sdfkn53
where $23nj3434n34
is the userId and sdfkn53
is the secret.

All of the solutions I've mentioned won't require the user to do anything other than click a link in the email. This provides a better user experience than how some other services email the user a code that they have to copy over.

That explains everything, thanks a lot.
I'm trying your second option ,what shoud i do about invalid url: URL host must be one of:.....
when passing the static webpage url?

same question here... I guess we have to add a custom domain in the appwrite console, but let's see what appwrite developers have to say about that

You need to add a platform, not domain

Make sure to add a web platform and specify the hostname

Ahaaa, gotcha

Thanks

@hamed if your query is solved, shall I mark this thread as solved so others can see it?

Yes it solved.

awesome!

can you please add [SOLVED] in the title of this post?

[SOLVED] Deep link with Email verification

have you actually made it work? It works for me but only if i click the link from desktop. On mobile it just throws an exception

What a coincidence ๐ i was gonna ask you...Yeah it worked, i passed the static website url and the appwrite did sent that link with query , but im still trying to figure out why this website couldnt connect to my endpoint. Let me know if you wanna work together on our issue!

Your current appwrite instance is on localhost now, right?

Yes

Alright. Give me a few minutes, I think I've figured it out. The procedure to verify your account when the appwrite instance is on localhost is a littble bit different than we were doing previously. Just allow me a few minutes to finish testing and I'll explain how to make it work in dev environment

Alright.

Yes, finally been able to handle this annoying process

let's continue in https://discord.com/channels/564160730845151244/1075749666009927750
Recommended threads
- Relationships restricted to a max depth ...
When I do query like: ``` await _databases.listDocuments( databaseId: AppwriteConfig.DATABASE_ID, collectionId: AppwriteConfig.SERVICES_COLLECTI...
- Error sending push message from dashboar...
I am trying to implement appwrite fully into my app and am switching over from firebase. I registered FCM as a Provider and tried to send a push message via the...
- My organization deleted, how??
Getting error mesasges and I can't find my organization.
