{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/delinea/main/json-schema/delinea-configuration-local-user-passwords-model-schema.json",
  "title": "ConfigurationLocalUserPasswordsModel",
  "description": "Configuration Section for Local User Passwords",
  "x-generated": "2026-10-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/delinea-configuration-api-openapi.yml#/components/schemas/ConfigurationLocalUserPasswordsModel",
  "properties": {
    "allowUsersToResetForgottenPasswords": {
      "description": "Whether or not the local password can be reset by the user",
      "type": "boolean"
    },
    "enableLocalUserPasswordExpiration": {
      "description": "Indicates whether or not local users must change their password when it is reset or expires.",
      "type": [
        "boolean",
        "null"
      ]
    },
    "enableMinimumPasswordAge": {
      "description": "Local users cannot change their password until it meets this age",
      "type": [
        "boolean",
        "null"
      ]
    },
    "enablePasswordHistory": {
      "description": "Passwords cannot be reused when enabled and still in stored history",
      "type": [
        "boolean",
        "null"
      ]
    },
    "localUserPasswordExpirationDays": {
      "description": "How many days until the password expires",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "localUserPasswordExpirationHours": {
      "description": "How many hours until the password expires",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "localUserPasswordExpirationMinutes": {
      "description": "How many minutes until the password expires",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "minimumPasswordAgeDays": {
      "description": "How many days until password can be changed",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "minimumPasswordAgeHours": {
      "description": "How many hours until password can be changed",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "minimumPasswordAgeMinutes": {
      "description": "How many minutes until password can be changed",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "passwordHistoryItems": {
      "description": "How many passwords should be stored in history.",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "passwordHistoryItemsAll": {
      "description": "Keep all password history items.",
      "type": "boolean"
    },
    "passwordMinimumLength": {
      "description": "The minimum length required for local user passwords",
      "type": [
        "integer",
        "null"
      ],
      "format": "int32"
    },
    "passwordRequireLowercase": {
      "description": "Whether or not the local password must include a lowercase letter",
      "type": "boolean"
    },
    "passwordRequireNumbers": {
      "description": "Whether or not the local password must include a number",
      "type": "boolean"
    },
    "passwordRequireSymbols": {
      "description": "Whether or not the local password must include a symbol",
      "type": "boolean"
    },
    "passwordRequireUppercase": {
      "description": "Whether or not the local password must include an uppercase letter",
      "type": "boolean"
    }
  },
  "type": "object"
}