Skip to main content

User Type Reference

This page is a reference for all settings, attribute types, and constraint modifiers available when defining a user type schema. For step-by-step instructions on creating and managing user types, see User Types.

Attribute Types

Each attribute in a user type schema has a type. ThunderID supports the following attribute types:

TypeDescription
stringText value. Supports required, unique, credential, enum, and regex constraints.
numberNumeric value. Supports required, unique, and enum constraints.
booleanTrue or false value. Supports required.
objectNested object with its own properties map. Supports required. Nested properties follow the same type rules.
arrayList of values. Requires an items definition specifying the item type (string, number, or object).

Attribute Constraint Modifiers

Modifiers add validation and behavior rules to an attribute. You can combine multiple modifiers on a single attribute.

ModifierApplies ToWhat It DoesWhen to Use
requiredAll typesThe attribute must be provided on creation. ThunderID rejects the request if the value is missing.Fields essential to the user's identity, such as email or username.
uniquestring, numberThe value must be unique across all users. ThunderID rejects creation or update if a duplicate exists.Natural identifiers like username, email, or employeeId.
credentialstring, numberThunderID hashes and stores the value securely. Never returned in any API response, even to administrators.Passwords or other sensitive secrets.
enumstring, numberRestricts the value to a fixed set of allowed options. ThunderID rejects any value not in the list.Controlled vocabularies like a department field limited to specific team names.
regexstringValidates the value against a regular expression on creation and update. ThunderID rejects values that do not match.Format rules such as email patterns or password complexity requirements.

Default Schemas

ThunderID includes two default user types with pre-defined schemas. You can use these as-is, customize them or create your own user types. See User Types for more information.

Person

An admin-managed user type. Self-registration is disabled and only an administrator can create these users.

AttributeTypeConstraintsNotes
usernamestringrequired, uniqueDisplay attribute
emailstringrequired, uniqueValidated against email format
email_verifiedboolean-
given_namestring-
family_namestring-
firstNamestring-
lastNamestring-
mobileNumberstring-
phone_numberstring-
phone_number_verifiedboolean-
substring-
namestring-
picturestring-
passwordstringrequired, credentialNever returned in responses

Customer

An end-user type designed for self-registration. Customers can sign up through an application's registration flow, or be created directly by an administrator.

AttributeTypeConstraintsNotes
usernamestringrequired, uniqueDisplay attribute
passwordstringrequired, credentialNever returned in responses
emailstringrequired, unique, regexValidated against email format
given_namestring-
family_namestring-
firstNamestring-
lastNamestring-
mobileNumberstring-
ThunderID LogoThunderID Logo

Product

DocsAPIsSDKs
© WSO2 LLC. All rights reserved.