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

# Request password reset

> Send a password reset email to a user

## Overview

`useRequestPasswordReset` returns a function that sends a password reset email to the specified address. The server always responds with a generic success message regardless of whether the address is registered, to prevent user enumeration.

## Usage Example

<CodeGroup>
  ```tsx React theme={null}
  import { useRequestPasswordReset } from "@replyke/react-js";

  function ForgotPasswordForm() {
    const requestPasswordReset = useRequestPasswordReset();

    const handleSubmit = async (e: React.FormEvent<HTMLFormElement>) => {
      e.preventDefault();
      const form = e.currentTarget;
      try {
        const result = await requestPasswordReset({
          email: form.email.value,
        });
        alert(result.message);
      } catch (err) {
        console.error(err);
      }
    };

    return (
      <form onSubmit={handleSubmit}>
        <input name="email" type="email" placeholder="Email" />
        <button type="submit">Send Reset Link</button>
      </form>
    );
  }
  ```

  ```tsx React Native theme={null}
  import { useRequestPasswordReset } from "@replyke/react-native";

  function ForgotPasswordButton({ email }: { email: string }) {
    const requestPasswordReset = useRequestPasswordReset();

    return (
      <Button
        title="Send Reset Link"
        onPress={() => requestPasswordReset({ email })}
      />
    );
  }
  ```
</CodeGroup>

## Parameters

The returned function accepts:

<ParamField path="email" type="string" required>
  The email address to send the reset link to.
</ParamField>

## Returns

The hook returns an async function. That function resolves to:

<ResponseField name="success" type="boolean">
  Always `true` when the request completes without a server error.
</ResponseField>

<ResponseField name="message" type="string">
  A generic success message. The same message is returned whether or not the
  email address is registered.
</ResponseField>

<Note>
  The reset link in the email expires after 1 hour. The link points to a
  server-hosted page that collects the new password and calls the
  Reset Password endpoint.
</Note>

## See Also

* [Request Password Reset API reference](/api-reference/auth/request-password-reset)
* [Reset Password API reference](/api-reference/auth/reset-password)
* [Built-in Auth guide](/sdk/authentication/built-in)
