--- id: auth-update title: 'update()' slug: auth-update custom_edit_url: https://github.com/supabase/supabase/edit/master/spec/supabase_js_v1_legacy.yml --- import Tabs from '@theme/Tabs' import TabItem from '@theme/TabItem' Updates user data, if there is a logged in user. ```js const { user, error } = await supabase.auth.update({ email: 'new@email.com' }) ``` ## Parameters ## Notes User email: Email updates will send an email to both the user's current and new email with a confirmation link by default. To toggle this behavior off and only send a single confirmation link to the new email, toggle "Double confirm email changes" under "Authentication" -> "Settings" off. User metadata: It's generally better to store user data in a table inside your public schema (i.e. `public.users`). Use the `update()` method if you have data which rarely changes or is specific only to the logged in user. ## Examples ### Update email for authenticated user. Sends a "Confirm Email Change" email to the new email address. ```js const { user, error } = await supabase.auth.update({ email: 'new@email.com' }) ``` ### Update password for authenticated user. ```js const { user, error } = await supabase.auth.update({ password: 'new password' }) ``` ### Update a user's metadata. ```js const { user, error } = await supabase.auth.update({ data: { hello: 'world' }, }) ```