Sends a password reset request to an email address. This method supports the PKCE flow.
resetPasswordForEmail()
only sends a password reset link to the user's email. To update the user's password, see updateUser()
.PASSWORD_RECOVERY
event will be emitted when the password recovery link is clicked. You can use onAuthStateChange()
to listen and invoke a callback function on these events.redirectTo
parameter. See redirect URLs and wildcards to add additional redirect URLs to your project.updateUser()
:const { data, error } = await supabase.auth.updateUser({ password: new_password })
The email address of the user.
const { data, error } = await supabase.auth.resetPasswordForEmail(email, { redirectTo: 'https://example.com/update-password', })
/** * Step 1: Send the user an email to get a password reset token. * This email contains a link which sends the user back to your application. */ const { data, error } = await supabase.auth .resetPasswordForEmail('user@email.com') /** * Step 2: Once the user is redirected back to your application, * ask the user to reset their password. */ useEffect(() => { supabase.auth.onAuthStateChange(async (event, session) => { if (event == "PASSWORD_RECOVERY") { const newPassword = prompt("What would you like your new password to be?"); const { data, error } = await supabase.auth .updateUser({ password: newPassword }) if (data) alert("Password updated successfully!") if (error) alert("There was an error updating your password.") } }) }, [])