B2B Saas Authentication

/

Frontend SDKs

/

Headless

/

Passwords

/

Reset by Existing Password

Reset by existing password

The resetByExistingPassword method wraps the Reset by existing password Password API endpoint.

If there is a current Member Session, the SDK will call the endpoint with the session token. This will add the new factor to the existing Member Session.

If this method succeeds and the Member is not required to complete MFA, the Member will be logged in, granted an active session, and the session cookies will be minted and stored in the browser.

If this method succeeds and MFA is required, the intermediate session token will be stored in the browser as a cookie.

You can listen for successful login events anywhere in the codebase with the stytch.session.onChange() method or useStytchMemberSession hook if you are using React.


Method parameters


session_duration_minutes*int

email_address*string

new_password*string

existing_password*string

organization_id*string
import React, { useCallback } from 'react';
import { useStytchB2BClient } from '@stytch/react/b2b';

export const ResetPassword = () => {
  const stytch = useStytchB2BClient();

  const resetPassword = useCallback(() => {
    stytch.passwords.resetByExistingPassword({
      email_address: 'sandbox@stytch.com',
      existing_password: 'existing_password',
      new_password: 'dlJJv4XW!UiGXHs(',
      session_duration_minutes: 60,
      organization_id: 'organization-test-07971b06-ac8b-4cdb-9c15-63b17e653931',
    });
  }, [stytch]);

  return <button onClick={resetPassword}>Reset Password</button>;
};

RESPONSE

200
{
    "intermediate_session_token": "",
    "member": {...},
    "member_authenticated": true,
    "mfa_required": null,
    "member_id": "member-test-32fc5024-9c09-4da3-bd2e-c9ce4da9375f",
    "member_session": {...},
    "organization": {...}
    "request_id": "request-id-test-b05c992f-ebdc-489d-a754-c7e70ba13141",
    "session_jwt": "example_jwt",
    "session_token": "mZAYn5aLEqKUlZ_Ad9U_fWr38GaAQ1oFAhT8ds245v7Q",
    "status_code": 200
}