Skip to main content
This page describes the core objects for managing users, authentication, and permissions in Wisdom AI. These objects provide comprehensive capabilities for handling authentication, setting preferences, and implementing permission systems to control access to resources. The Core Objects are: The Enums are: The Scalar Types are:

Core Objects

User

ID!
required
A unique identifier for the user.
String!
required
The user’s email address.
String
The user’s first name.
String
The user’s last name.
String!
required
The user’s display name (typically first name + last name or email).
String
URL to the user’s avatar image.
UserRole!
required
The user’s role in the system.
UserStatus!
required
The current status of the user account.
DateTime!
required
The date and time when the user account was created.
DateTime!
required
The date and time when the user account was last updated.
DateTime
The date and time when the user last logged in.
UserPreferences
The user’s personal preferences and settings.
[Permission!]
The permissions granted to this user.

UserPreferences

Theme
The user’s preferred UI theme.
String
The user’s preferred language code.
String
The user’s timezone.
NotificationPreferences
The user’s notification preferences.
ID
The ID of the user’s default domain.

NotificationPreferences

Boolean!
required
Whether to receive email notifications.
Boolean!
required
Whether to receive in-app notifications.
Boolean!
required
Whether to receive digest notifications.
NotificationFrequency!
required
How frequently to receive notifications.

Permission

ID!
required
A unique identifier for the permission.
String!
required
The name of the permission.
String
A description of what the permission allows.
String
The resource this permission applies to.
String!
required
The action this permission allows.
PermissionScope
The scope of the permission.

Enums

UserRole

The role of a user in the system defines their level of access and capabilities. Here are the values and their description:

UserStatus

The status of a user account indicates its current operational state. Here are the values and their description:

Theme

UI theme options allow users to customize the appearance of the interface. Here are the values and their description:

NotificationFrequency

Frequency options for notifications determine how often users receive alerts. Here are the values and their description:

PermissionScope

The scope of a permission defines the level at which it applies within the system. Here are the values and their description:

Scalar Types

DateTime

A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the date-time format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.

JSON

The JSON scalar type represents JSON values as specified by ECMA-404.

ID

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable.

String

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

Boolean

The Boolean scalar type represents true or false.

Int

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

Additional Resources

Queries

Learn how to query user data