Skip to main content
Passwords allow members to authenticate using a traditional email and password combination. Stytch handles password hashing, strength validation, and secure storage while providing flexible reset flows.

Password authentication flow

1

Authenticate with password

Members log in by providing their email and password using the Authenticate endpoint:
Key parameters:
  • organization_id: The organization the member belongs to (required)
  • email_address: Member’s email address (required)
  • password: Member’s password (required)
  • session_duration_minutes: How long the session should last (default: 60)
Response:
2

Handle MFA (if required)

If the organization requires MFA, the response will have member_authenticated: false and include an intermediate_session_token:
Use the intermediate session token to complete an MFA challenge (TOTP or SMS) before the member is fully authenticated.

Password reset flows

Stytch provides two methods for resetting passwords:
Send a password reset email to the member using the Password Reset by Email Start endpoint:Start the reset:
The member receives an email with a reset link. When they click it, extract the password_reset_token from the callback URL.Complete the reset with the Password Reset by Email endpoint:
Returns a session for the member with their new password set.

Password strength validation

Check password strength before allowing members to set passwords using the Strength Check endpoint:
Response:
The endpoint validates passwords against your configured strength policy (LUDS or zxcvbn) and checks if they’ve appeared in known breaches.

Learn more

Password strength policy

Configure password requirements

MFA guide

Add multi-factor authentication