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

# 認証方法を作成

> サポート対象の認証方法の登録を開始します。

export const Scopes = ({scopes = []}) => {
  return <div>
      <div class="api-section-heading flex flex-col gap-y-4 w-full">
        <div class="flex items-baseline border-b pb-2.5 border-gray-100 dark:border-gray-800 w-full">
          <h4 class="api-section-heading-title flex-1 mb-0">Scopes</h4>
          <div class="flex items-center"></div>
        </div>
      </div>
      <div class="mt-4">
        <div class="space-y-4 whitespace-normal prose prose-sm prose-gray dark:prose-invert overflow-wrap-anywhere [&_*]:overflow-wrap-anywhere">
          <p class="whitespace-pre-line text-xs">
            {"スコープは、APIリクエストと認証トークンの権限およびアクセスレベルを定義します。"}
          </p>
        </div>
      </div>
      <div class="flex font-mono text-sm group/param-head param-head break-all relative mt-6" id="scopes-scopes">
        <div class="flex-1 flex flex-col content-start py-0.5 mr-5">
          <div class="flex items-center flex-wrap gap-2">
            <div class="absolute -top-1.5">
              <a href="#scopes-scopes" class="-ml-10 flex items-center opacity-0 border-0 group-hover/param-head:opacity-100 focus:opacity-100 focus:outline-0 py-2 [.expandable-content_&]:-ml-[2.1rem] group/link" aria-label="見出しに移動">
                ​
                <div class="w-6 h-6 rounded-md flex items-center justify-center shadow-sm text-gray-400 dark:text-white/50 dark:bg-background-dark dark:brightness-[1.35] dark:ring-1 dark:hover:brightness-150 bg-white ring-1 ring-gray-400/30 dark:ring-gray-700/25 hover:ring-gray-400/60 dark:hover:ring-white/20 group-focus/link:border-2 group-focus/link:border-primary dark:group-focus/link:border-primary-light">
                  <svg xmlns="http://www.w3.org/2000/svg" fill="gray" height="12px" viewBox="0 0 576 512">
                    <path d="M0 256C0 167.6 71.6 96 160 96h72c13.3 0 24 10.7 24 24s-10.7 24-24 24H160C98.1 144 48 194.1 48 256s50.1 112 112 112h72c13.3 0 24 10.7 24 24s-10.7 24-24 24H160C71.6 416 0 344.4 0 256zm576 0c0 88.4-71.6 160-160 160H344c-13.3 0-24-10.7-24-24s10.7-24 24-24h72c61.9 0 112-50.1 112-112s-50.1-112-112-112H344c-13.3 0-24-10.7-24-24s10.7-24 24-24h72c88.4 0 160 71.6 160 160zM184 232H392c13.3 0 24 10.7 24 24s-10.7 24-24 24H184c-13.3 0-24-10.7-24-24s10.7-24 24-24z"></path>
                  </svg>
                </div>
              </a>
            </div>
            {scopes.map((scope, index) => {
    return <span class="flex items-center px-2 py-0.5 rounded-md bg-gray-100/50 dark:bg-white/5 text-gray-600 dark:text-gray-200 font-medium break-all" style={{
      lineHeight: "1rem",
      fontSize: "0.75rem",
      fontFamily: 'var(--font-jetbrains-mono), ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'
    }} data-component-part="field-info-pill" key={index}>
                  {scope}
                </span>;
  })}
          </div>
        </div>
      </div>
    </div>;
};

export const ApiReleaseLifecycle = ({releaseLifecycle = "GA"}) => {
  const lifecycleMap = {
    ea: "早期アクセス",
    ga: "一般提供",
    deprecated: "非推奨",
    planned: "計画中",
    beta: "ベータ"
  };
  const LIFECYCLE_THEMES = {
    info: {
      light: {
        bg: "lab(91.896% .077188 -6.94053)",
        text: "lab(36.091% 25.9241 -68.0384)"
      },
      dark: {
        bg: "lab(16.0426% 6.71726 -27.2409)",
        text: "lab(72.6029% 4.08953 -41.9669)"
      }
    },
    secondary: {
      light: {
        bg: "lab(90.8548% 11.3355 8.01476)",
        text: "lab(47.5286% 56.4238 43.4706)"
      },
      dark: {
        bg: "lab(16.3609% 37.191 25.6346)",
        text: "lab(71.881% 41.5 29.4839)"
      }
    },
    danger: {
      light: {
        bg: "lab(94.7916% -.0000298023 0)",
        text: "lab(54.3656% 0 -.0000119209)"
      },
      dark: {
        bg: "lab(13.232% 0 0)",
        text: "lab(51.6164% 0 0)"
      }
    }
  };
  const LIFECYCLE_THEME_MAP = {
    ea: "info",
    ga: "info",
    beta: "info",
    deprecated: "secondary",
    planned: "danger"
  };
  const lifecycle = releaseLifecycle.toLocaleLowerCase();
  const lifecycleText = lifecycleMap[lifecycle];
  if (!lifecycleText) {
    return null;
  }
  const theme = LIFECYCLE_THEMES[LIFECYCLE_THEME_MAP[lifecycle]];
  return <div>
      <div className="api-section-heading flex flex-col gap-y-4 w-full">
        <div className="flex items-baseline border-b pb-2.5 border-gray-100 dark:border-gray-800 w-full">
          <h4 className="api-section-heading-title flex-1 mb-0">リリースライフサイクル</h4>
        </div>
      </div>
      <div className="flex font-mono text-sm group/param-head param-head break-all relative mt-2.5" id="releaselifecycle-lifecycle">
        <div className="flex-1 flex flex-col content-start py-0.5 mr-5">
          <div className="flex items-center flex-wrap gap-2">
            <div className="absolute -top-1.5">
              <a href="#releaselifecycle-lifecycle" className="-ml-10 flex items-center opacity-0 border-0 group-hover/param-head:opacity-100 focus:opacity-100 focus:outline-0 py-2 [.expandable-content_&]:-ml-[2.1rem] group/link" aria-label="ヘッダーに移動">
                <div className="w-6 h-6 rounded-md flex items-center justify-center shadow-sm text-gray-400 dark:text-white/50 dark:bg-background-dark dark:brightness-[1.35] dark:ring-1 dark:hover:brightness-150 bg-white ring-1 ring-gray-400/30 dark:ring-gray-700/25 hover:ring-gray-400/60 dark:hover:ring-white/20 group-focus/link:border-2 group-focus/link:border-primary dark:group-focus/link:border-primary-light">
                  <svg xmlns="http://www.w3.org/2000/svg" fill="gray" height="12px" viewBox="0 0 576 512">
                    <path d="M0 256C0 167.6 71.6 96 160 96h72c13.3 0 24 10.7 24 24s-10.7 24-24 24H160C98.1 144 48 194.1 48 256s50.1 112 112 112h72c13.3 0 24 10.7 24 24s-10.7 24-24 24H160C71.6 416 0 344.4 0 256zm576 0c0 88.4-71.6 160-160 160H344c-13.3 0-24-10.7-24-24s10.7-24 24-24h72c61.9 0 112-50.1 112-112s-50.1-112-112-112H344c-13.3 0-24-10.7-24-24s10.7-24 24-24h72c88.4 0 160 71.6 160 160zM184 232H392c13.3 0 24 10.7 24 24s-10.7 24-24 24H184c-13.3 0-24-10.7-24-24s10.7-24 24-24z"></path>
                  </svg>
                </div>
              </a>
            </div>
            <span className="inline-flex items-center w-fit font-medium gap-1 py-0.5 px-2 rounded-md" style={{
    lineHeight: "1rem",
    fontSize: "0.75rem",
    fontFamily: 'var(--font-jetbrains-mono), ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',
    backgroundColor: `light-dark(${theme.light.bg}, ${theme.dark.bg})`,
    color: `light-dark(${theme.light.text}, ${theme.dark.text})`,
    borderColor: `light-dark(color-mix(in oklab, ${theme.light.text} 25%, transparent), color-mix(in oklab, ${theme.dark.text} 25%, transparent))`
  }}>
              {lifecycleText}
            </span>
          </div>
        </div>
      </div>
    </div>;
};

<ApiReleaseLifecycle releaseLifecycle="GA" />

<Scopes scopes={["create:me:authentication_methods"]} />


## OpenAPI

````yaml ja/docs/oas/myaccount/myaccount-api-oas.json POST /authentication-methods
openapi: 3.1.0
info:
  description: >-
    Auth0 My Account API
    には、ユーザーが自身のアカウント情報を管理するための専用エンドポイントのセットが用意されています。お客様は、これらの API
    を使用してアプリケーション内にセルフサービス機能を構築したり、ユーザーアカウントの詳細情報を段階的に追加したりできます。


    My Account API は、現在ログインしているユーザーのコンテキストで動作し、ユーザー向けアプリケーション内で直接使用できます。


    :::tip Auth0 ドメインとカスタムドメインの使い分け


    My Account API では、正規の Auth0
    ドメインまたはカスタムドメインを使用できますが、次の各処理を含むプロセス全体を通して、同じドメインを使用する必要があります。


    - アクセストークンの取得

    - audience 値の設定

    - My Account API エンドポイントの呼び出し


    詳しくは、[Custom Domains](https://auth0.com/docs/customize/custom-domains)
    を参照してください。


    :::


    ## My Account API を有効化する


    Auth0 Dashboard で、テナントの My Account API を有効化できます。


    1. Authentication > APIs に移動します。

    2. MyAccount API バナーを見つけます。

    3. Activate を選択します。


    ![](https://images.ctfassets.net/cdy7uua7fh8z/DGkDQNIHcegN8vtQyEvF3/a2e98b06867701a66fa1f1b3df1c996b/My_Account_API_-_Activate.png)


    デフォルトでは、My Account API は次のアプリケーション API アクセスポリシーで作成されます。


    `require_client_grant`（ユーザーフロー用）


    `deny_all`（クライアント（マシン間）フロー用）


    アプリケーションがユーザーに代わって My Account API
    にアクセスするには、そのアプリケーション用のクライアントグラントを明示的に作成する必要があります。これにより、そのアプリケーションが要求できる最大スコープを定義できます。あるいは、ユーザーアクセスフローのポリシーを
    allow_all に変更することもできます。これにより、テナント内の任意のアプリケーションが My Account API
    に対して任意のスコープを要求できるようになります。


    My Account API では機密性の高い情報や操作が公開されるため、Auth0 は、ユーザーアクセスフローで allow_all
    を使用することを推奨していません。My Account API
    では最小権限の原則に従い、アプリケーションが本当に必要なものにのみアクセスできるようにして、潜在的なセキュリティリスクを最小限に抑える必要があります。


    アプリケーションに最終的に付与される Permissions は、アプリケーション API
    アクセスポリシーで許可されたスコープ、エンドユーザーに割り当てられたロールベースアクセス制御（RBAC）の権限、およびユーザーの同意（該当する場合）の積集合によって決まります。


    :::info サポート対象フロー


    My Account API へのクライアントアクセスに対するアプリケーション API ポリシーは更新できません。つまり、Client
    Credentials フローを使用して My Account API にアクセスすることはできません。


    :::


    アプリケーション API アクセスポリシーと、それに関連付けられたクライアントグラントの管理方法について詳しくは、[Application Access
    to APIs: Client
    Grants](https://auth0.com/docs/get-started/applications/application-access-to-apis-client-grants)
    を参照してください。


    ## アクセストークンを取得する


    My Account API 用のアクセストークンは、自身の API 用のアクセストークンを取得するのと同じ方法で取得できます。


    :::info &nbsp

    My Account API で機密性の高い操作（認証方法の登録など）を許可する場合は、[多要素認証
    (MFA)](https://auth0.com/docs/secure/multi-factor-authentication)
    によって追加のセキュリティポリシーを適用するため、[Step-up
    Authentication](https://auth0.com/docs/secure/multi-factor-authentication/step-up-authentication)
    を使用することを強くお勧めします。

    :::


    Universal Login を使用している場合は、次の記事を参照してください。


    - [Call Your API Using the Authorization Code
    Flow](https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flow/call-your-api-using-the-authorization-code-flow)

    - [Call Your API Using the Authorization Code Flow with
    PKCE](https://auth0.com/docs/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce/call-your-api-using-the-authorization-code-flow-with-pkce)


    埋め込みログインを使用している場合は、次の記事を参照してください。


    - [Call Your API Using Resource Owner Password
    Flow](https://auth0.com/docs/get-started/authentication-and-authorization-flow/resource-owner-password-flow/call-your-api-using-resource-owner-password-flow)

    - [Login Flow with Native Passkeys
    API](https://auth0.com/docs/native-passkeys-api#login-flow)


    ## 例


    ### 認可コードフローを使用する Universal Login


    **ステップ 1: 認可コードをリクエストする**


    ```

    curl --request GET \
      --url 'https://{yourDomain}/authorize?response_type=code&client_id={yourClientId}&redirect_uri=%7ByourRedirectUri%7D&scope=create%3Ame%3Aauthentication_methods&offline_access=&audience=https%3A%2F%2F{yourDomain}%2Fme%2F'
    ```


    **ステップ 2: code をアクセストークンに交換する**


    ```

    curl --request POST \
      --url 'https://{yourDomain}/oauth/token' \
      --header 'content-type: application/json' \
      --data '{"grant_type": "authorization_code","client_id": "{yourClientId}","client_secret": "{yourClientSecret}","code": "{yourAuthorizationCode}","redirect_uri": "{yourRedirectUri}","audience": "{yourAudience}","scope": "create:me:authentication_methods","offline_access": ""}'
    ```


    ### ネイティブパスキーを使用する埋め込みログイン


    **ステップ 1: ログインチャレンジをリクエストする**


    ```

    curl --request POST \
      --url 'https://{yourDomain}/passkey/challenge' \
      --header 'content-type: application/json' \
      --data '{"client_id": "{yourClientId}"}'
    ```


    **ステップ 2: 既存のユーザーを認証する**


    ```

    curl --request POST \
      --url 'https://{yourDomain}/oauth/token' \
      --header 'content-type: application/json' \
      --data '{  "grant_type": "urn:okta:params:oauth:grant-type:webauthn",  "client_id": "{yourClientId}",  "scope": "create:me:authentication_methods offline_access",  "audience": "https://{yourDomain}/me/",  "auth_session": "{sessionIdFromTheFirstRequest}",  "authn_response": "{authenticatorResponse}"}'
    ```
  title: My Account
  version: '1.0'
servers:
  - url: https://{host}/me/v1
    variables:
      host:
        default: auth0.auth0.com
        description: カスタムまたは正規のホスト名
security: []
tags:
  - description: 認証要素
    name: factors
    x-displayName: Factors
  - description: 接続済みアカウント
    name: connected-accounts
    x-displayName: Connected Accounts
  - description: 認証方法
    name: authentication-methods
    x-displayName: Authentication Methods
  - description: 同意
    name: consents
    x-displayName: Consents
paths:
  /authentication-methods:
    post:
      tags:
        - authentication-methods
      summary: 対応している認証方法の登録を開始します。
      description: サポート対象の認証方法の登録を開始します。
      operationId: createAuthenticationMethod
      requestBody:
        content:
          application/json:
            examples:
              email:
                summary: OTP 用のメールアドレスを登録
                value:
                  email: user@example.com
                  type: email
              passkey:
                summary: パスキーを登録
                value:
                  type: passkey
              password:
                summary: パスワード認証情報を登録
                value:
                  type: password
              phone:
                summary: SMS/音声 OTP 用の電話番号を登録
                value:
                  phone_number: '+15551234567'
                  preferred_authentication_method: sms
                  type: phone
              push-notification:
                summary: プッシュ通知の認証要素を登録
                value:
                  type: push-notification
              recovery-code:
                summary: 回復コードを生成
                value:
                  type: recovery-code
              totp:
                summary: TOTP 認証アプリを登録
                value:
                  type: totp
            schema:
              $ref: '#/components/schemas/CreateAuthenticationMethodRequestContent'
      responses:
        '202':
          content:
            application/json:
              examples:
                email:
                  summary: メールアドレスの登録を開始しました
                  value:
                    auth_session: Fe26.2**05c400ed...
                    id: email|dev_XXXXXXXXXXXXXXXX
                passkey:
                  summary: パスキー登録を開始しました — WebAuthn の作成オプションを含みます
                  value:
                    auth_session: Fe26.2**05c400ed...
                    authn_params_public_key:
                      authenticatorSelection:
                        residentKey: required
                        userVerification: preferred
                      challenge: dGVzdC1jaGFsbGVuZ2U
                      pubKeyCredParams:
                        - alg: -7
                          type: public-key
                        - alg: -257
                          type: public-key
                      rp:
                        id: example.auth0.com
                        name: My Application
                      timeout: 60000
                      user:
                        displayName: User
                        id: YXV0aDB8NTA3ZjFmNzdiY2Y4NmNkNzk5NDM5MDEx
                        name: user@example.com
                password:
                  summary: パスワードの登録を開始しました — パスワードポリシーを含みます
                  value:
                    auth_session: Fe26.2**05c400ed...
                    id: password|new
                    policy:
                      complexity:
                        character_type_rule: three_of_four
                        character_types:
                          - lowercase
                          - uppercase
                          - number
                          - special
                        identical_characters: block
                        max_length_exceeded: truncate
                        min_length: 8
                        sequential_characters: block
                      dictionary:
                        active: true
                        default: en_10k
                      history:
                        active: true
                        size: 5
                      profile_data:
                        active: true
                        blocked_fields:
                          - name
                          - email
                phone:
                  summary: 電話番号の登録を開始しました
                  value:
                    auth_session: Fe26.2**05c400ed...
                    id: phone|dev_XXXXXXXXXXXXXXXX
                push-notification:
                  summary: プッシュ通知の登録を開始しました — QR コードデータを含みます
                  value:
                    auth_session: Fe26.2**05c400ed...
                    barcode_uri: >-
                      otpauth://totp/my-tenant:auth0%7C507f1f77bcf86cd799439011?secret=JBSWY3DPEHPK3PXP&issuer=my-tenant&algorithm=SHA1&digits=6&period=30
                    id: push-notification|dev_XXXXXXXXXXXXXXXX
                recovery-code:
                  summary: 回復コードを生成しました
                  value:
                    auth_session: Fe26.2**05c400ed...
                    id: recovery-code|dev_XXXXXXXXXXXXXXXX
                    recovery_code: ABCDEFGHIJKLMNOPQRSTUVWX
                totp:
                  summary: TOTP の登録を開始しました — QR コードデータを含みます
                  value:
                    auth_session: Fe26.2**05c400ed...
                    barcode_uri: >-
                      otpauth://totp/my-tenant:auth0%7C507f1f77bcf86cd799439011?secret=JBSWY3DPEHPK3PXP&issuer=my-tenant&algorithm=SHA1&digits=6&period=30
                    id: totp|dev_XXXXXXXXXXXXXXXX
                    manual_input_code: JBSWY3DPEHPK3PXP
              schema:
                $ref: '#/components/schemas/CreateAuthenticationMethodResponseContent'
          description: 登録を開始しました
          headers:
            Location:
              $ref: '#/components/headers/LocationHeader'
            x-ratelimit-limit:
              $ref: '#/components/headers/XRateLimitLimitHeader'
            x-ratelimit-remaining:
              $ref: '#/components/headers/XRateLimitRemainingHeader'
            x-ratelimit-reset:
              $ref: '#/components/headers/XRateLimitResetHeader'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
        '415':
          $ref: '#/components/responses/UnsupportedMediaType'
        '429':
          $ref: '#/components/responses/TooManyRequests'
      security:
        - Bearer-DPoP:
            - create:me:authentication_methods
      x-codeSamples: []
components:
  schemas:
    CreateAuthenticationMethodRequestContent:
      description: 認証方法を作成するためのリクエスト本文
      discriminator:
        mapping:
          email:
            $ref: '#/components/schemas/CreateEmailAuthenticationMethod'
          passkey:
            $ref: '#/components/schemas/CreatePasskeyAuthenticationMethod'
          password:
            $ref: '#/components/schemas/CreatePasswordAuthenticationMethod'
          phone:
            $ref: '#/components/schemas/CreatePhoneAuthenticationMethod'
          push-notification:
            $ref: '#/components/schemas/CreatePushNotificationAuthenticationMethod'
          recovery-code:
            $ref: '#/components/schemas/CreateRecoveryCodeAuthenticationMethod'
          totp:
            $ref: '#/components/schemas/CreateTotpAuthenticationMethod'
        propertyName: type
        x-openapi-typescript-ignore: true
      oneOf:
        - $ref: '#/components/schemas/CreatePasskeyAuthenticationMethod'
          title: passkey
        - $ref: '#/components/schemas/CreateTotpAuthenticationMethod'
          title: totp
        - $ref: '#/components/schemas/CreatePushNotificationAuthenticationMethod'
          title: push-notification
        - $ref: '#/components/schemas/CreateRecoveryCodeAuthenticationMethod'
          title: recovery-code
        - $ref: '#/components/schemas/CreateEmailAuthenticationMethod'
          title: email
        - $ref: '#/components/schemas/CreatePhoneAuthenticationMethod'
          title: phone
        - $ref: '#/components/schemas/CreatePasswordAuthenticationMethod'
          title: password
      type: object
    CreateAuthenticationMethodResponseContent:
      anyOf:
        - $ref: '#/components/schemas/PasskeyCreationResponse'
        - $ref: '#/components/schemas/WebAuthnCreationResponse'
        - $ref: '#/components/schemas/MfaBaseCreationResponse'
          title: Email/Phone enrollment information
        - $ref: '#/components/schemas/QrCodeCreationResponse'
        - $ref: '#/components/schemas/RecoveryCodeCreationResponse'
        - $ref: '#/components/schemas/PasswordCreationResponse'
    CreateEmailAuthenticationMethod:
      additionalProperties: false
      properties:
        email:
          description: ワンタイムコードの送信に使用するメールアドレス。
          type: string
        type:
          const: email
          default: email
          description: 認証方法のタイプ（認証要素）
          type: string
      required:
        - type
        - email
      title: Email enrollment payload
      type: object
    CreatePasskeyAuthenticationMethod:
      allOf:
        - $ref: '#/components/schemas/IdentityAuthenticationMethodBase'
        - properties:
            type:
              const: passkey
              default: passkey
              description: 認証方法のタイプ（認証要素）
              type: string
          required:
            - type
          type: object
      title: Passkey enrollment payload
    CreatePasswordAuthenticationMethod:
      allOf:
        - $ref: '#/components/schemas/IdentityAuthenticationMethodBase'
        - additionalProperties: false
          properties:
            connection: true
            identity_user_id: true
            type:
              const: password
              default: password
              description: 認証方法のタイプ（認証要素）
              type: string
          required:
            - type
          type: object
      title: Password authentication method creation payload
    CreatePhoneAuthenticationMethod:
      additionalProperties: false
      properties:
        phone_number:
          description: テキストメッセージおよび音声通話で確認コードを送信する送信先の電話番号。
          type: string
        preferred_authentication_method:
          $ref: '#/components/schemas/PhoneAuthenticationMethodEnum'
          description: 優先する通信方法。
        type:
          const: phone
          default: phone
          description: 認証方法のタイプ（認証要素）
          type: string
      required:
        - type
        - phone_number
      title: Phone enrollment payload
      type: object
    CreatePushNotificationAuthenticationMethod:
      additionalProperties: false
      properties:
        type:
          const: push-notification
          default: push-notification
          description: 認証方法のタイプ（認証要素）
          type: string
      required:
        - type
      title: Push Notification enrollment payload
      type: object
    CreateRecoveryCodeAuthenticationMethod:
      additionalProperties: false
      properties:
        type:
          const: recovery-code
          default: recovery-code
          description: 認証方法のタイプ（認証要素）
          type: string
      required:
        - type
      title: Recovery Code enrollment payload
      type: object
    CreateTotpAuthenticationMethod:
      additionalProperties: false
      properties:
        type:
          const: totp
          default: totp
          description: 認証方法のタイプ（認証要素）
          type: string
      required:
        - type
      title: TOTP enrollment payload
      type: object
    PasskeyCreationResponse:
      properties:
        auth_session:
          description: 登録の一意のセッション識別子。
          type: string
        authn_params_public_key:
          $ref: '#/components/schemas/PublicKeyCredentialCreationOptions'
      required:
        - auth_session
        - authn_params_public_key
      title: Passkey enrollment information
      type: object
    WebAuthnCreationResponse:
      allOf:
        - $ref: '#/components/schemas/MfaBaseCreationResponse'
        - properties:
            authn_params_public_key:
              $ref: '#/components/schemas/PublicKeyCredentialCreationOptions'
          required:
            - authn_params_public_key
          title: WebAuthn enrollment information
          type: object
    MfaBaseCreationResponse:
      properties:
        auth_session:
          description: 登録の一意のセッション識別子。
          type: string
        id:
          description: 認証方法の一意の識別子。
          type: string
      required:
        - id
        - auth_session
      type: object
    QrCodeCreationResponse:
      allOf:
        - $ref: '#/components/schemas/MfaBaseCreationResponse'
        - properties:
            barcode_uri:
              description: 認証要素でスキャンするQRコードのURI。
              type: string
            manual_input_code:
              description: QRコードを使用できない場合に認証要素に手動で入力するcode。
              type: string
          required:
            - barcode_uri
          title: TOTP/Push enrollment information
          type: object
    RecoveryCodeCreationResponse:
      allOf:
        - $ref: '#/components/schemas/MfaBaseCreationResponse'
        - properties:
            recovery_code:
              description: 回復コードの値。
              type: string
          required:
            - recovery_code
          title: Recovery Code enrollment information
          type: object
    PasswordCreationResponse:
      properties:
        auth_session:
          description: パスワード変更操作の一意のセッション識別子。
          type: string
        id:
          description: パスワード認証方法の一意の識別子。
          type: string
        policy:
          $ref: '#/components/schemas/PasswordAuthenticationMethodPolicy'
      required:
        - id
        - policy
        - auth_session
      title: Password enrollment information
      type: object
    ErrorResponse:
      additionalProperties: false
      properties:
        detail:
          type: string
        status:
          type: number
        title:
          type: string
        type:
          type: string
        validation_errors:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      required:
        - type
        - status
        - title
        - detail
      type: object
    IdentityAuthenticationMethodBase:
      properties:
        connection:
          $ref: '#/components/schemas/Connection'
        identity_user_id:
          $ref: '#/components/schemas/IdentityUserId'
      type: object
    PhoneAuthenticationMethodEnum:
      description: 電話ベースの認証で優先する認証方法
      enum:
        - sms
        - voice
      type: string
    PublicKeyCredentialCreationOptions:
      properties:
        authenticatorSelection:
          $ref: '#/components/schemas/AuthenticatorSelection'
        challenge:
          type: string
        pubKeyCredParams:
          example:
            - alg: -8
              type: public-key
            - alg: -7
              type: public-key
            - alg: -257
              type: public-key
          items:
            $ref: '#/components/schemas/PublicKeyCredentialParameter'
          type: array
        rp:
          $ref: '#/components/schemas/RelyingParty'
        timeout:
          example: 60000
          type: number
        user:
          $ref: '#/components/schemas/User'
      required:
        - challenge
        - pubKeyCredParams
        - rp
        - user
      type: object
    PasswordAuthenticationMethodPolicy:
      additionalProperties: false
      description: 柔軟な形式で表した接続のパスワードポリシー設定。
      properties:
        complexity:
          $ref: '#/components/schemas/PasswordComplexityPolicy'
        dictionary:
          $ref: '#/components/schemas/PasswordDictionaryPolicy'
        history:
          $ref: '#/components/schemas/PasswordHistoryPolicy'
        profile_data:
          $ref: '#/components/schemas/PasswordProfileDataPolicy'
      required:
        - complexity
        - profile_data
        - history
        - dictionary
      type: object
    ValidationError:
      additionalProperties: false
      properties:
        detail:
          type: string
        field:
          type: string
        pointer:
          type: string
        source:
          type: string
      required:
        - detail
      type: object
    Connection:
      description: データベース接続の名前
      maxLength: 128
      minLength: 1
      pattern: ^[a-zA-Z0-9-]+$
      type: string
    IdentityUserId:
      description: IDプロバイダーのユーザーID
      maxLength: 255
      minLength: 1
      pattern: ^\S+$
      type: string
    AuthenticatorSelection:
      additionalProperties: false
      properties:
        residentKey:
          $ref: '#/components/schemas/ResidentKeyEnum'
        userVerification:
          $ref: '#/components/schemas/UserVerificationEnum'
      type: object
    PublicKeyCredentialParameter:
      additionalProperties: false
      properties:
        alg:
          type: number
        type:
          $ref: '#/components/schemas/PublicKeyTypeEnum'
      required:
        - alg
        - type
      type: object
    RelyingParty:
      additionalProperties: false
      properties:
        id:
          type: string
        name:
          type: string
      required:
        - name
      type: object
    User:
      additionalProperties: false
      properties:
        displayName:
          type: string
        id:
          type: string
        name:
          type: string
      required:
        - id
        - name
        - displayName
      type: object
    PasswordComplexityPolicy:
      additionalProperties: false
      description: パスワードの複雑さの要件
      properties:
        character_type_rule:
          $ref: '#/components/schemas/PasswordCharacterTypeRuleEnum'
        character_types:
          description: 必須の文字種
          items:
            $ref: '#/components/schemas/PasswordCharacterTypeEnum'
          type: array
        identical_characters:
          $ref: '#/components/schemas/PasswordIdenticalCharactersEnum'
        max_length_exceeded:
          $ref: '#/components/schemas/PasswordMaxLengthExceededEnum'
        min_length:
          description: パスワードの最小長
          type: integer
        sequential_characters:
          $ref: '#/components/schemas/PasswordSequentialCharactersEnum'
      required:
        - min_length
        - character_types
        - character_type_rule
        - identical_characters
        - sequential_characters
        - max_length_exceeded
      type: object
    PasswordDictionaryPolicy:
      additionalProperties: false
      description: 脆弱なパスワードまたは禁止されたパスワードをブロックするための辞書チェック設定
      properties:
        active:
          description: 辞書チェックを有効にするかどうか
          type: boolean
        default:
          $ref: '#/components/schemas/PasswordDictionaryDefaultEnum'
      required:
        - active
        - default
      type: object
    PasswordHistoryPolicy:
      additionalProperties: false
      description: パスワード履歴の適用設定
      properties:
        active:
          description: パスワード履歴を適用するかどうか
          type: boolean
        size:
          description: 記憶して再利用を防止する過去のパスワード数
          type: integer
      required:
        - active
        - size
      type: object
    PasswordProfileDataPolicy:
      additionalProperties: false
      description: パスワード内で個人情報をブロックする設定
      properties:
        active:
          description: パスワード内の個人情報（名前、メールアドレスなど）をブロックするかどうか
          type: boolean
        blocked_fields:
          description: >-
            パスワードでブロックするユーザープロフィールのフィールド（例:
            'name'、'email'、'user_metadata.first'）
          items:
            type: string
          type: array
      required:
        - active
        - blocked_fields
      type: object
    ResidentKeyEnum:
      description: resident key の要件
      enum:
        - required
      type: string
    UserVerificationEnum:
      description: ユーザー検証の要件
      enum:
        - required
        - preferred
        - discouraged
      type: string
    PublicKeyTypeEnum:
      description: 公開鍵認証情報のタイプ
      enum:
        - public-key
      type: string
    PasswordCharacterTypeRuleEnum:
      description: パスワードの複雑さで文字種をどのように適用するか
      enum:
        - all
        - three_of_four
      type: string
    PasswordCharacterTypeEnum:
      description: パスワードの複雑さの要件における文字種
      enum:
        - uppercase
        - lowercase
        - number
        - special
      type: string
    PasswordIdenticalCharactersEnum:
      description: 同一文字の3文字以上の連続を許可するかどうか
      enum:
        - allow
        - block
      type: string
    PasswordMaxLengthExceededEnum:
      description: パスワードが最大長を超えた場合の動作
      enum:
        - truncate
        - error
      type: string
    PasswordSequentialCharactersEnum:
      description: 連続する文字を許可するかどうか
      enum:
        - allow
        - block
      type: string
    PasswordDictionaryDefaultEnum:
      description: 脆弱なパスワードのチェックに使用するデフォルトの辞書
      enum:
        - en_10k
        - en_100k
      type: string
  headers:
    LocationHeader:
      description: 認証方法リソースの URL。
      examples:
        create:
          summary: 新たに作成された未確認のパスキー認証方法の Location URL
          value: https://auth0.auth0.com/me/v1/authentication-methods/passkey%7Cnew
        verify:
          summary: 新たに確認されたパスキー認証方法の Location URL
          value: >-
            https://auth0.auth0.com/me/v1/authentication-methods/passkey%7Cdev_XXXXXXXXXXXXXXXX
      required: true
      schema:
        format: uri
        type: string
    XRateLimitLimitHeader:
      description: 制限ウィンドウ内で許可されるリクエストの最大数
      required: true
      schema:
        type: number
    XRateLimitRemainingHeader:
      description: リクエストが拒否されるまで、現在のウィンドウ内で残っているリクエスト数
      required: true
      schema:
        type: number
    XRateLimitResetHeader:
      description: バケットが補充される予定時刻（秒単位の UNIX タイムスタンプ）
      required: true
      schema:
        type: number
    RetryAfterHeader:
      description: 新しいリクエストを送信するまでにクライアントが待機すべき秒数
      required: true
      schema:
        type: number
    XAuth0ErrorKindHeader:
      description: レート制限の超過がグローバル（テナント単位の）制限であることを示す指標。
      schema:
        const: global-rate-limit
        type: string
  responses:
    BadRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
      description: スキーマに基づいて無効な入力です。
    Unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
      description: 認証されていません。
    Forbidden:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
      description: アクセスが禁止されています。
    UnsupportedMediaType:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
      description: サポートされていないメディアタイプです。
    TooManyRequests:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
      description: リクエストが多すぎます。
      headers:
        retry-after:
          $ref: '#/components/headers/RetryAfterHeader'
        x-auth0-error-kind:
          $ref: '#/components/headers/XAuth0ErrorKindHeader'
        x-ratelimit-limit:
          $ref: '#/components/headers/XRateLimitLimitHeader'
        x-ratelimit-remaining:
          $ref: '#/components/headers/XRateLimitRemainingHeader'
        x-ratelimit-reset:
          $ref: '#/components/headers/XRateLimitResetHeader'
  securitySchemes:
    Bearer-DPoP:
      description: Bearer トークンと DPoP トークンは、API の設定に応じてサポートされます
      scheme: bearer
      type: http

````