{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/CreateUserAuthenticationMethodRequestContent",
  "title": "CreateUserAuthenticationMethodRequestContent",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "type"
  ],
  "properties": {
    "type": {
      "$ref": "#/components/schemas/CreatedUserAuthenticationMethodTypeEnum"
    },
    "name": {
      "type": "string",
      "description": "A human-readable label to identify the authentication method."
    },
    "totp_secret": {
      "type": "string",
      "description": "Base32 encoded secret for TOTP generation."
    },
    "phone_number": {
      "type": "string",
      "description": "Applies to phone authentication methods only. The destination phone number used to send verification codes via text and voice.",
      "minLength": 2,
      "maxLength": 30
    },
    "email": {
      "type": "string",
      "description": "Applies to email authentication methods only. The email address used to send verification messages."
    },
    "preferred_authentication_method": {
      "$ref": "#/components/schemas/PreferredAuthenticationMethodEnum"
    },
    "key_id": {
      "type": "string",
      "description": "Applies to webauthn authentication methods only. The id of the credential."
    },
    "public_key": {
      "type": "string",
      "description": "Applies to webauthn authentication methods only. The public key, which is encoded as base64."
    },
    "relying_party_identifier": {
      "type": "string",
      "description": "Applies to webauthn authentication methods only. The relying party identifier.",
      "format": "hostname"
    }
  }
}