Album Response Dto
immichpy.client.generated.models.album_response_dto.AlbumResponseDto
pydantic-model
Bases: BaseModel
AlbumResponseDto
Show JSON schema:
{
"$defs": {
"AlbumUserResponseDto": {
"description": "AlbumUserResponseDto",
"properties": {
"role": {
"$ref": "#/$defs/AlbumUserRole"
},
"user": {
"$ref": "#/$defs/UserResponseDto"
}
},
"required": [
"role",
"user"
],
"title": "AlbumUserResponseDto",
"type": "object"
},
"AlbumUserRole": {
"description": "Album user role",
"enum": [
"editor",
"viewer"
],
"title": "AlbumUserRole",
"type": "string"
},
"AssetFaceWithoutPersonResponseDto": {
"description": "AssetFaceWithoutPersonResponseDto",
"properties": {
"boundingBoxX1": {
"description": "Bounding box X1 coordinate",
"title": "Boundingboxx1",
"type": "integer"
},
"boundingBoxX2": {
"description": "Bounding box X2 coordinate",
"title": "Boundingboxx2",
"type": "integer"
},
"boundingBoxY1": {
"description": "Bounding box Y1 coordinate",
"title": "Boundingboxy1",
"type": "integer"
},
"boundingBoxY2": {
"description": "Bounding box Y2 coordinate",
"title": "Boundingboxy2",
"type": "integer"
},
"id": {
"description": "Face ID",
"format": "uuid",
"title": "Id",
"type": "string"
},
"imageHeight": {
"description": "Image height in pixels",
"title": "Imageheight",
"type": "integer"
},
"imageWidth": {
"description": "Image width in pixels",
"title": "Imagewidth",
"type": "integer"
},
"sourceType": {
"anyOf": [
{
"$ref": "#/$defs/SourceType"
},
{
"type": "null"
}
],
"default": null,
"description": "Face detection source type"
}
},
"required": [
"boundingBoxX1",
"boundingBoxX2",
"boundingBoxY1",
"boundingBoxY2",
"id",
"imageHeight",
"imageWidth"
],
"title": "AssetFaceWithoutPersonResponseDto",
"type": "object"
},
"AssetOrder": {
"description": "Asset sort order",
"enum": [
"asc",
"desc"
],
"title": "AssetOrder",
"type": "string"
},
"AssetResponseDto": {
"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"
},
"deviceAssetId": {
"description": "Device asset ID",
"title": "Deviceassetid",
"type": "string"
},
"deviceId": {
"description": "Device ID",
"title": "Deviceid",
"type": "string"
},
"duplicateId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Duplicate group ID",
"title": "Duplicateid"
},
"duration": {
"description": "Video duration (for videos)",
"title": "Duration",
"type": "string"
},
"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": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Asset height",
"title": "Height"
},
"id": {
"description": "Asset ID",
"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",
"title": "Ownerid",
"type": "string"
},
"people": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/PersonWithFacesResponseDto"
},
"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"
},
"unassignedFaces": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/AssetFaceWithoutPersonResponseDto"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Unassignedfaces"
},
"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": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Asset width",
"title": "Width"
}
},
"required": [
"checksum",
"createdAt",
"deviceAssetId",
"deviceId",
"duration",
"fileCreatedAt",
"fileModifiedAt",
"hasMetadata",
"height",
"id",
"isArchived",
"isEdited",
"isFavorite",
"isOffline",
"isTrashed",
"localDateTime",
"originalFileName",
"originalPath",
"ownerId",
"thumbhash",
"type",
"updatedAt",
"visibility",
"width"
],
"title": "AssetResponseDto",
"type": "object"
},
"AssetStackResponseDto": {
"description": "AssetStackResponseDto",
"properties": {
"assetCount": {
"description": "Number of assets in stack",
"title": "Assetcount",
"type": "integer"
},
"id": {
"description": "Stack ID",
"title": "Id",
"type": "string"
},
"primaryAssetId": {
"description": "Primary asset ID",
"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"
},
"ContributorCountResponseDto": {
"description": "ContributorCountResponseDto",
"properties": {
"assetCount": {
"description": "Number of assets contributed",
"title": "Assetcount",
"type": "integer"
},
"userId": {
"description": "User ID",
"title": "Userid",
"type": "string"
}
},
"required": [
"assetCount",
"userId"
],
"title": "ContributorCountResponseDto",
"type": "object"
},
"ExifResponseDto": {
"description": "ExifResponseDto",
"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": [
{
"type": "number"
},
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Image height in pixels",
"title": "Exifimageheight"
},
"exifImageWidth": {
"anyOf": [
{
"type": "number"
},
{
"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": [
{
"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": [
{
"type": "number"
},
{
"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": [
{
"type": "number"
},
{
"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"
},
"PersonWithFacesResponseDto": {
"description": "PersonWithFacesResponseDto",
"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"
},
"faces": {
"description": "Face detections",
"items": {
"$ref": "#/$defs/AssetFaceWithoutPersonResponseDto"
},
"title": "Faces",
"type": "array"
},
"id": {
"description": "Person ID",
"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",
"faces",
"id",
"isHidden",
"name",
"thumbnailPath"
],
"title": "PersonWithFacesResponseDto",
"type": "object"
},
"SourceType": {
"description": "Face detection source type",
"enum": [
"machine-learning",
"exif",
"manual"
],
"title": "SourceType",
"type": "string"
},
"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",
"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": "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",
"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": "AlbumResponseDto",
"properties": {
"albumName": {
"description": "Album name",
"title": "Albumname",
"type": "string"
},
"albumThumbnailAssetId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "Thumbnail asset ID",
"title": "Albumthumbnailassetid"
},
"albumUsers": {
"items": {
"$ref": "#/$defs/AlbumUserResponseDto"
},
"title": "Albumusers",
"type": "array"
},
"assetCount": {
"description": "Number of assets",
"title": "Assetcount",
"type": "integer"
},
"assets": {
"items": {
"$ref": "#/$defs/AssetResponseDto"
},
"title": "Assets",
"type": "array"
},
"contributorCounts": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/ContributorCountResponseDto"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"title": "Contributorcounts"
},
"createdAt": {
"description": "Creation date",
"format": "date-time",
"title": "Createdat",
"type": "string"
},
"description": {
"description": "Album description",
"title": "Description",
"type": "string"
},
"endDate": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "End date (latest asset)",
"title": "Enddate"
},
"hasSharedLink": {
"description": "Has shared link",
"title": "Hassharedlink",
"type": "boolean"
},
"id": {
"description": "Album ID",
"title": "Id",
"type": "string"
},
"isActivityEnabled": {
"description": "Activity feed enabled",
"title": "Isactivityenabled",
"type": "boolean"
},
"lastModifiedAssetTimestamp": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Last modified asset timestamp",
"title": "Lastmodifiedassettimestamp"
},
"order": {
"anyOf": [
{
"$ref": "#/$defs/AssetOrder"
},
{
"type": "null"
}
],
"default": null,
"description": "Asset sort order"
},
"owner": {
"$ref": "#/$defs/UserResponseDto"
},
"ownerId": {
"description": "Owner user ID",
"title": "Ownerid",
"type": "string"
},
"shared": {
"description": "Is shared album",
"title": "Shared",
"type": "boolean"
},
"startDate": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Start date (earliest asset)",
"title": "Startdate"
},
"updatedAt": {
"description": "Last update date",
"format": "date-time",
"title": "Updatedat",
"type": "string"
}
},
"required": [
"albumName",
"albumThumbnailAssetId",
"albumUsers",
"assetCount",
"assets",
"createdAt",
"description",
"hasSharedLink",
"id",
"isActivityEnabled",
"owner",
"ownerId",
"shared",
"updatedAt"
],
"title": "AlbumResponseDto",
"type": "object"
}
Config:
populate_by_name:Truevalidate_assignment:Trueprotected_namespaces:()
Fields:
-
album_name(StrictStr) -
album_thumbnail_asset_id(Optional[StrictStr]) -
album_users(List[AlbumUserResponseDto]) -
asset_count(StrictInt) -
assets(List[AssetResponseDto]) -
contributor_counts(Optional[List[ContributorCountResponseDto]]) -
created_at(datetime) -
description(StrictStr) -
end_date(Optional[datetime]) -
has_shared_link(StrictBool) -
id(StrictStr) -
is_activity_enabled(StrictBool) -
last_modified_asset_timestamp(Optional[datetime]) -
order(Optional[AssetOrder]) -
owner(UserResponseDto) -
owner_id(StrictStr) -
shared(StrictBool) -
start_date(Optional[datetime]) -
updated_at(datetime)
album_name
pydantic-field
album_name: StrictStr
Album name
album_thumbnail_asset_id
pydantic-field
album_thumbnail_asset_id: Optional[StrictStr]
Thumbnail asset ID
asset_count
pydantic-field
asset_count: StrictInt
Number of assets
created_at
pydantic-field
created_at: datetime
Creation date
description
pydantic-field
description: StrictStr
Album description
end_date
pydantic-field
end_date: Optional[datetime] = None
End date (latest asset)
has_shared_link
pydantic-field
has_shared_link: StrictBool
Has shared link
id
pydantic-field
id: StrictStr
Album ID
is_activity_enabled
pydantic-field
is_activity_enabled: StrictBool
Activity feed enabled
last_modified_asset_timestamp
pydantic-field
last_modified_asset_timestamp: Optional[datetime] = None
Last modified asset timestamp
order
pydantic-field
order: Optional[AssetOrder] = None
Asset sort order
owner_id
pydantic-field
owner_id: StrictStr
Owner user ID
shared
pydantic-field
shared: StrictBool
Is shared album
start_date
pydantic-field
start_date: Optional[datetime] = None
Start date (earliest asset)
updated_at
pydantic-field
updated_at: datetime
Last update date
from_dict
classmethod
from_dict(obj: Optional[Dict[str, Any]]) -> Optional[Self]
Create an instance of AlbumResponseDto from a dict
Source code in immichpy/client/generated/models/album_response_dto.py
168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 | |
from_json
classmethod
from_json(json_str: str) -> Optional[Self]
Create an instance of AlbumResponseDto from a JSON string
Source code in immichpy/client/generated/models/album_response_dto.py
112 113 114 115 | |
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/album_response_dto.py
117 118 119 120 121 122 123 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 165 166 | |
to_json
to_json() -> str
Returns the JSON representation of the model using alias
Source code in immichpy/client/generated/models/album_response_dto.py
107 108 109 110 | |
to_str
to_str() -> str
Returns the string representation of the model using alias
Source code in immichpy/client/generated/models/album_response_dto.py
103 104 105 | |