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

# MfaWebAuthnPlatformEnrollment

MfaWebAuthnPlatformEnrollment

```ts Example theme={null}
// 'sdk' が MfaWebAuthnPlatformEnrollment のインスタンスであることを前提とする
try {
  await sdk.submitPasskeyCredential(); // publicKey を明示的に渡す必要はない
  // 成功時は Auth0 がリダイレクトを処理する
} catch (error) {
  console.error('パスキーの登録に失敗しました:', error);
  if (error.name && error.message) { // WebAuthn エラーかどうかを確認する
    await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
  }
}
```

<div id="constructors">
  ## コンストラクター
</div>

<ParamField body="MfaWebAuthnPlatformEnrollment" type="Constructor">
  `MfaWebAuthnPlatformEnrollment` クラスの新しいインスタンスを初期化します。

  <div id="throws">
    #### 例外
  </div>

  Universal Login コンテキストが利用できない場合、またはコンテキスト内の画面名が
  `MfaWebAuthnPlatformEnrollment.screenIdentifier` と一致しない場合に例外がスローされます。
</ParamField>

<div id="properties">
  ## プロパティ
</div>

<ParamField body="branding" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/BrandingMembers">BrandingMembers</a></span>} />

<ParamField body="client" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/ClientMembers">ClientMembers</a></span>} />

<ParamField body="organization" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/OrganizationMembers">OrganizationMembers</a></span>} />

<ParamField body="prompt" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/PromptMembers">PromptMembers</a></span>} />

<ParamField body="screen" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/ScreenMembersOnMfaWebAuthnPlatformEnrollment">ScreenMembersOnMfaWebAuthnPlatformEnrollment</a></span>} />

<ParamField body="tenant" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/TenantMembers">TenantMembers</a></span>} />

<ParamField body="transaction" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/TransactionMembers">TransactionMembers</a></span>} />

<ParamField body="untrustedData" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/UntrustedDataMembers">UntrustedDataMembers</a></span>} />

<ParamField body="user" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/UserMembers">UserMembers</a></span>} />

<ParamField body="screenIdentifier" type="string">
  static
</ParamField>

<div id="methods">
  ## メソッド
</div>

<ParamField body="getErrors" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/Error">Error</a>[]</span>}>
  コンテキストからトランザクションエラーの配列を取得します。存在しない場合は空の配列を返します。

  トランザクションコンテキストに含まれるエラーオブジェクトの配列です。
</ParamField>

<ParamField body="refuseEnrollmentOnThisDevice" type="Promise<void>">
  現在のデバイスでの WebAuthn プラットフォーム登録をユーザーが拒否できるようにします。

  拒否アクションの送信が成功したときに解決される Promise です。

  <Expandable title="パラメーター">
    <ParamField body="payload?" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/CustomOptions">CustomOptions</a></span>}>
      リクエストと共に送信されるオプションのカスタムパラメーターです。
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="reportBrowserError" type="Promise<void>">
  WebAuthn の `navigator.credentials.create()` 操作中に発生したブラウザ側のエラーを報告します。

  エラーレポートの送信が成功したときに解決される Promise です。

  #### 送出

  フォーム送信に失敗した場合はエラーを送出します。

  <Expandable title="パラメーター">
    <ParamField body="payload" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/ReportBrowserErrorOptions">ReportBrowserErrorOptions</a></span>}>
      **プロパティ**

      <ParamField body="error" type="object" />
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="snoozeEnrollment" type="Promise<void>">
  ユーザーが WebAuthn プラットフォーム登録を後で行うように延期できるようにします。

  スヌーズアクションの送信が成功したときに解決される Promise です。

  <Expandable title="パラメーター">
    <ParamField body="payload?" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/CustomOptions">CustomOptions</a></span>}>
      リクエストと共に送信されるオプションのカスタムパラメーターです。
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="submitPasskeyCredential" type="Promise<void>">
  `this.screen.publicKey` で利用可能な公開鍵オプションを使用して WebAuthn プラットフォーム認証情報の作成プロセスを開始し、その結果得られた認証情報をサーバーに送信します。
  このメソッドは内部的に `createPasskeyCredentials`（`navigator.credentials.create()` をラップしたもの）を呼び出します。

  認証情報が正常に作成され、送信されたときに解決される Promise です。

  #### 送出

  `this.screen.publicKey` が利用できない場合、`createPasskeyCredentials` が失敗した場合
  （例: ユーザーによるキャンセル、ハードウェアの問題）、またはサーバーへの送信に失敗した場合にエラーを送出します。

  ```typescript Example theme={null}
  // 'sdk' が MfaWebAuthnPlatformEnrollment のインスタンスであると仮定
  try {
    await sdk.submitPasskeyCredential(); // publicKey を明示的に渡す必要はありません
    // 成功時には Auth0 がリダイレクトを処理します。
  } catch (error) {
    console.error('Passkey enrollment failed:', error);
    if (error.name && error.message) { // WebAuthn のエラーらしいかどうかを確認
      await sdk.reportBrowserError({ error: { name: error.name, message: error.message } });
    }
  }
  ```

  <Expandable title="パラメーター">
    <ParamField body="payload?" type={<span><a href="/docs/libraries/acul/js-sdk/Screens/interfaces/SubmitPasskeyCredentialOptions">SubmitPasskeyCredentialOptions</a></span>}>
      作成された認証情報と共にサーバーへ送信されるオプションのカスタムパラメーターです。
    </ParamField>
  </Expandable>
</ParamField>
