Smart Search Dto
immichpy.client.generated.models.smart_search_dto.SmartSearchDto
pydantic-model
Bases: BaseModel
SmartSearchDto
Show JSON schema:
{
"$defs": {
"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"
}
},
"description": "SmartSearchDto",
"properties": {
"albumIds": {
"anyOf": [
{
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by album IDs",
"title": "Albumids"
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by city name",
"title": "City"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by country name",
"title": "Country"
},
"createdAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by creation date (after)",
"title": "Createdafter"
},
"createdBefore": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by creation date (before)",
"title": "Createdbefore"
},
"deviceId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Device ID to filter by",
"title": "Deviceid"
},
"isEncoded": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by encoded status",
"title": "Isencoded"
},
"isFavorite": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by favorite status",
"title": "Isfavorite"
},
"isMotion": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by motion photo status",
"title": "Ismotion"
},
"isNotInAlbum": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter assets not in any album",
"title": "Isnotinalbum"
},
"isOffline": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by offline status",
"title": "Isoffline"
},
"language": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Search language code",
"title": "Language"
},
"lensModel": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by lens model",
"title": "Lensmodel"
},
"libraryId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Library ID to filter by",
"title": "Libraryid"
},
"make": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by camera make",
"title": "Make"
},
"model": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by camera model",
"title": "Model"
},
"ocr": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by OCR text content",
"title": "Ocr"
},
"page": {
"anyOf": [
{
"minimum": 1,
"type": "number"
},
{
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Page number",
"title": "Page"
},
"personIds": {
"anyOf": [
{
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by person IDs",
"title": "Personids"
},
"query": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Natural language search query",
"title": "Query"
},
"queryAssetId": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Asset ID to use as search reference",
"title": "Queryassetid"
},
"rating": {
"anyOf": [
{
"maximum": 5,
"minimum": -1,
"type": "number"
},
{
"maximum": 5,
"minimum": -1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by rating [1-5], or null for unrated",
"title": "Rating"
},
"size": {
"anyOf": [
{
"maximum": 1000,
"minimum": 1,
"type": "number"
},
{
"maximum": 1000,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Number of results to return",
"title": "Size"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by state/province name",
"title": "State"
},
"tagIds": {
"anyOf": [
{
"items": {
"format": "uuid",
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by tag IDs",
"title": "Tagids"
},
"takenAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by taken date (after)",
"title": "Takenafter"
},
"takenBefore": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by taken date (before)",
"title": "Takenbefore"
},
"trashedAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by trash date (after)",
"title": "Trashedafter"
},
"trashedBefore": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by trash date (before)",
"title": "Trashedbefore"
},
"type": {
"anyOf": [
{
"$ref": "#/$defs/AssetTypeEnum"
},
{
"type": "null"
}
],
"default": null,
"description": "Asset type filter"
},
"updatedAfter": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by update date (after)",
"title": "Updatedafter"
},
"updatedBefore": {
"anyOf": [
{
"format": "date-time",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by update date (before)",
"title": "Updatedbefore"
},
"visibility": {
"anyOf": [
{
"$ref": "#/$defs/AssetVisibility"
},
{
"type": "null"
}
],
"default": null,
"description": "Filter by visibility"
},
"withDeleted": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Include deleted assets",
"title": "Withdeleted"
},
"withExif": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Include EXIF data in response",
"title": "Withexif"
}
},
"title": "SmartSearchDto",
"type": "object"
}
Config:
populate_by_name:Truevalidate_assignment:Trueprotected_namespaces:()
Fields:
-
album_ids(Optional[List[UUID]]) -
city(Optional[StrictStr]) -
country(Optional[StrictStr]) -
created_after(Optional[datetime]) -
created_before(Optional[datetime]) -
device_id(Optional[StrictStr]) -
is_encoded(Optional[StrictBool]) -
is_favorite(Optional[StrictBool]) -
is_motion(Optional[StrictBool]) -
is_not_in_album(Optional[StrictBool]) -
is_offline(Optional[StrictBool]) -
language(Optional[StrictStr]) -
lens_model(Optional[StrictStr]) -
library_id(Optional[UUID]) -
make(Optional[StrictStr]) -
model(Optional[StrictStr]) -
ocr(Optional[StrictStr]) -
page(Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]]) -
person_ids(Optional[List[UUID]]) -
query(Optional[StrictStr]) -
query_asset_id(Optional[UUID]) -
rating(Optional[Union[Annotated[float, Field(le=5, strict=True, ge=-1)], Annotated[int, Field(le=5, strict=True, ge=-1)]]]) -
size(Optional[Union[Annotated[float, Field(le=1000, strict=True, ge=1)], Annotated[int, Field(le=1000, strict=True, ge=1)]]]) -
state(Optional[StrictStr]) -
tag_ids(Optional[List[UUID]]) -
taken_after(Optional[datetime]) -
taken_before(Optional[datetime]) -
trashed_after(Optional[datetime]) -
trashed_before(Optional[datetime]) -
type(Optional[AssetTypeEnum]) -
updated_after(Optional[datetime]) -
updated_before(Optional[datetime]) -
visibility(Optional[AssetVisibility]) -
with_deleted(Optional[StrictBool]) -
with_exif(Optional[StrictBool])
album_ids
pydantic-field
album_ids: Optional[List[UUID]] = None
Filter by album IDs
city
pydantic-field
city: Optional[StrictStr] = None
Filter by city name
country
pydantic-field
country: Optional[StrictStr] = None
Filter by country name
created_after
pydantic-field
created_after: Optional[datetime] = None
Filter by creation date (after)
created_before
pydantic-field
created_before: Optional[datetime] = None
Filter by creation date (before)
device_id
pydantic-field
device_id: Optional[StrictStr] = None
Device ID to filter by
is_encoded
pydantic-field
is_encoded: Optional[StrictBool] = None
Filter by encoded status
is_favorite
pydantic-field
is_favorite: Optional[StrictBool] = None
Filter by favorite status
is_motion
pydantic-field
is_motion: Optional[StrictBool] = None
Filter by motion photo status
is_not_in_album
pydantic-field
is_not_in_album: Optional[StrictBool] = None
Filter assets not in any album
is_offline
pydantic-field
is_offline: Optional[StrictBool] = None
Filter by offline status
language
pydantic-field
language: Optional[StrictStr] = None
Search language code
lens_model
pydantic-field
lens_model: Optional[StrictStr] = None
Filter by lens model
library_id
pydantic-field
library_id: Optional[UUID] = None
Library ID to filter by
make
pydantic-field
make: Optional[StrictStr] = None
Filter by camera make
model
pydantic-field
model: Optional[StrictStr] = None
Filter by camera model
ocr
pydantic-field
ocr: Optional[StrictStr] = None
Filter by OCR text content
page
pydantic-field
page: Optional[Union[Annotated[float, Field(strict=True, ge=1)], Annotated[int, Field(strict=True, ge=1)]]] = None
Page number
person_ids
pydantic-field
person_ids: Optional[List[UUID]] = None
Filter by person IDs
query
pydantic-field
query: Optional[StrictStr] = None
Natural language search query
query_asset_id
pydantic-field
query_asset_id: Optional[UUID] = None
Asset ID to use as search reference
rating
pydantic-field
rating: Optional[Union[Annotated[float, Field(le=5, strict=True, ge=-1)], Annotated[int, Field(le=5, strict=True, ge=-1)]]] = None
Filter by rating [1-5], or null for unrated
size
pydantic-field
size: Optional[Union[Annotated[float, Field(le=1000, strict=True, ge=1)], Annotated[int, Field(le=1000, strict=True, ge=1)]]] = None
Number of results to return
state
pydantic-field
state: Optional[StrictStr] = None
Filter by state/province name
tag_ids
pydantic-field
tag_ids: Optional[List[UUID]] = None
Filter by tag IDs
taken_after
pydantic-field
taken_after: Optional[datetime] = None
Filter by taken date (after)
taken_before
pydantic-field
taken_before: Optional[datetime] = None
Filter by taken date (before)
trashed_after
pydantic-field
trashed_after: Optional[datetime] = None
Filter by trash date (after)
trashed_before
pydantic-field
trashed_before: Optional[datetime] = None
Filter by trash date (before)
type
pydantic-field
type: Optional[AssetTypeEnum] = None
Asset type filter
updated_after
pydantic-field
updated_after: Optional[datetime] = None
Filter by update date (after)
updated_before
pydantic-field
updated_before: Optional[datetime] = None
Filter by update date (before)
visibility
pydantic-field
visibility: Optional[AssetVisibility] = None
Filter by visibility
with_deleted
pydantic-field
with_deleted: Optional[StrictBool] = None
Include deleted assets
with_exif
pydantic-field
with_exif: Optional[StrictBool] = None
Include EXIF data in response
from_dict
classmethod
from_dict(obj: Optional[Dict[str, Any]]) -> Optional[Self]
Create an instance of SmartSearchDto from a dict
Source code in immichpy/client/generated/models/smart_search_dto.py
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 312 313 314 315 316 | |
from_json
classmethod
from_json(json_str: str) -> Optional[Self]
Create an instance of SmartSearchDto from a JSON string
Source code in immichpy/client/generated/models/smart_search_dto.py
204 205 206 207 | |
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/smart_search_dto.py
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 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 | |
to_json
to_json() -> str
Returns the JSON representation of the model using alias
Source code in immichpy/client/generated/models/smart_search_dto.py
199 200 201 202 | |
to_str
to_str() -> str
Returns the string representation of the model using alias
Source code in immichpy/client/generated/models/smart_search_dto.py
195 196 197 | |