> ## 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.

# useAuthenticatePasskeyMFA

<Card title="Recommended: JavaScript SDK with React Hooks" icon="react" color="#4779FE">
  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)](/javascript/reference/react-quickstart) to get started.
</Card>

### Summary

This hook provides a way for clients to authenticate with MFA using a passkey.

The hook needs to be initialized within a child of [DynamicContextProvider](/react/reference/providers/dynamiccontextprovider).

### Usage

Available methods:

* `authenticatePasskeyMFA`: Authenticate with MFA using a passkey. Optionally accepts a named parameters object: `{ createMfaToken?: boolean, relatedOriginRpId?: string }`.

### Usage

```TypeScript theme={"system"}
import { useAuthenticatePasskeyMFA } from '@dynamic-labs/sdk-react-core';

const App = () => {
  const authenticatePasskeyMFA = useAuthenticatePasskeyMFA();

  return (
    <button
      onClick={() => authenticatePasskeyMFA({
        createMfaToken: true, // Optional, if you want to create a single use MFA token for an action
        relatedOriginRpId: 'example.com', // Optional, if you want to authenticate from a related origin
      })}
    >
      Authenticate with MFA
    </button>
  );
};
```

### Optional parameters

* `relatedOriginRpId` (optional): Specify the RP ID to use when authenticating from a related origin (for example, a different subdomain or custom hostname related to your primary domain).
