{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "User",
  "type": "object",
  "description": "Represents an Azure Active Directory user account. Inherits from directoryObject. Contains the user's profile information, organizational hierarchy, assigned licenses, and managed resources.",
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier for the user. Inherited from directoryObject. GUID format."
    },
    "displayName": {
      "type": "string",
      "description": "The name displayed in the address book for the user."
    },
    "givenName": {
      "type": "string",
      "description": "The given name (first name) of the user."
    },
    "surname": {
      "type": "string",
      "description": "The user's surname (family name or last name)."
    },
    "mail": {
      "type": "string",
      "description": "The SMTP address for the user. This property cannot contain accent characters."
    },
    "userPrincipalName": {
      "type": "string",
      "description": "The user principal name (UPN) of the user. The UPN is an Internet-style login name based on RFC 822. By convention, this should map to the user's email name."
    },
    "jobTitle": {
      "type": "string",
      "description": "The user's job title."
    },
    "department": {
      "type": "string",
      "description": "The name of the department in which the user works."
    },
    "officeLocation": {
      "type": "string",
      "description": "The office location in the user's place of business."
    },
    "companyName": {
      "type": "string",
      "description": "The company name associated with the user."
    },
    "businessPhones": {
      "type": "array",
      "description": "The telephone numbers for the user."
    },
    "mobilePhone": {
      "type": "string",
      "description": "The primary cellular telephone number for the user."
    },
    "streetAddress": {
      "type": "string",
      "description": "The street address of the user's place of business."
    },
    "city": {
      "type": "string",
      "description": "The city in which the user is located."
    },
    "state": {
      "type": "string",
      "description": "The state or province in the user's address."
    },
    "postalCode": {
      "type": "string",
      "description": "The postal code for the user's postal address."
    },
    "country": {
      "type": "string",
      "description": "The country or region in which the user is located; for example, US or UK."
    },
    "preferredLanguage": {
      "type": "string",
      "description": "The preferred language for the user. Should follow ISO 639-1 Code; for example en-US."
    },
    "accountEnabled": {
      "type": "boolean",
      "description": "True if the account is enabled; otherwise, false. Required when creating a user."
    },
    "createdDateTime": {
      "type": "string",
      "description": "The date and time the user was created in ISO 8601 format."
    },
    "lastSignInDateTime": {
      "type": "string",
      "description": "The date and time of the user's most recent interactive or non-interactive sign-in."
    },
    "usageLocation": {
      "type": "string",
      "description": "A two-letter country code (ISO 3166) required for users who will be assigned licenses. Not nullable."
    },
    "identities": {
      "type": "array",
      "description": "Represents the identities that can be used to sign in to this user account."
    },
    "assignedLicenses": {
      "type": "array",
      "description": "The licenses assigned to the user."
    },
    "memberOf": {
      "type": "array",
      "description": "The groups, directory roles, and administrative units the user is a member of."
    }
  }
}