> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wittify.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Forgot Password

> Reset your password in three steps: enter your email, type the 8-character reset code we send you, then set a new password.

<Note>
  The forgot password flow lives at `app.wittify.ai/forgot-password`. You go through three pages: this one (enter email), then [OTP Verification](/en/Systems/AI-Agents/Auth/OTP-Verification) (type the code), then the **Reset your password** page (set the new password). All three use the same top bar.
</Note>

## What this page looks like

A centered card on the form panel of the auth shell.

* The standard **top bar** with the **language switcher** and **theme toggle**.
* A 56 px brand-gradient tile at the top of the card with a white **mail** icon inside.
* The heading **Forgot your password?**
* The description *Enter your email and we'll send you a reset code.*
* A single **Email address** field.
* A brand-gradient **Send reset code** button.
* A **Back to sign in** link below the button, with a small left-pointing arrow icon.

The side panel of the auth shell (Wittify wordmark, Saudi Tech logo for Saudi visitors, headline, feature pills) is the same one used on Login, see the [Login](/en/Systems/AI-Agents/Auth/Login) page for the full breakdown.

## Step 1 , Enter your email

### Email address *(required)*

* **Label**: **Email address**
* **Placeholder**: `name@company.com`
* **Maximum length**: 254 characters.
* The field auto-focuses when the page opens.

If you submit with the field empty, the message **Email is required** appears below the field. If the value isn't a valid email, the message becomes **Enter a valid email address**. The error stays in red until you fix it and submit again.

### Send reset code button

A full-width brand-gradient button reading **Send reset code**.

* While the request is running, the button is disabled and the label changes to **Sending...** with a spinner.
* On success, you go to the [OTP Verification](/en/Systems/AI-Agents/Auth/OTP-Verification) page automatically.
* If the request fails (network error, account not found, server problem), an error line appears in red, centered above the button. The default message is *Failed to send reset code. Please try again.*

### Back to sign in link

Below the button, a quiet text link reading **Back to sign in** with a small arrow icon. Click to go back to the [Login](/en/Systems/AI-Agents/Auth/Login) page.

## Step 2 , Verify the code

You land on the **Check your email** page. Type the 8-character code we sent. See [OTP Verification](/en/Systems/AI-Agents/Auth/OTP-Verification) for the full breakdown of that page (the code format, the **Resend code** button, the 60-second cooldown).

Once the code is accepted, you go to the **Reset your password** page automatically.

## Step 3 , Set a new password

The reset page has the same top bar and side panel as the rest of the auth flow, plus a centered card:

* A 56 px brand-gradient tile at the top of the card with a white **key** icon inside.
* The heading **Reset your password**.
* The description *Enter your new password below.*

### New password *(required)*

* **Label**: **New password**
* **Placeholder**: *Enter new password*
* An eye icon at the end of the field toggles visibility. Its accessibility label flips between **Show password** and **Hide password**.
* **Maximum length**: 250 characters.
* Auto-focuses when the page opens.

### Confirm new password *(required)*

* **Label**: **Confirm new password**
* **Placeholder**: *Re-enter new password*
* Same eye toggle and same direction / length constraints as the field above.

### Validation

| What you do                                 | What you see                                                                                           |
| ------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| Submit with **New password** empty          | **Password is required** under that field                                                              |
| New password doesn't meet the strength rule | **Password must be at least 8 characters with an uppercase letter, a number, and a special character** |
| The two passwords don't match               | **Passwords do not match** under the **Confirm new password** field                                    |

If the request fails for any reason, an error line appears centered above the button. The reset code is **single-use**, if you've already used it once, the page will say so and you'll need to start the flow over.

### Reset password button

A full-width brand-gradient button reading **Reset password**.

* While the request is running, the button is disabled and the label changes to **Resetting...** with a spinner.
* On success you're routed to the [Login](/en/Systems/AI-Agents/Auth/Login) page in your current language. Sign in with your new password.

### Invalid link guard

If you arrive at the reset page with a broken URL (missing email, missing code), the form is replaced by:

* The error message **This reset link is invalid. Please request a new one.**
* A link reading **Send reset code** that takes you back to the start of the flow.

## Top bar (language + theme)

Identical on every auth page: a **language switcher** (Globe icon, EN / AR dropdown) and a **theme toggle** (animated sun / moon icon, **Light** / **Dark** / **System**).

## Common questions

<AccordionGroup>
  <Accordion title="I never got the reset email.">
    Check your spam folder. The OTP page has a **Resend code** button that becomes available 60 seconds after the previous one was sent. Make sure you typed your address correctly, the email field on the **Forgot your password?** page is left-to-right by design.
  </Accordion>

  <Accordion title="The reset code keeps saying it's invalid.">
    The code is 8 characters, letters and numbers, no spaces. The page formats it as `XXXX-XXXX` for readability but you can paste with or without the dash. If you used the reset code once already, it stops working, request a new one.
  </Accordion>

  <Accordion title="I clicked Reset password and got This reset link is invalid.">
    The reset page needs three pieces of information from the URL: your email, the code's identifier, and the code itself. If you arrived from a manually edited URL or an expired email link, restart from the **Forgot your password?** page.
  </Accordion>

  <Accordion title="I keep getting Failed to send reset code.">
    Either the server is down or your account doesn't exist. Try again in a minute. If it still fails, contact support, we'll check whether your account is registered under a different email.
  </Accordion>

  <Accordion title="Can I reuse my old password?">
    Yes. There is no "must differ from previous" rule today. You can technically reset your password back to the same value, though we recommend you don't.
  </Accordion>

  <Accordion title="My account was created with Google / Microsoft / GitHub. Will Forgot Password work?">
    No. If you signed up with a social provider, you don't have a Wittify password to reset. Use the same provider button on the [Login](/en/Systems/AI-Agents/Auth/Login) page. If you're locked out of the provider account itself, recover it through the provider, then come back to Wittify.
  </Accordion>
</AccordionGroup>

## Next

<CardGroup cols={2}>
  <Card title="OTP Verification" icon="shield-halved" href="/en/Systems/AI-Agents/Auth/OTP-Verification">
    Type the 8-character code from your inbox.
  </Card>

  <Card title="Login" icon="right-to-bracket" href="/en/Systems/AI-Agents/Auth/Login">
    Sign in with your new password.
  </Card>

  <Card title="Profile Settings" icon="gear" href="/en/Account/Profile-Settings">
    Change your password from inside the dashboard once you're signed in.
  </Card>

  <Card title="Sign Up" icon="user-plus" href="/en/Systems/AI-Agents/Auth/Sign-Up">
    Don't have an account yet? Start here.
  </Card>
</CardGroup>
