Skip to content

User Admin Create Dto

immichpy.client.generated.models.user_admin_create_dto.UserAdminCreateDto pydantic-model

Bases: BaseModel

UserAdminCreateDto

Show JSON schema:
{
  "$defs": {
    "UserAvatarColor": {
      "description": "User avatar color",
      "enum": [
        "primary",
        "pink",
        "red",
        "yellow",
        "blue",
        "green",
        "purple",
        "orange",
        "gray",
        "amber"
      ],
      "title": "UserAvatarColor",
      "type": "string"
    }
  },
  "description": "UserAdminCreateDto",
  "properties": {
    "avatarColor": {
      "anyOf": [
        {
          "$ref": "#/$defs/UserAvatarColor"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "email": {
      "description": "User email",
      "title": "Email",
      "type": "string"
    },
    "isAdmin": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Grant admin privileges",
      "title": "Isadmin"
    },
    "name": {
      "description": "User name",
      "title": "Name",
      "type": "string"
    },
    "notify": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Send notification email",
      "title": "Notify"
    },
    "password": {
      "description": "User password",
      "title": "Password",
      "type": "string"
    },
    "pinCode": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "PIN code",
      "examples": [
        "123456"
      ],
      "title": "Pincode"
    },
    "quotaSizeInBytes": {
      "anyOf": [
        {
          "maximum": 9007199254740991,
          "minimum": 0,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Storage quota in bytes",
      "title": "Quotasizeinbytes"
    },
    "shouldChangePassword": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Require password change on next login",
      "title": "Shouldchangepassword"
    },
    "storageLabel": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Storage label",
      "title": "Storagelabel"
    }
  },
  "required": [
    "email",
    "name",
    "password"
  ],
  "title": "UserAdminCreateDto",
  "type": "object"
}

Config:

  • validate_by_name: True
  • validate_by_alias: True
  • validate_assignment: True
  • protected_namespaces: ()

Fields:

Validators:

email pydantic-field

email: Annotated[str, Field(strict=True)]

User email

is_admin pydantic-field

is_admin: Optional[StrictBool] = None

Grant admin privileges

name pydantic-field

name: StrictStr

User name

notify pydantic-field

notify: Optional[StrictBool] = None

Send notification email

password pydantic-field

password: StrictStr

User password

pin_code pydantic-field

pin_code: Optional[Annotated[str, Field(strict=True)]] = None

PIN code

quota_size_in_bytes pydantic-field

quota_size_in_bytes: Optional[Annotated[int, Field(le=9007199254740991, strict=True, ge=0)]] = None

Storage quota in bytes

should_change_password pydantic-field

should_change_password: Optional[StrictBool] = None

Require password change on next login

storage_label pydantic-field

storage_label: Optional[StrictStr] = None

Storage label

email_validate_regular_expression pydantic-validator

email_validate_regular_expression(value)

Validates the regular expression

Source code in immichpy/client/generated/models/user_admin_create_dto.py
82
83
84
85
86
87
88
89
90
91
92
@field_validator("email", mode="before")
def email_validate_regular_expression(cls, value):
    """Validates the regular expression"""
    if isinstance(value, str) and not re.match(
        r"^[\p{L}\p{M}\p{N}.!#$%&\'*+\/=?^_`{|}~-]+@[\p{L}\p{N}](?:[\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}])?(?:\.[\p{L}\p{N}](?:[\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}])?)*$",
        value,
    ):
        raise ValueError(
            r"must validate the regular expression /^[\p{L}\p{M}\p{N}.!#$%&'*+\/=?^_`{|}~-]+@[\p{L}\p{N}](?:[\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}])?(?:\.[\p{L}\p{N}](?:[\p{L}\p{M}\p{N}-]{0,61}[\p{L}\p{M}\p{N}])?)*$/"
        )
    return value

from_dict classmethod

from_dict(obj: Optional[Dict[str, Any]]) -> Optional[Self]

Create an instance of UserAdminCreateDto from a dict

Source code in immichpy/client/generated/models/user_admin_create_dto.py
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
@classmethod
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
    """Create an instance of UserAdminCreateDto from a dict"""
    if obj is None:
        return None

    if not isinstance(obj, dict):
        return cls.model_validate(obj)

    _obj = cls.model_validate(
        {
            "avatarColor": obj.get("avatarColor"),
            "email": obj.get("email"),
            "isAdmin": obj.get("isAdmin"),
            "name": obj.get("name"),
            "notify": obj.get("notify"),
            "password": obj.get("password"),
            "pinCode": obj.get("pinCode"),
            "quotaSizeInBytes": obj.get("quotaSizeInBytes"),
            "shouldChangePassword": obj.get("shouldChangePassword"),
            "storageLabel": obj.get("storageLabel"),
        }
    )
    return _obj

from_json classmethod

from_json(json_str: str) -> Optional[Self]

Create an instance of UserAdminCreateDto from a JSON string

Source code in immichpy/client/generated/models/user_admin_create_dto.py
119
120
121
122
@classmethod
def from_json(cls, json_str: str) -> Optional[Self]:
    """Create an instance of UserAdminCreateDto from a JSON string"""
    return cls.from_dict(json.loads(json_str))

pin_code_validate_regular_expression pydantic-validator

pin_code_validate_regular_expression(value)

Validates the regular expression

Source code in immichpy/client/generated/models/user_admin_create_dto.py
 94
 95
 96
 97
 98
 99
100
101
102
@field_validator("pin_code", mode="before")
def pin_code_validate_regular_expression(cls, value):
    """Validates the regular expression"""
    if value is None:
        return value

    if isinstance(value, str) and not re.match(r"^\d{6}$", value):
        raise ValueError(r"must validate the regular expression /^\d{6}$/")
    return value

to_dict

to_dict() -> Dict[str, Any]

Return the dictionary representation of the model using alias.

This has the following differences from calling pydantic's self.model_dump(by_alias=True):

  • None is only added to the output dict for nullable fields that were set at model initialization. Other fields with value None are ignored.
Source code in immichpy/client/generated/models/user_admin_create_dto.py
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
def to_dict(self) -> Dict[str, Any]:
    """Return the dictionary representation of the model using alias.

    This has the following differences from calling pydantic's
    `self.model_dump(by_alias=True)`:

    * `None` is only added to the output dict for nullable fields that
      were set at model initialization. Other fields with value `None`
      are ignored.
    """
    excluded_fields: Set[str] = set([])

    _dict = self.model_dump(
        by_alias=True,
        exclude=excluded_fields,
        exclude_none=True,
    )
    # set to None if avatar_color (nullable) is None
    # and model_fields_set contains the field
    if self.avatar_color is None and "avatar_color" in self.model_fields_set:
        _dict["avatarColor"] = None

    # set to None if pin_code (nullable) is None
    # and model_fields_set contains the field
    if self.pin_code is None and "pin_code" in self.model_fields_set:
        _dict["pinCode"] = None

    # set to None if quota_size_in_bytes (nullable) is None
    # and model_fields_set contains the field
    if (
        self.quota_size_in_bytes is None
        and "quota_size_in_bytes" in self.model_fields_set
    ):
        _dict["quotaSizeInBytes"] = None

    # set to None if storage_label (nullable) is None
    # and model_fields_set contains the field
    if self.storage_label is None and "storage_label" in self.model_fields_set:
        _dict["storageLabel"] = None

    return _dict

to_json

to_json() -> str

Returns the JSON representation of the model using alias

Source code in immichpy/client/generated/models/user_admin_create_dto.py
115
116
117
def to_json(self) -> str:
    """Returns the JSON representation of the model using alias"""
    return json.dumps(to_jsonable_python(self.to_dict()))

to_str

to_str() -> str

Returns the string representation of the model using alias

Source code in immichpy/client/generated/models/user_admin_create_dto.py
111
112
113
def to_str(self) -> str:
    """Returns the string representation of the model using alias"""
    return pprint.pformat(self.model_dump(by_alias=True))