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

# useAuthenticateConnectedUser

> [card] Recommended: JavaScript SDK with React Hooks
>
> For new React apps, we recommend the JavaScript SDK with React Hooks (`@dynamic-labs-sdk/react-hooks`) instead of the legacy React SDK documented here. The JS SDK comes with many benefits such as a much smaller bundle size and other optimizations. Use the [React quickstart (JavaScript SDK)](https://docs.dynamic.xyz/docs/javascript/reference/react-quickstart.md) to get started.

### Summary

A hook which can be used to authenticate an already connected user. It's useful when there is a need to authenticate a user who is currently in [connect-only](https://docs.dynamic.xyz/docs/react/wallets/external-wallets/connected-vs-authenticated.md) mode.

> [!NOTE]
>
> Learn more about the different authentication modes [here](https://docs.dynamic.xyz/docs/react/wallets/external-wallets/connected-vs-authenticated.md).

The hook needs to be initialized within a child of `DynamicContextProvider`

### Usage

#### Available functions and states:

* `authenticateUser` - when called starts signing already connected user.
* `isAuthenticating` - boolean which indicates the state of authentication.

#### Example usage:

```TypeScript theme={"system"}
const AuthenticateConnectedUserButton = () => {
  const { authenticateUser, isAuthenticating } = useAuthenticateConnectedUser();

  return (
    <button onClick={ authenticateUser } disable={ isAuthenticating }>
    { isAuthenticating ? 'Authenticating ...' : 'Authenticate connected wallet' }
    </button>
  )
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.