Asset Response Dto
immichpy.client.generated.models.asset_response_dto.AssetResponseDto
pydantic-model
Bases: BaseModel
AssetResponseDto
Show JSON schema:
{
"$defs": {
"AssetStackResponseDto": {
"description": "AssetStackResponseDto",
"properties": {
"assetCount": {
"description": "Number of assets in stack",
"maximum": 9007199254740991,
"minimum": 0,
"title": "Assetcount",
"type": "integer"
},
"id": {
"description": "Stack ID",
"format": "uuid",
"title": "Id",
"type": "string"
},
"primaryAssetId": {
"description": "Primary asset ID",
"format": "uuid",
"title": "Primaryassetid",
"type": "string"
}
},
"required": [
"assetCount",
"id",
"primaryAssetId"
],
"title": "AssetStackResponseDto",
"type": "object"
},
"AssetTypeEnum": {
"description": "Asset type",
"enum": [
"IMAGE",
"VIDEO",
"AUDIO",
"OTHER"
],
"title": "AssetTypeEnum",
"type": "string"
},
"AssetVisibility": {
"description": "Asset visibility",
"enum": [
"archive",
"timeline",
"hidden",
"locked"
],
"title": "AssetVisibility",
"type": "string"
},
"ExifResponseDto": {
"description": "EXIF response",
"properties": {
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "City name",
"title": "City"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Country name",
"title": "Country"
},
"dateTimeOriginal": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Original date/time",
"title": "Datetimeoriginal"
},
"description": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Image description",
"title": "Description"
},
"exifImageHeight": {
"anyOf": [
{
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Image height in pixels",
"title": "Exifimageheight"
},
"exifImageWidth": {
"anyOf": [
{
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Image width in pixels",
"title": "Exifimagewidth"
},
"exposureTime": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Exposure time",
"title": "Exposuretime"
},
"fNumber": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "F-number (aperture)",
"title": "Fnumber"
},
"fileSizeInByte": {
"anyOf": [
{
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "File size in bytes",
"title": "Filesizeinbyte"
},
"focalLength": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Focal length in mm",
"title": "Focallength"
},
"iso": {
"anyOf": [
{
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "ISO sensitivity",
"title": "Iso"
},
"latitude": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "GPS latitude",
"title": "Latitude"
},
"lensModel": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Lens model",
"title": "Lensmodel"
},
"longitude": {
"anyOf": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "GPS longitude",
"title": "Longitude"
},
"make": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Camera make",
"title": "Make"
},
"model": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Camera model",
"title": "Model"
},
"modifyDate": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Modification date/time",
"title": "Modifydate"
},
"orientation": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Image orientation",
"title": "Orientation"
},
"projectionType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Projection type",
"title": "Projectiontype"
},
"rating": {
"anyOf": [
{
"maximum": 5,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Rating",
"title": "Rating"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "State/province name",
"title": "State"
},
"timeZone": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Time zone",
"title": "Timezone"
}
},
"title": "ExifResponseDto",
"type": "object"
},
"PersonResponseDto": {
"description": "PersonResponseDto",
"properties": {
"birthDate": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"description": "Person date of birth",
"title": "Birthdate"
},
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Person color (hex)",
"title": "Color"
},
"id": {
"description": "Person ID",
"format": "uuid",
"title": "Id",
"type": "string"
},
"isFavorite": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Is favorite",
"title": "Isfavorite"
},
"isHidden": {
"description": "Is hidden",
"title": "Ishidden",
"type": "boolean"
},
"name": {
"description": "Person name",
"title": "Name",
"type": "string"
},
"thumbnailPath": {
"description": "Thumbnail path",
"title": "Thumbnailpath",
"type": "string"
},
"updatedAt": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Last update date",
"title": "Updatedat"
}
},
"required": [
"birthDate",
"id",
"isHidden",
"name",
"thumbnailPath"
],
"title": "PersonResponseDto",
"type": "object"
},
"TagResponseDto": {
"description": "TagResponseDto",
"properties": {
"color": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Tag color (hex)",
"title": "Color"
},
"createdAt": {
"description": "Creation date",
"format": "date-time",
"title": "Createdat",
"type": "string"
},
"id": {
"description": "Tag ID",
"format": "uuid",
"title": "Id",
"type": "string"
},
"name": {
"description": "Tag name",
"title": "Name",
"type": "string"
},
"parentId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Parent tag ID",
"title": "Parentid"
},
"updatedAt": {
"description": "Last update date",
"format": "date-time",
"title": "Updatedat",
"type": "string"
},
"value": {
"description": "Tag value (full path)",
"title": "Value",
"type": "string"
}
},
"required": [
"createdAt",
"id",
"name",
"updatedAt",
"value"
],
"title": "TagResponseDto",
"type": "object"
},
"UserAvatarColor": {
"description": "User avatar color",
"enum": [
"primary",
"pink",
"red",
"yellow",
"blue",
"green",
"purple",
"orange",
"gray",
"amber"
],
"title": "UserAvatarColor",
"type": "string"
},
"UserResponseDto": {
"description": "UserResponseDto",
"properties": {
"avatarColor": {
"$ref": "#/$defs/UserAvatarColor"
},
"email": {
"description": "User email",
"title": "Email",
"type": "string"
},
"id": {
"description": "User ID",
"format": "uuid",
"title": "Id",
"type": "string"
},
"name": {
"description": "User name",
"title": "Name",
"type": "string"
},
"profileChangedAt": {
"description": "Profile change date",
"format": "date-time",
"title": "Profilechangedat",
"type": "string"
},
"profileImagePath": {
"description": "Profile image path",
"title": "Profileimagepath",
"type": "string"
}
},
"required": [
"avatarColor",
"email",
"id",
"name",
"profileChangedAt",
"profileImagePath"
],
"title": "UserResponseDto",
"type": "object"
}
},
"description": "AssetResponseDto",
"properties": {
"checksum": {
"description": "Base64 encoded SHA1 hash",
"title": "Checksum",
"type": "string"
},
"createdAt": {
"description": "The UTC timestamp when the asset was originally uploaded to Immich.",
"format": "date-time",
"title": "Createdat",
"type": "string"
},
"duplicateId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Duplicate group ID",
"title": "Duplicateid"
},
"duration": {
"anyOf": [
{
"maximum": 2147483647,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"description": "Video/gif duration in milliseconds (null for static images)",
"title": "Duration"
},
"exifInfo": {
"anyOf": [
{
"$ref": "#/$defs/ExifResponseDto"
},
{
"type": "null"
}
],
"default": null
},
"fileCreatedAt": {
"description": "The actual UTC timestamp when the file was created/captured, preserving timezone information. This is the authoritative timestamp for chronological sorting within timeline groups. Combined with timezone data, this can be used to determine the exact moment the photo was taken.",
"format": "date-time",
"title": "Filecreatedat",
"type": "string"
},
"fileModifiedAt": {
"description": "The UTC timestamp when the file was last modified on the filesystem. This reflects the last time the physical file was changed, which may be different from when the photo was originally taken.",
"format": "date-time",
"title": "Filemodifiedat",
"type": "string"
},
"hasMetadata": {
"description": "Whether asset has metadata",
"title": "Hasmetadata",
"type": "boolean"
},
"height": {
"anyOf": [
{
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"description": "Asset height",
"title": "Height"
},
"id": {
"description": "Asset ID",
"format": "uuid",
"title": "Id",
"type": "string"
},
"isArchived": {
"description": "Is archived",
"title": "Isarchived",
"type": "boolean"
},
"isEdited": {
"description": "Is edited",
"title": "Isedited",
"type": "boolean"
},
"isFavorite": {
"description": "Is favorite",
"title": "Isfavorite",
"type": "boolean"
},
"isOffline": {
"description": "Is offline",
"title": "Isoffline",
"type": "boolean"
},
"isTrashed": {
"description": "Is trashed",
"title": "Istrashed",
"type": "boolean"
},
"libraryId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Library ID",
"title": "Libraryid"
},
"livePhotoVideoId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Live photo video ID",
"title": "Livephotovideoid"
},
"localDateTime": {
"description": "The local date and time when the photo/video was taken, derived from EXIF metadata. This represents the photographer's local time regardless of timezone, stored as a timezone-agnostic timestamp. Used for timeline grouping by \"local\" days and months.",
"format": "date-time",
"title": "Localdatetime",
"type": "string"
},
"originalFileName": {
"description": "Original file name",
"title": "Originalfilename",
"type": "string"
},
"originalMimeType": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Original MIME type",
"title": "Originalmimetype"
},
"originalPath": {
"description": "Original file path",
"title": "Originalpath",
"type": "string"
},
"owner": {
"anyOf": [
{
"$ref": "#/$defs/UserResponseDto"
},
{
"type": "null"
}
],
"default": null
},
"ownerId": {
"description": "Owner user ID",
"format": "uuid",
"title": "Ownerid",
"type": "string"
},
"people": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/PersonResponseDto"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "People"
},
"resized": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Is resized",
"title": "Resized"
},
"stack": {
"anyOf": [
{
"$ref": "#/$defs/AssetStackResponseDto"
},
{
"type": "null"
}
],
"default": null
},
"tags": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/TagResponseDto"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Tags"
},
"thumbhash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Thumbhash for thumbnail generation (base64) also used as the c query param for thumbnail cache busting.",
"title": "Thumbhash"
},
"type": {
"$ref": "#/$defs/AssetTypeEnum"
},
"updatedAt": {
"description": "The UTC timestamp when the asset record was last updated in the database. This is automatically maintained by the database and reflects when any field in the asset was last modified.",
"format": "date-time",
"title": "Updatedat",
"type": "string"
},
"visibility": {
"$ref": "#/$defs/AssetVisibility"
},
"width": {
"anyOf": [
{
"maximum": 9007199254740991,
"minimum": 0,
"type": "integer"
},
{
"type": "null"
}
],
"description": "Asset width",
"title": "Width"
}
},
"required": [
"checksum",
"createdAt",
"duration",
"fileCreatedAt",
"fileModifiedAt",
"hasMetadata",
"height",
"id",
"isArchived",
"isEdited",
"isFavorite",
"isOffline",
"isTrashed",
"localDateTime",
"originalFileName",
"originalPath",
"ownerId",
"thumbhash",
"type",
"updatedAt",
"visibility",
"width"
],
"title": "AssetResponseDto",
"type": "object"
}
Config:
validate_by_name:Truevalidate_by_alias:Truevalidate_assignment:Trueprotected_namespaces:()
Fields:
-
checksum(StrictStr) -
created_at(datetime) -
duplicate_id(Optional[UUID]) -
duration(Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]]) -
exif_info(Optional[ExifResponseDto]) -
file_created_at(datetime) -
file_modified_at(datetime) -
has_metadata(StrictBool) -
height(Optional[Annotated[int, Field(le=9007199254740991, strict=True, ge=0)]]) -
id(UUID) -
is_archived(StrictBool) -
is_edited(StrictBool) -
is_favorite(StrictBool) -
is_offline(StrictBool) -
is_trashed(StrictBool) -
library_id(Optional[UUID]) -
live_photo_video_id(Optional[StrictStr]) -
local_date_time(datetime) -
original_file_name(StrictStr) -
original_mime_type(Optional[StrictStr]) -
original_path(StrictStr) -
owner(Optional[UserResponseDto]) -
owner_id(UUID) -
people(Optional[List[PersonResponseDto]]) -
resized(Optional[StrictBool]) -
stack(Optional[AssetStackResponseDto]) -
tags(Optional[List[TagResponseDto]]) -
thumbhash(Optional[StrictStr]) -
type(AssetTypeEnum) -
updated_at(datetime) -
visibility(AssetVisibility) -
width(Optional[Annotated[int, Field(le=9007199254740991, strict=True, ge=0)]])
Validators:
-
duplicate_id_validate_regular_expression→duplicate_id -
id_validate_regular_expression→id -
library_id_validate_regular_expression→library_id -
owner_id_validate_regular_expression→owner_id
checksum
pydantic-field
checksum: StrictStr
Base64 encoded SHA1 hash
created_at
pydantic-field
created_at: datetime
The UTC timestamp when the asset was originally uploaded to Immich.
duplicate_id
pydantic-field
duplicate_id: Optional[UUID] = None
Duplicate group ID
duration
pydantic-field
duration: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]]
Video/gif duration in milliseconds (null for static images)
file_created_at
pydantic-field
file_created_at: datetime
The actual UTC timestamp when the file was created/captured, preserving timezone information. This is the authoritative timestamp for chronological sorting within timeline groups. Combined with timezone data, this can be used to determine the exact moment the photo was taken.
file_modified_at
pydantic-field
file_modified_at: datetime
The UTC timestamp when the file was last modified on the filesystem. This reflects the last time the physical file was changed, which may be different from when the photo was originally taken.
has_metadata
pydantic-field
has_metadata: StrictBool
Whether asset has metadata
height
pydantic-field
height: Optional[Annotated[int, Field(le=9007199254740991, strict=True, ge=0)]]
Asset height
id
pydantic-field
id: UUID
Asset ID
is_archived
pydantic-field
is_archived: StrictBool
Is archived
is_edited
pydantic-field
is_edited: StrictBool
Is edited
is_favorite
pydantic-field
is_favorite: StrictBool
Is favorite
is_offline
pydantic-field
is_offline: StrictBool
Is offline
is_trashed
pydantic-field
is_trashed: StrictBool
Is trashed
library_id
pydantic-field
library_id: Optional[UUID] = None
Library ID
live_photo_video_id
pydantic-field
live_photo_video_id: Optional[StrictStr] = None
Live photo video ID
local_date_time
pydantic-field
local_date_time: datetime
The local date and time when the photo/video was taken, derived from EXIF metadata. This represents the photographer's local time regardless of timezone, stored as a timezone-agnostic timestamp. Used for timeline grouping by "local" days and months.
original_file_name
pydantic-field
original_file_name: StrictStr
Original file name
original_mime_type
pydantic-field
original_mime_type: Optional[StrictStr] = None
Original MIME type
original_path
pydantic-field
original_path: StrictStr
Original file path
owner_id
pydantic-field
owner_id: UUID
Owner user ID
resized
pydantic-field
resized: Optional[StrictBool] = None
Is resized
thumbhash
pydantic-field
thumbhash: Optional[StrictStr]
Thumbhash for thumbnail generation (base64) also used as the c query param for thumbnail cache busting.
updated_at
pydantic-field
updated_at: datetime
The UTC timestamp when the asset record was last updated in the database. This is automatically maintained by the database and reflects when any field in the asset was last modified.
width
pydantic-field
width: Optional[Annotated[int, Field(le=9007199254740991, strict=True, ge=0)]]
Asset width
duplicate_id_validate_regular_expression
pydantic-validator
duplicate_id_validate_regular_expression(value)
Validates the regular expression
Source code in immichpy/client/generated/models/asset_response_dto.py
154 155 156 157 158 159 160 161 162 163 164 165 166 167 | |
from_dict
classmethod
from_dict(obj: Optional[Dict[str, Any]]) -> Optional[Self]
Create an instance of AssetResponseDto from a dict
Source code in immichpy/client/generated/models/asset_response_dto.py
313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 | |
from_json
classmethod
from_json(json_str: str) -> Optional[Self]
Create an instance of AssetResponseDto from a JSON string
Source code in immichpy/client/generated/models/asset_response_dto.py
223 224 225 226 | |
id_validate_regular_expression
pydantic-validator
id_validate_regular_expression(value)
Validates the regular expression
Source code in immichpy/client/generated/models/asset_response_dto.py
169 170 171 172 173 174 175 176 177 178 179 | |
library_id_validate_regular_expression
pydantic-validator
library_id_validate_regular_expression(value)
Validates the regular expression
Source code in immichpy/client/generated/models/asset_response_dto.py
181 182 183 184 185 186 187 188 189 190 191 192 193 194 | |
owner_id_validate_regular_expression
pydantic-validator
owner_id_validate_regular_expression(value)
Validates the regular expression
Source code in immichpy/client/generated/models/asset_response_dto.py
196 197 198 199 200 201 202 203 204 205 206 | |
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):
Noneis only added to the output dict for nullable fields that were set at model initialization. Other fields with valueNoneare ignored.
Source code in immichpy/client/generated/models/asset_response_dto.py
228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 | |
to_json
to_json() -> str
Returns the JSON representation of the model using alias
Source code in immichpy/client/generated/models/asset_response_dto.py
219 220 221 | |
to_str
to_str() -> str
Returns the string representation of the model using alias
Source code in immichpy/client/generated/models/asset_response_dto.py
215 216 217 | |