{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/azure-ad/json-schema/azure-ad-microsoft-graph-user-settings-schema.json",
  "title": "microsoft.graph.userSettings",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/azure-ad-users-usersettings-api-openapi.yml#/components/schemas/microsoft.graph.userSettings",
  "allOf": [
    {
      "$ref": "#/$defs/microsoft.graph.entity"
    },
    {
      "title": "userSettings",
      "type": "object",
      "properties": {
        "contributionToContentDiscoveryAsOrganizationDisabled": {
          "type": "boolean",
          "description": "Reflects the organization level setting controlling delegate access to the trending API. When set to true, the organization doesn't have access to Office Delve. The relevancy of the content displayed in Microsoft 365, for example in Suggested sites in SharePoint Home and the Discover view in OneDrive for work or school is affected for the whole organization. This setting is read-only and can only be changed by administrators in the SharePoint admin center."
        },
        "contributionToContentDiscoveryDisabled": {
          "type": "boolean",
          "description": "When set to true, the delegate access to the user's trending API is disabled. When set to true, documents in the user's Office Delve are disabled. When set to true, the relevancy of the content displayed in Microsoft 365, for example in Suggested sites in SharePoint Home and the Discover view in OneDrive for work or school is affected. Users can control this setting in Office Delve."
        },
        "exchange": {
          "$ref": "#/$defs/microsoft.graph.exchangeSettings"
        },
        "itemInsights": {
          "$ref": "#/$defs/microsoft.graph.userInsightsSettings"
        },
        "shiftPreferences": {
          "$ref": "#/$defs/microsoft.graph.shiftPreferences"
        },
        "storage": {
          "$ref": "#/$defs/microsoft.graph.userStorage"
        },
        "windows": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.windowsSetting"
          },
          "description": "The Windows settings of the user stored in the cloud.",
          "x-ms-navigationProperty": true
        },
        "workHoursAndLocations": {
          "$ref": "#/$defs/microsoft.graph.workHoursAndLocationsSetting"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    }
  ],
  "$defs": {
    "microsoft.graph.changeTrackedEntity": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "changeTrackedEntity",
          "type": "object",
          "properties": {
            "createdBy": {
              "$ref": "#/$defs/microsoft.graph.identitySet"
            },
            "createdDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z",
              "format": "date-time",
              "readOnly": true
            },
            "lastModifiedBy": {
              "$ref": "#/$defs/microsoft.graph.identitySet"
            },
            "lastModifiedDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "The Timestamp type represents date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z",
              "format": "date-time",
              "readOnly": true
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.dateTimeTimeZone": {
      "title": "dateTimeTimeZone",
      "type": "object",
      "properties": {
        "dateTime": {
          "type": "string",
          "description": "A single point of time in a combined date and time representation ({date}T{time}; for example, 2017-08-29T04:00:00.0000000)."
        },
        "timeZone": {
          "type": [
            "string",
            "null"
          ],
          "description": "Represents a time zone, for example, 'Pacific Standard Time'. See below for more possible values."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.dayOfWeek": {
      "title": "dayOfWeek",
      "enum": [
        "sunday",
        "monday",
        "tuesday",
        "wednesday",
        "thursday",
        "friday",
        "saturday"
      ],
      "type": "string"
    },
    "microsoft.graph.entity": {
      "title": "entity",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for an entity. Read-only."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.exchangeSettings": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "exchangeSettings",
          "type": "object",
          "properties": {
            "primaryMailboxId": {
              "type": [
                "string",
                "null"
              ],
              "description": "The unique identifier for the user's primary mailbox."
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.identity": {
      "title": "identity",
      "type": "object",
      "properties": {
        "displayName": {
          "type": [
            "string",
            "null"
          ],
          "description": "The display name of the identity.For drive items, the display name might not always be available or up to date. For example, if a user changes their display name the API might show the new value in a future response, but the items associated with the user don't show up as changed when using delta."
        },
        "id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Unique identifier for the identity or actor. For example, in the access reviews decisions API, this property might record the id of the principal, that is, the group, user, or application that's subject to review."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.identitySet": {
      "title": "identitySet",
      "type": "object",
      "properties": {
        "application": {
          "$ref": "#/$defs/microsoft.graph.identity"
        },
        "device": {
          "$ref": "#/$defs/microsoft.graph.identity"
        },
        "user": {
          "$ref": "#/$defs/microsoft.graph.identity"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.maxWorkLocationDetails": {
      "title": "maxWorkLocationDetails",
      "enum": [
        "unknown",
        "none",
        "approximate",
        "specific",
        "unknownFutureValue"
      ],
      "type": "string"
    },
    "microsoft.graph.patternedRecurrence": {
      "title": "patternedRecurrence",
      "type": "object",
      "properties": {
        "pattern": {
          "$ref": "#/$defs/microsoft.graph.recurrencePattern"
        },
        "range": {
          "$ref": "#/$defs/microsoft.graph.recurrenceRange"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.recurrencePattern": {
      "title": "recurrencePattern",
      "type": "object",
      "properties": {
        "dayOfMonth": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The day of the month on which the event occurs. Required if type is absoluteMonthly or absoluteYearly.",
          "format": "int32"
        },
        "daysOfWeek": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.dayOfWeek"
          },
          "description": "A collection of the days of the week on which the event occurs. The possible values are: sunday, monday, tuesday, wednesday, thursday, friday, saturday. If type is relativeMonthly or relativeYearly, and daysOfWeek specifies more than one day, the event falls on the first day that satisfies the pattern.  Required if type is weekly, relativeMonthly, or relativeYearly."
        },
        "firstDayOfWeek": {
          "$ref": "#/$defs/microsoft.graph.dayOfWeek"
        },
        "index": {
          "$ref": "#/$defs/microsoft.graph.weekIndex"
        },
        "interval": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The number of units between occurrences, where units can be in days, weeks, months, or years, depending on the type. Required.",
          "format": "int32"
        },
        "month": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The month in which the event occurs.  This is a number from 1 to 12.",
          "format": "int32"
        },
        "type": {
          "$ref": "#/$defs/microsoft.graph.recurrencePatternType"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.recurrencePatternType": {
      "title": "recurrencePatternType",
      "enum": [
        "daily",
        "weekly",
        "absoluteMonthly",
        "relativeMonthly",
        "absoluteYearly",
        "relativeYearly"
      ],
      "type": "string"
    },
    "microsoft.graph.recurrenceRange": {
      "title": "recurrenceRange",
      "type": "object",
      "properties": {
        "endDate": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$",
          "type": [
            "string",
            "null"
          ],
          "description": "The date to stop applying the recurrence pattern. Depending on the recurrence pattern of the event, the last occurrence of the meeting may not be this date. Required if type is endDate.",
          "format": "date"
        },
        "numberOfOccurrences": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The number of times to repeat the event. Required and must be positive if type is numbered.",
          "format": "int32"
        },
        "recurrenceTimeZone": {
          "type": [
            "string",
            "null"
          ],
          "description": "Time zone for the startDate and endDate properties. Optional. If not specified, the time zone of the event is used."
        },
        "startDate": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$",
          "type": [
            "string",
            "null"
          ],
          "description": "The date to start applying the recurrence pattern. The first occurrence of the meeting may be this date or later, depending on the recurrence pattern of the event. Must be the same value as the start property of the recurring event. Required.",
          "format": "date"
        },
        "type": {
          "$ref": "#/$defs/microsoft.graph.recurrenceRangeType"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.recurrenceRangeType": {
      "title": "recurrenceRangeType",
      "enum": [
        "endDate",
        "noEnd",
        "numbered"
      ],
      "type": "string"
    },
    "microsoft.graph.serviceStorageQuotaBreakdown": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.storageQuotaBreakdown"
        },
        {
          "title": "serviceStorageQuotaBreakdown",
          "type": "object",
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.shiftAvailability": {
      "title": "shiftAvailability",
      "type": "object",
      "properties": {
        "recurrence": {
          "$ref": "#/$defs/microsoft.graph.patternedRecurrence"
        },
        "timeSlots": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.timeRange"
          },
          "description": "The time slot(s) preferred by the user."
        },
        "timeZone": {
          "type": [
            "string",
            "null"
          ],
          "description": "Specifies the time zone for the indicated time."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.shiftPreferences": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.changeTrackedEntity"
        },
        {
          "title": "shiftPreferences",
          "type": "object",
          "properties": {
            "availability": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.shiftAvailability"
              },
              "description": "Availability of the user to be scheduled for work and its recurrence pattern."
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.storageQuotaBreakdown": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "storageQuotaBreakdown",
          "type": "object",
          "properties": {
            "displayName": {
              "type": [
                "string",
                "null"
              ]
            },
            "manageWebUrl": {
              "type": [
                "string",
                "null"
              ]
            },
            "used": {
              "type": [
                "number",
                "null"
              ],
              "format": "int64"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.timeOffDetails": {
      "title": "timeOffDetails",
      "type": "object",
      "properties": {
        "isAllDay": {
          "type": "boolean",
          "description": "Indicates whether the time-off entry spans the entire day."
        },
        "subject": {
          "type": [
            "string",
            "null"
          ],
          "description": "The subject or reason for the time-off entry."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.timeRange": {
      "title": "timeRange",
      "type": "object",
      "properties": {
        "endTime": {
          "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?$",
          "type": [
            "string",
            "null"
          ],
          "description": "End time for the time range.",
          "format": "time"
        },
        "startTime": {
          "pattern": "^([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?$",
          "type": [
            "string",
            "null"
          ],
          "description": "Start time for the time range.",
          "format": "time"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.unifiedStorageQuota": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "unifiedStorageQuota",
          "type": "object",
          "properties": {
            "deleted": {
              "type": [
                "number",
                "null"
              ],
              "format": "int64"
            },
            "manageWebUrl": {
              "type": [
                "string",
                "null"
              ]
            },
            "remaining": {
              "type": [
                "number",
                "null"
              ],
              "format": "int64"
            },
            "state": {
              "type": [
                "string",
                "null"
              ]
            },
            "total": {
              "type": [
                "number",
                "null"
              ],
              "format": "int64"
            },
            "used": {
              "type": [
                "number",
                "null"
              ],
              "format": "int64"
            },
            "services": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.serviceStorageQuotaBreakdown"
              },
              "x-ms-navigationProperty": true
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.userInsightsSettings": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "userInsightsSettings",
          "type": "object",
          "properties": {
            "isEnabled": {
              "type": "boolean",
              "description": "True if the user's itemInsights and meeting hours insights are enabled; false if the user's itemInsights and meeting hours insights are disabled. The default value is true. Optional."
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.userStorage": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "userStorage",
          "type": "object",
          "properties": {
            "quota": {
              "$ref": "#/$defs/microsoft.graph.unifiedStorageQuota"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.weekIndex": {
      "title": "weekIndex",
      "enum": [
        "first",
        "second",
        "third",
        "fourth",
        "last"
      ],
      "type": "string"
    },
    "microsoft.graph.windowsSetting": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "windowsSetting",
          "type": "object",
          "properties": {
            "payloadType": {
              "type": [
                "string",
                "null"
              ],
              "description": "The type of setting payloads contained in the instances navigation property."
            },
            "settingType": {
              "$ref": "#/$defs/microsoft.graph.windowsSettingType"
            },
            "windowsDeviceId": {
              "type": [
                "string",
                "null"
              ],
              "description": "A unique identifier for the device the setting might belong to if it is of the settingType backup."
            },
            "instances": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.windowsSettingInstance"
              },
              "description": "A collection of setting values for a given windowsSetting.",
              "x-ms-navigationProperty": true
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.windowsSettingInstance": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "windowsSettingInstance",
          "type": "object",
          "properties": {
            "createdDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": "string",
              "description": "Set by the server. Represents the dateTime in UTC when the object was created on the server.",
              "format": "date-time"
            },
            "expirationDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": "string",
              "description": "Set by the server. The object expires at the specified dateTime in UTC, making it unavailable after that time.",
              "format": "date-time"
            },
            "lastModifiedDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "Set by the server if not provided in the request from the Windows client device. Refers to the user's Windows device that modified the object at the specified dateTime in UTC.",
              "format": "date-time"
            },
            "payload": {
              "type": "string",
              "description": "Base64-encoded JSON setting value."
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.windowsSettingType": {
      "title": "windowsSettingType",
      "enum": [
        "roaming",
        "backup",
        "unknownFutureValue"
      ],
      "type": "string"
    },
    "microsoft.graph.workHoursAndLocationsSetting": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "workHoursAndLocationsSetting",
          "type": "object",
          "properties": {
            "maxSharedWorkLocationDetails": {
              "$ref": "#/$defs/microsoft.graph.maxWorkLocationDetails"
            },
            "occurrences": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.workPlanOccurrence"
              },
              "description": "Collection of work plan occurrences.",
              "x-ms-navigationProperty": true
            },
            "recurrences": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.workPlanRecurrence"
              },
              "description": "Collection of recurring work plans defined by the user.",
              "x-ms-navigationProperty": true
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.workLocationType": {
      "title": "workLocationType",
      "enum": [
        "unspecified",
        "office",
        "remote",
        "timeOff",
        "unknownFutureValue"
      ],
      "type": "string"
    },
    "microsoft.graph.workPlanOccurrence": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "workPlanOccurrence",
          "type": "object",
          "properties": {
            "end": {
              "$ref": "#/$defs/microsoft.graph.dateTimeTimeZone"
            },
            "placeId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of a place from the Microsoft Graph Places Directory API. Only applicable when workLocationType is set to office."
            },
            "recurrenceId": {
              "type": [
                "string",
                "null"
              ],
              "description": "The identifier of the parent recurrence pattern that generated this occurrence. The value is null for time-off occurrences because they don't have a parent recurrence."
            },
            "start": {
              "$ref": "#/$defs/microsoft.graph.dateTimeTimeZone"
            },
            "timeOffDetails": {
              "$ref": "#/$defs/microsoft.graph.timeOffDetails"
            },
            "workLocationType": {
              "$ref": "#/$defs/microsoft.graph.workLocationType"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.workPlanRecurrence": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "workPlanRecurrence",
          "type": "object",
          "properties": {
            "end": {
              "$ref": "#/$defs/microsoft.graph.dateTimeTimeZone"
            },
            "placeId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of a place from the Microsoft Graph Places Directory API. Only applicable when workLocationType is set to office."
            },
            "recurrence": {
              "$ref": "#/$defs/microsoft.graph.patternedRecurrence"
            },
            "start": {
              "$ref": "#/$defs/microsoft.graph.dateTimeTimeZone"
            },
            "workLocationType": {
              "$ref": "#/$defs/microsoft.graph.workLocationType"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    }
  }
}