Reference
Usage:
immichpy [OPTIONS] COMMAND [ARGS]...
Options:
-v, --verbose: Show verbose output.--format <pretty|json|table>: Output format of the CLI. [env var: IMMICH_FORMAT; default: pretty]--api-key <str>: Authorize via API key (get one here). [env var: IMMICH_API_KEY]--access-token <str>: Authorize via access token. [env var: IMMICH_ACCESS_TOKEN]--base-url <str>: The server to connect to. [env var: IMMICH_API_URL]-p, --profile <str>: The profile to use. [env var: IMMICH_PROFILE; default: default]--version: Show version and exit.--install-completion: Install completion for the current shell.--show-completion: Show completion for the current shell, to copy it or customize the installation.--help: Show this message and exit.
Commands:
setup: Interactively set up a profile for the CLI...api-keys: An api key can be used to programmatically...activities: An activity is a like or a comment made by...albums: An album is a collection of assets that...assets: An asset is an image or video that has...auth: Endpoints related to user authentication,...auth-admin: Administrative endpoints related to...download: Endpoints for downloading assets or...config: Configure the CLI with server details,...duplicates: Endpoints for managing and identifying...faces: A face is a detected human face within an...jobs: Queues and background jobs are used for...libraries: An external library is made up of input...maintenance-admin: Maintenance mode allows you to put Immich...map: Map endpoints include supplemental...memories: A memory is a specialized collection of...notifications: A notification is a specialized message...notifications-admin: Notification administrative endpoints.partners: A partner is a link with another user that...people: A person is a collection of faces, which...plugins: A plugin is an installed module that makes...queues: Queues and background jobs are used for...search: Endpoints related to searching assets via...server: Information about the current server...sessions: A session represents an authenticated...shared-links: A shared link is a public url that...stacks: A stack is a group of related assets.sync: A collection of endpoints for the new...system-config: Endpoints to view, modify, and validate...system-metadata: Endpoints to view, modify, and validate...tags: A tag is a user-defined label that can be...timeline: Specialized endpoints related to the...trash: Endpoints for managing the trash can,...users: Endpoints for viewing and updating the...users-admin: Administrative endpoints for managing...views: Endpoints for specialized views, such as...workflows: A workflow is a set of actions that run...backups: Manage backups of the Immich database.
immichpy setup
Interactively set up a profile for the CLI to connect to an Immich server.
Usage:
immichpy setup [OPTIONS]
Options:
-p, --profile <str>: Profile name. This can be used to set different server configurations. [default: default]--base-url <str>: The base URL of the Immich server. [default: https://demo.immich.app/api]--api-key <str>: An API key to use with the profile (recommended)--access-token <str>: An access token to use with the profile (not recommended)--skip-validation: Skip validation of the server.--help: Show this message and exit.
immichpy api-keys
An api key can be used to programmatically access the Immich API.
Usage:
immichpy api-keys [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-api-key: Create an API keydelete-api-key: Delete an API keyget-api-key: Retrieve an API keyget-api-keys: List all API keysget-my-api-key: Retrieve the current API keyrotate-api-key: Rotate an API keyupdate-api-key: Update an API key (DEPRECATED)
immichpy api-keys create-api-key
Create an API key
Usage:
immichpy api-keys create-api-key [OPTIONS]
Options:
--name <str>: API key name--permissions <all|activity.create|activity.read|activity.update|activity.delete|activity.statistics|apiKey.create|apiKey.read|apiKey.update|apiKey.delete|apiKey.rotate|asset.read|asset.update|asset.delete|asset.statistics|asset.share|asset.view|asset.download|asset.upload|asset.copy|asset.derive|assetFile.read|assetFile.delete|assetFile.download|asset.edit.get|asset.edit.create|asset.edit.delete|album.create|album.read|album.update|album.delete|album.statistics|album.share|album.download|albumAsset.create|albumAsset.delete|albumUser.create|albumUser.update|albumUser.delete|auth.changePassword|authDevice.delete|archive.read|backup.list|backup.download|backup.upload|backup.delete|clusterGroup.read|clusterGroup.leave|clusterGroupRequest.create|clusterGroupRequest.read|clusterGroupRequest.delete|adminConfig.read|adminConfig.update|userConfig.read|duplicate.read|duplicate.delete|face.create|face.read|face.update|face.delete|folder.read|job.create|job.read|library.create|library.read|library.update|library.delete|library.statistics|timeline.read|timeline.download|maintenance|map.read|map.search|memory.create|memory.read|memory.update|memory.delete|memory.statistics|memoryAsset.create|memoryAsset.delete|notification.create|notification.read|notification.update|notification.delete|partner.create|partner.read|partner.update|partner.delete|person.create|person.read|person.update|person.delete|person.statistics|person.merge|person.reassign|pinCode.create|pinCode.update|pinCode.delete|plugin.create|plugin.read|plugin.update|plugin.delete|server.about|server.apkLinks|server.storage|server.statistics|server.versionCheck|serverLicense.read|serverLicense.update|serverLicense.delete|session.create|session.read|session.update|session.delete|session.lock|sharedLink.create|sharedLink.read|sharedLink.update|sharedLink.delete|stack.create|stack.read|stack.update|stack.delete|sync.stream|syncCheckpoint.read|syncCheckpoint.update|syncCheckpoint.delete|systemConfig.read|systemConfig.update|systemMetadata.read|systemMetadata.update|tag.create|tag.read|tag.update|tag.delete|tag.asset|user.read|user.update|userLicense.create|userLicense.read|userLicense.update|userLicense.delete|userOnboarding.read|userOnboarding.update|userOnboarding.delete|userPreference.read|userPreference.update|userProfileImage.create|userProfileImage.read|userProfileImage.update|userProfileImage.delete|queue.read|queue.update|queueJob.create|queueJob.read|queueJob.update|queueJob.delete|workflow.create|workflow.read|workflow.update|workflow.delete|workflow.logs|adminUser.create|adminUser.read|adminUser.update|adminUser.delete|adminSession.read|adminAuth.unlinkAll>: List of permissions [required]--help: Show this message and exit.
immichpy api-keys delete-api-key
Delete an API key
Usage:
immichpy api-keys delete-api-key [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy api-keys get-api-key
Retrieve an API key
Usage:
immichpy api-keys get-api-key [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy api-keys get-api-keys
List all API keys
Usage:
immichpy api-keys get-api-keys [OPTIONS]
Options:
--help: Show this message and exit.
immichpy api-keys get-my-api-key
Retrieve the current API key
Usage:
immichpy api-keys get-my-api-key [OPTIONS]
Options:
--help: Show this message and exit.
immichpy api-keys rotate-api-key
Rotate an API key
Usage:
immichpy api-keys rotate-api-key [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy api-keys update-api-key
Update an API key
Usage:
immichpy api-keys update-api-key [OPTIONS] {id}
Arguments:
id: [required]
Options:
--name <str>: API key name--permissions <all|activity.create|activity.read|activity.update|activity.delete|activity.statistics|apiKey.create|apiKey.read|apiKey.update|apiKey.delete|apiKey.rotate|asset.read|asset.update|asset.delete|asset.statistics|asset.share|asset.view|asset.download|asset.upload|asset.copy|asset.derive|assetFile.read|assetFile.delete|assetFile.download|asset.edit.get|asset.edit.create|asset.edit.delete|album.create|album.read|album.update|album.delete|album.statistics|album.share|album.download|albumAsset.create|albumAsset.delete|albumUser.create|albumUser.update|albumUser.delete|auth.changePassword|authDevice.delete|archive.read|backup.list|backup.download|backup.upload|backup.delete|clusterGroup.read|clusterGroup.leave|clusterGroupRequest.create|clusterGroupRequest.read|clusterGroupRequest.delete|adminConfig.read|adminConfig.update|userConfig.read|duplicate.read|duplicate.delete|face.create|face.read|face.update|face.delete|folder.read|job.create|job.read|library.create|library.read|library.update|library.delete|library.statistics|timeline.read|timeline.download|maintenance|map.read|map.search|memory.create|memory.read|memory.update|memory.delete|memory.statistics|memoryAsset.create|memoryAsset.delete|notification.create|notification.read|notification.update|notification.delete|partner.create|partner.read|partner.update|partner.delete|person.create|person.read|person.update|person.delete|person.statistics|person.merge|person.reassign|pinCode.create|pinCode.update|pinCode.delete|plugin.create|plugin.read|plugin.update|plugin.delete|server.about|server.apkLinks|server.storage|server.statistics|server.versionCheck|serverLicense.read|serverLicense.update|serverLicense.delete|session.create|session.read|session.update|session.delete|session.lock|sharedLink.create|sharedLink.read|sharedLink.update|sharedLink.delete|stack.create|stack.read|stack.update|stack.delete|sync.stream|syncCheckpoint.read|syncCheckpoint.update|syncCheckpoint.delete|systemConfig.read|systemConfig.update|systemMetadata.read|systemMetadata.update|tag.create|tag.read|tag.update|tag.delete|tag.asset|user.read|user.update|userLicense.create|userLicense.read|userLicense.update|userLicense.delete|userOnboarding.read|userOnboarding.update|userOnboarding.delete|userPreference.read|userPreference.update|userProfileImage.create|userProfileImage.read|userProfileImage.update|userProfileImage.delete|queue.read|queue.update|queueJob.create|queueJob.read|queueJob.update|queueJob.delete|workflow.create|workflow.read|workflow.update|workflow.delete|workflow.logs|adminUser.create|adminUser.read|adminUser.update|adminUser.delete|adminSession.read|adminAuth.unlinkAll>: List of permissions--help: Show this message and exit.
immichpy activities
An activity is a like or a comment made by a user on an asset or album.
Usage:
immichpy activities [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-activity: Create an activitydelete-activity: Delete an activityget-activities: List all activitiesget-activity-statistics: Retrieve activity statistics
immichpy activities create-activity
Create an activity
Usage:
immichpy activities create-activity [OPTIONS]
Options:
--album-id <uuid>: Album ID [required]--asset-id <uuid>: Asset ID (if activity is for an asset)--comment <str>: Comment text (required if type is comment)--type <comment|like>: Reaction type [required]--help: Show this message and exit.
immichpy activities delete-activity
Delete an activity
Usage:
immichpy activities delete-activity [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy activities get-activities
List all activities
Usage:
immichpy activities get-activities [OPTIONS]
Options:
--album-id <uuid>: Album ID [required]--asset-id <uuid>: Asset ID (if activity is for an asset)--level <album|asset>--type <comment|like>--user-id <uuid>: Filter by user ID--help: Show this message and exit.
immichpy activities get-activity-statistics
Retrieve activity statistics
Usage:
immichpy activities get-activity-statistics [OPTIONS]
Options:
--album-id <uuid>: Album ID [required]--asset-id <uuid>: Asset ID (if activity is for an asset)--help: Show this message and exit.
immichpy albums
An album is a collection of assets that can be shared with other users or via shared links.
Usage:
immichpy albums [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
add-assets-to-album: Add assets to an albumadd-assets-to-albums: Add assets to albumsadd-users-to-album: Share album with userscreate-album: Create an albumdelete-album: Delete an albumget-album-info: Retrieve an albumget-album-map-markers: Retrieve album map markersget-album-statistics: Retrieve album statisticsget-all-albums: List all albumsremove-asset-from-album: Remove assets from an albumremove-user-from-album: Remove user from albumupdate-album-info: Update an albumupdate-album-user: Update user role
immichpy albums add-assets-to-album
Add assets to an album
Usage:
immichpy albums add-assets-to-album [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy albums add-assets-to-albums
Add assets to albums
Usage:
immichpy albums add-assets-to-albums [OPTIONS]
Options:
--album-ids <uuid>: Album IDs [required]--asset-ids <uuid>: Asset IDs [required]--help: Show this message and exit.
immichpy albums add-users-to-album
Share album with users
Usage:
immichpy albums add-users-to-album [OPTIONS] {id}
Arguments:
id: [required]
Options:
--album-users <str>: Album users to add
As a JSON string with keys: role (string), userId (string) [required]
--help: Show this message and exit.
immichpy albums create-album
Create an album
Usage:
immichpy albums create-album [OPTIONS]
Options:
--album-name <str>: Album name [required]--album-users <str>: Album users
As a JSON string with keys: role (string), userId (string)
--asset-ids <uuid>: Initial asset IDs--description <str>: Album description--help: Show this message and exit.
immichpy albums delete-album
Delete an album
Usage:
immichpy albums delete-album [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy albums get-album-info
Retrieve an album
Usage:
immichpy albums get-album-info [OPTIONS] {id}
Arguments:
id: [required]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy albums get-album-map-markers
Retrieve album map markers
Usage:
immichpy albums get-album-map-markers [OPTIONS] {id}
Arguments:
id: [required]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy albums get-album-statistics
Retrieve album statistics
Usage:
immichpy albums get-album-statistics [OPTIONS]
Options:
--help: Show this message and exit.
immichpy albums get-all-albums
List all albums
Usage:
immichpy albums get-all-albums [OPTIONS]
Options:
--asset-id <uuid>: Filter albums containing this asset ID (ignores other parameters)--id <uuid>: Album ID--is-owned <true|false>: Filter by ownership: true = only owned, false = only shared-with-me, undefined = no filter--is-shared <true|false>: Filter by shared status: true = only shared, false = not shared, undefined = no filter--name <str>: Album name (exact match)--help: Show this message and exit.
immichpy albums remove-asset-from-album
Remove assets from an album
Usage:
immichpy albums remove-asset-from-album [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy albums remove-user-from-album
Remove user from album
Usage:
immichpy albums remove-user-from-album [OPTIONS] {id} {user_id}
Arguments:
id: Album ID [required]user_id: Album user ID, or "me" to reference the current user. [required]
Options:
--help: Show this message and exit.
immichpy albums update-album-info
Update an album
Usage:
immichpy albums update-album-info [OPTIONS] {id}
Arguments:
id: [required]
Options:
--album-name <str>: Album name--album-thumbnail-asset-id <uuid>: Album thumbnail asset ID--description <str>: Album description--is-activity-enabled <true|false>: Enable activity feed--order <asc|desc>: Asset sort order--help: Show this message and exit.
immichpy albums update-album-user
Update user role
Usage:
immichpy albums update-album-user [OPTIONS] {id} {user_id}
Arguments:
id: Album ID [required]user_id: Album user ID, or "me" to reference the current user. [required]
Options:
--role <editor|owner|viewer>: Album user role [required]--help: Show this message and exit.
immichpy assets
An asset is an image or video that has been uploaded to Immich.
Usage:
immichpy assets [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
check-bulk-upload: Check bulk uploadcopy-asset: Copy assetdelete-asset-metadata: Delete asset metadata by keydelete-assets: Delete assetsdelete-bulk-asset-metadata: Delete asset metadatadownload-asset: Download original assetedit-asset: Apply edits to an existing assetend-session: End HLS streaming sessionget-asset-edits: Retrieve edits for an existing assetget-asset-info: Retrieve an assetget-asset-metadata: Get asset metadataget-asset-metadata-by-key: Retrieve asset metadata by keyget-asset-ocr: Retrieve asset OCR dataget-asset-statistics: Get asset statisticsget-main-playlist: Get HLS main playlistget-media-playlist: Get HLS media playlistget-segment: Get HLS segment or init fileplay-asset-video: Play asset videoremove-asset-edits: Remove edits from an existing assetrun-asset-jobs: Run an asset jobupdate-asset: Update an asset (DEPRECATED)update-asset-metadata: Update asset metadataupdate-assets: Update assets (DEPRECATED)update-bulk-asset-metadata: Upsert asset metadataupload-asset: Upload assetview-asset: View asset thumbnaildownload-asset-to-file: Download an asset to a file.play-asset-video-to-file: Save an asset's video stream to a file.view-asset-to-file: Save an asset's thumbnail to a file.upload: Upload assets with smart features.
immichpy assets check-bulk-upload
Check bulk upload
Usage:
immichpy assets check-bulk-upload [OPTIONS]
Options:
--assets <str>: Assets to check
As a JSON string with keys: checksum (string), id (string) [required]
--help: Show this message and exit.
immichpy assets copy-asset
Copy asset
Usage:
immichpy assets copy-asset [OPTIONS]
Options:
--albums <true|false>: Copy album associations--favorite <true|false>: Copy favorite status--shared-links <true|false>: Copy shared links--sidecar <true|false>: Copy sidecar file--source-id <uuid>: Source asset ID [required]--stack <true|false>: Copy stack association--target-id <uuid>: Target asset ID [required]--help: Show this message and exit.
immichpy assets delete-asset-metadata
Delete asset metadata by key
Usage:
immichpy assets delete-asset-metadata [OPTIONS] {id} {key}
Arguments:
id: Asset ID [required]key: Metadata key [required]
Options:
--help: Show this message and exit.
immichpy assets delete-assets
Delete assets
Usage:
immichpy assets delete-assets [OPTIONS]
Options:
--force <true|false>: Force delete even if in use--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy assets delete-bulk-asset-metadata
Delete asset metadata
Usage:
immichpy assets delete-bulk-asset-metadata [OPTIONS]
Options:
--items <str>: Metadata items to delete
As a JSON string with keys: assetId (string), key (string) [required]
--help: Show this message and exit.
immichpy assets download-asset
Download original asset
Usage:
immichpy assets download-asset [OPTIONS] {id}
Arguments:
id: [required]
Options:
--edited <true|false>: Return edited asset if available--key <str>--slug <str>--help: Show this message and exit.
immichpy assets edit-asset
Apply edits to an existing asset
Usage:
immichpy assets edit-asset [OPTIONS] {id}
Arguments:
id: [required]
Options:
--edits <str>: List of edit actions to apply (crop, rotate, or mirror)
As a JSON string with keys: action (string), parameters (string) [required]
--help: Show this message and exit.
immichpy assets end-session
End HLS streaming session
Usage:
immichpy assets end-session [OPTIONS] {id} {session_id}
Arguments:
id: [required]session_id: [required]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy assets get-asset-edits
Retrieve edits for an existing asset
Usage:
immichpy assets get-asset-edits [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy assets get-asset-info
Retrieve an asset
Usage:
immichpy assets get-asset-info [OPTIONS] {id}
Arguments:
id: [required]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy assets get-asset-metadata
Get asset metadata
Usage:
immichpy assets get-asset-metadata [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy assets get-asset-metadata-by-key
Retrieve asset metadata by key
Usage:
immichpy assets get-asset-metadata-by-key [OPTIONS] {id} {key}
Arguments:
id: Asset ID [required]key: Metadata key [required]
Options:
--help: Show this message and exit.
immichpy assets get-asset-ocr
Retrieve asset OCR data
Usage:
immichpy assets get-asset-ocr [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy assets get-asset-statistics
Get asset statistics
Usage:
immichpy assets get-asset-statistics [OPTIONS]
Options:
--is-favorite <true|false>: Filter by favorite status--is-trashed <true|false>: Filter by trash status--visibility <archive|timeline|hidden|locked>--help: Show this message and exit.
immichpy assets get-main-playlist
Get HLS main playlist
Usage:
immichpy assets get-main-playlist [OPTIONS] {id}
Arguments:
id: [required]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy assets get-media-playlist
Get HLS media playlist
Usage:
immichpy assets get-media-playlist [OPTIONS] {id} {session_id} {variant_index}
Arguments:
id: [required]session_id: [required]variant_index: [required]
Options:
--key <str>--slug <str>--x-immich-hls-pos <float range>: [x>=0]--help: Show this message and exit.
immichpy assets get-segment
Get HLS segment or init file
Usage:
immichpy assets get-segment [OPTIONS] {filename} {id} {session_id} {variant_index}
Arguments:
filename: [required]id: [required]session_id: [required]variant_index: [required]
Options:
--key <str>--slug <str>--x-immich-hls-msn <int range>: [0<=x<=9007199254740991]--help: Show this message and exit.
immichpy assets play-asset-video
Play asset video
Usage:
immichpy assets play-asset-video [OPTIONS] {id}
Arguments:
id: [required]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy assets remove-asset-edits
Remove edits from an existing asset
Usage:
immichpy assets remove-asset-edits [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy assets run-asset-jobs
Run an asset job
Usage:
immichpy assets run-asset-jobs [OPTIONS]
Options:
--asset-ids <uuid>: Asset IDs [required]--name <refresh-faces|refresh-metadata|regenerate-thumbnail|transcode-video>: Job name [required]--help: Show this message and exit.
immichpy assets update-asset
Update an asset
Usage:
immichpy assets update-asset [OPTIONS] {id}
Arguments:
id: [required]
Options:
--date-time-original <str>: Original date and time--description <str>: Asset description--is-favorite <true|false>: Mark as favorite--latitude <float range>: Latitude coordinate [-90<=x<=90]--live-photo-video-id <uuid>: Live photo video ID--longitude <float range>: Longitude coordinate [-180<=x<=180]--rating <int range>: Rating in range [1-5] (starred), -1 (rejected), or null (unrated) [-1<=x<=5]--visibility <archive|timeline|hidden|locked>: Asset visibility--help: Show this message and exit.
immichpy assets update-asset-metadata
Update asset metadata
Usage:
immichpy assets update-asset-metadata [OPTIONS] {id}
Arguments:
id: [required]
Options:
--items <str>: Metadata items to upsert
As a JSON string with keys: key (string), value (object) [required]
--help: Show this message and exit.
immichpy assets update-assets
Update assets
Usage:
immichpy assets update-assets [OPTIONS]
Options:
--date-time-original <str>: Original date and time--date-time-relative <int range>: Relative time offset in minutes [-9007199254740991<=x<=9007199254740991]--description <str>: Asset description--duplicate-id <str>: Duplicate ID--ids <uuid>: Asset IDs to update [required]--is-favorite <true|false>: Mark as favorite--latitude <float range>: Latitude coordinate [-90<=x<=90]--longitude <float range>: Longitude coordinate [-180<=x<=180]--rating <int range>: Rating in range [1-5] (starred), -1 (rejected), or null (unrated) [-1<=x<=5]--time-zone <str>: Time zone (IANA timezone)--visibility <archive|timeline|hidden|locked>: Asset visibility--help: Show this message and exit.
immichpy assets update-bulk-asset-metadata
Upsert asset metadata
Usage:
immichpy assets update-bulk-asset-metadata [OPTIONS]
Options:
--items <str>: Metadata items to upsert
As a JSON string with keys: assetId (string), key (string), value (object) [required]
--help: Show this message and exit.
immichpy assets upload-asset
Upload asset
Usage:
immichpy assets upload-asset [OPTIONS]
Options:
--asset-data <path>: Asset file data [required]--duration <int range>: Duration in milliseconds (for videos) [0<=x<=9007199254740991]--file-created-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: File creation date
Example: 2024-01-01T00:00:00.000Z [required]
--file-modified-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: File modification date
Example: 2024-01-01T00:00:00.000Z [required]
--filename <str>: Filename--is-favorite <true|false>: Mark as favorite--key <str>--live-photo-video-id <uuid>: Live photo video ID--metadata <str>: Asset metadata items
As a JSON string with keys: key (string), value (object)
--sidecar-data <path>: Sidecar file data--slug <str>--visibility <archive|timeline|hidden|locked>: Asset visibility--x-immich-checksum <str>: sha1 checksum that can be used for duplicate detection before the file is uploaded--help: Show this message and exit.
immichpy assets view-asset
View asset thumbnail
Usage:
immichpy assets view-asset [OPTIONS] {id}
Arguments:
id: [required]
Options:
--edited <true|false>: Return edited asset if available--key <str>--size <original|fullsize|preview|thumbnail>--slug <str>--help: Show this message and exit.
immichpy assets download-asset-to-file
Download an asset to a file.
Downloads the original asset file and saves it to the specified output directory. The filename can be specified or will be derived from the response headers.
Usage:
immichpy assets download-asset-to-file [OPTIONS] {id} {out_dir}
Arguments:
id: Asset ID (UUID) [required]out_dir: Output directory for the downloaded file [required]
Options:
--key <str>: Public share key (last path segment of /share/<key>)--slug <str>: Public share slug (last path segment of /s/<slug>)--filename <str>: Filename to use (defaults to original filename or orig-{asset_id})--show-progress: Show progress bar while downloading--help: Show this message and exit.
immichpy assets play-asset-video-to-file
Save an asset's video stream to a file.
Downloads the video stream for the asset and saves it to the specified output directory. The filename can be specified or will be derived from the response headers.
Usage:
immichpy assets play-asset-video-to-file [OPTIONS] {id} {out_dir}
Arguments:
id: Asset ID (UUID) [required]out_dir: Output directory for the video file [required]
Options:
--key <str>: Public share key (last path segment of /share/<key>)--slug <str>: Public share slug (last path segment of /s/<slug>)--filename <str>: Filename to use (defaults to original filename or video-{asset_id})--show-progress: Show progress bar while downloading--help: Show this message and exit.
immichpy assets view-asset-to-file
Save an asset's thumbnail to a file.
Downloads the thumbnail for the asset and saves it to the specified output directory. The filename can be specified or will be derived from the response headers.
Usage:
immichpy assets view-asset-to-file [OPTIONS] {id} {out_dir}
Arguments:
id: Asset ID (UUID) [required]out_dir: Output directory for the thumbnail file [required]
Options:
--key <str>: Public share key (last path segment of /share/<key>)--slug <str>: Public share slug (last path segment of /s/<slug>)--size <str>: Thumbnail size: fullsize, preview, or thumbnail--filename <str>: Filename to use (defaults to original filename or thumb-{asset_id})--show-progress: Show progress bar while downloading--help: Show this message and exit.
immichpy assets upload
Upload assets with smart features.
Uploads files or directories with duplicate detection, album management, sidecar support, and dry run capability. Directories are automatically walked recursively.
Usage:
immichpy assets upload [OPTIONS] {paths}...
Arguments:
paths...: File or directory paths to upload (can specify multiple) [required]
Options:
--ignore-pattern <str>: Wildcard pattern to ignore files (uses fnmatch, not regex)--include-hidden: Include hidden files (starting with '.')--skip-duplicates: Check for duplicates using SHA1 hashes before uploading--concurrency <int>: Number of concurrent uploads [default: 5]--retries <int>: Max upload attempts per file on transient (5xx/connection) errors. Set to 1 to disable. [default: 3]--show-progress: Show progress bars--album-name <str>: Album name to create or use (if not provided, no album operations are performed)--delete-uploads: Delete successfully uploaded files locally--delete-duplicates: Delete rejected duplicate files locally--dry-run: Simulate uploads without actually uploading--help: Show this message and exit.
immichpy auth
Endpoints related to user authentication, including OAuth.
Usage:
immichpy auth [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
change-password: Change passwordchange-pin-code: Change pin codefinish-o-auth: Finish OAuthget-auth-status: Retrieve auth statuslink-o-auth-account: Link OAuth accountlock-auth-session: Lock auth sessionlogin: Loginlogout: Logoutlogout-o-auth: Backchannel OAuth logoutredirect-o-auth-to-mobile: Redirect OAuth to mobilereset-pin-code: Reset pin codesetup-pin-code: Setup pin codesign-up-admin: Register adminstart-o-auth: Start OAuthunlink-o-auth-account: Unlink OAuth accountunlock-auth-session: Unlock auth sessionvalidate-access-token: Validate access token
immichpy auth change-password
Change password
Usage:
immichpy auth change-password [OPTIONS]
Options:
--invalidate-sessions <true|false>: Invalidate all other sessions--new-password <str>: New password (min 8 characters)
Example: password [required]
--password <str>: Current password
Example: password [required]
--help: Show this message and exit.
immichpy auth change-pin-code
Change pin code
Usage:
immichpy auth change-pin-code [OPTIONS]
Options:
--new-pin-code <str>: New PIN code (4-6 digits) [required]--password <str>: User password (required if PIN code is not provided)
Example: password
--pin-code <str>: New PIN code (4-6 digits)
Example: 123456
--help: Show this message and exit.
immichpy auth finish-o-auth
Finish OAuth
Usage:
immichpy auth finish-o-auth [OPTIONS]
Options:
--code-verifier <str>: OAuth code verifier (PKCE)--state <str>: OAuth state parameter--url <str>: OAuth callback URL [required]--help: Show this message and exit.
immichpy auth get-auth-status
Retrieve auth status
Usage:
immichpy auth get-auth-status [OPTIONS]
Options:
--help: Show this message and exit.
immichpy auth link-o-auth-account
Link OAuth account
Usage:
immichpy auth link-o-auth-account [OPTIONS]
Options:
--code-verifier <str>: OAuth code verifier (PKCE)--state <str>: OAuth state parameter--url <str>: OAuth callback URL [required]--help: Show this message and exit.
immichpy auth lock-auth-session
Lock auth session
Usage:
immichpy auth lock-auth-session [OPTIONS]
Options:
--help: Show this message and exit.
immichpy auth login
Login
Usage:
immichpy auth login [OPTIONS]
Options:
--email <str>: User email
Example: testuser@email.com [required]
--password <str>: User password
Example: password [required]
--help: Show this message and exit.
immichpy auth logout
Logout
Usage:
immichpy auth logout [OPTIONS]
Options:
--help: Show this message and exit.
immichpy auth logout-o-auth
Backchannel OAuth logout
Usage:
immichpy auth logout-o-auth [OPTIONS]
Options:
--logout-token <str>: OAuth logout token [required]--help: Show this message and exit.
immichpy auth redirect-o-auth-to-mobile
Redirect OAuth to mobile
Usage:
immichpy auth redirect-o-auth-to-mobile [OPTIONS]
Options:
--help: Show this message and exit.
immichpy auth reset-pin-code
Reset pin code
Usage:
immichpy auth reset-pin-code [OPTIONS]
Options:
--password <str>: User password (required if PIN code is not provided)
Example: password
--pin-code <str>: New PIN code (4-6 digits)
Example: 123456
--help: Show this message and exit.
immichpy auth setup-pin-code
Setup pin code
Usage:
immichpy auth setup-pin-code [OPTIONS]
Options:
--pin-code <str>: PIN code (4-6 digits)
Example: 123456 [required]
--help: Show this message and exit.
immichpy auth sign-up-admin
Register admin
Usage:
immichpy auth sign-up-admin [OPTIONS]
Options:
--email <str>: User email
Example: testuser@email.com [required]
--name <str>: User name
Example: Admin [required]
--password <str>: User password
Example: password [required]
--help: Show this message and exit.
immichpy auth start-o-auth
Start OAuth
Usage:
immichpy auth start-o-auth [OPTIONS]
Options:
--code-challenge <str>: OAuth code challenge (PKCE)--redirect-uri <str>: OAuth redirect URI [required]--state <str>: OAuth state parameter--help: Show this message and exit.
immichpy auth unlink-o-auth-account
Unlink OAuth account
Usage:
immichpy auth unlink-o-auth-account [OPTIONS]
Options:
--help: Show this message and exit.
immichpy auth unlock-auth-session
Unlock auth session
Usage:
immichpy auth unlock-auth-session [OPTIONS]
Options:
--password <str>: User password (required if PIN code is not provided)
Example: password
--pin-code <str>: New PIN code (4-6 digits)
Example: 123456
--help: Show this message and exit.
immichpy auth validate-access-token
Validate access token
Usage:
immichpy auth validate-access-token [OPTIONS]
Options:
--help: Show this message and exit.
immichpy auth-admin
Administrative endpoints related to authentication.
Usage:
immichpy auth-admin [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
unlink-all-o-auth-accounts-admin: Unlink all OAuth accounts
immichpy auth-admin unlink-all-o-auth-accounts-admin
Unlink all OAuth accounts
Usage:
immichpy auth-admin unlink-all-o-auth-accounts-admin [OPTIONS]
Options:
--help: Show this message and exit.
immichpy download
Endpoints for downloading assets or collections of assets.
Usage:
immichpy download [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
download-archive: Download asset archiveget-download-info: Retrieve download informationdownload-archive-to-file: Download one or more asset archives and...
immichpy download download-archive
Download asset archive
Usage:
immichpy download download-archive [OPTIONS]
Options:
--archive-name <str>: The name of the archive to download, without extension--asset-ids <uuid>: Asset IDs [required]--edited <true|false>: Download edited asset if available--key <str>--slug <str>--help: Show this message and exit.
immichpy download get-download-info
Retrieve download information
Usage:
immichpy download get-download-info [OPTIONS]
Options:
--album-id <uuid>: Album ID to download--archive-size <int range>: Archive size limit in bytes [1<=x<=9007199254740991]--asset-ids <uuid>: Asset IDs to download--key <str>--slug <str>--user-id <uuid>: User ID to download assets from--help: Show this message and exit.
immichpy download download-archive-to-file
Download one or more asset archives and save them to ZIP files.
Downloads archives sequentially (not in parallel) to avoid overloading the server. The download_info parameter can be provided via --json or using dotted flags.
Usage:
immichpy download download-archive-to-file [OPTIONS] {out_dir}
Arguments:
out_dir: Output directory for the downloaded ZIP archives [required]
Options:
--key <str>: Public share key (last path segment of /share/<key>)--slug <str>: Public share slug (last path segment of /s/<slug>)--show-progress: Show progress bars (per-archive bytes + overall archive count)--album-id <str>: Album ID to download--archive-size <int>: Archive size limit in bytes--asset-ids <str>: Asset IDs to download--user-id <str>: User ID to download assets from--help: Show this message and exit.
immichpy config
Configure the CLI with server details, profiles, and request settings.
Usage:
immichpy config [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
set: Set a value in the config file.get: Get a value from the config file.reset: Reset the configuration by deleting the...open: Open the config file in the default editor.
immichpy config set
Set a value in the config file.
Usage:
immichpy config set [OPTIONS] {key}
Arguments:
key: Dot-separated config key [required]
Options:
-v, --value <str>: Value to set (prompts if not provided) [required]--help: Show this message and exit.
immichpy config get
Get a value from the config file. Secrets are redacted by default.
Usage:
immichpy config get [OPTIONS] {key}
Arguments:
key: The key to get from the config [required]
Options:
--show-secrets: Show secret values without redaction--help: Show this message and exit.
immichpy config reset
Reset the configuration by deleting the config file.
Usage:
immichpy config reset [OPTIONS]
Options:
-y, --yes: Skip confirmation--help: Show this message and exit.
immichpy config open
Open the config file in the default editor.
Usage:
immichpy config open [OPTIONS]
Options:
--help: Show this message and exit.
immichpy duplicates
Endpoints for managing and identifying duplicate assets.
Usage:
immichpy duplicates [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
delete-duplicate: Dismiss a duplicate groupdelete-duplicates: Delete duplicatesget-asset-duplicates: Retrieve duplicatesresolve-duplicates: Resolve duplicate groups
immichpy duplicates delete-duplicate
Dismiss a duplicate group
Usage:
immichpy duplicates delete-duplicate [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy duplicates delete-duplicates
Delete duplicates
Usage:
immichpy duplicates delete-duplicates [OPTIONS]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy duplicates get-asset-duplicates
Retrieve duplicates
Usage:
immichpy duplicates get-asset-duplicates [OPTIONS]
Options:
--help: Show this message and exit.
immichpy duplicates resolve-duplicates
Resolve duplicate groups
Usage:
immichpy duplicates resolve-duplicates [OPTIONS]
Options:
--groups <str>: List of duplicate groups to resolve
As a JSON string with keys: duplicateId (string), keepAssetIds (string[]), trashAssetIds (string[]) [required]
--help: Show this message and exit.
immichpy faces
A face is a detected human face within an asset, which can be associated with a person. Faces are normally detected via machine learning, but can also be created manually.
Usage:
immichpy faces [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-face: Create a facedelete-face: Delete a faceget-faces: Retrieve faces for assetreassign-faces-by-id: Re-assign a face to another person
immichpy faces create-face
Create a face
Usage:
immichpy faces create-face [OPTIONS]
Options:
--asset-id <uuid>: Asset ID [required]--height <int range>: Face bounding box height [-9007199254740991<=x<=9007199254740991; required]--image-height <int range>: Image height in pixels [-9007199254740991<=x<=9007199254740991; required]--image-width <int range>: Image width in pixels [-9007199254740991<=x<=9007199254740991; required]--person-id <uuid>: Person ID [required]--width <int range>: Face bounding box width [-9007199254740991<=x<=9007199254740991; required]--x <int range>: Face bounding box X coordinate [-9007199254740991<=x<=9007199254740991; required]--y <int range>: Face bounding box Y coordinate [-9007199254740991<=x<=9007199254740991; required]--help: Show this message and exit.
immichpy faces delete-face
Delete a face
Usage:
immichpy faces delete-face [OPTIONS] {id}
Arguments:
id: [required]
Options:
--force: Force delete even if person has other faces [required]--help: Show this message and exit.
immichpy faces get-faces
Retrieve faces for asset
Usage:
immichpy faces get-faces [OPTIONS]
Options:
--id <uuid>: Face ID [required]--help: Show this message and exit.
immichpy faces reassign-faces-by-id
Re-assign a face to another person
Usage:
immichpy faces reassign-faces-by-id [OPTIONS] {id}
Arguments:
id: [required]
Options:
--body-id <uuid>: Face ID [required]--help: Show this message and exit.
immichpy jobs
Queues and background jobs are used for processing tasks asynchronously. Queues can be paused and resumed as needed.
Usage:
immichpy jobs [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-job: Create a manual jobget-queues-legacy: Retrieve queue counts and status (DEPRECATED)run-queue-command-legacy: Run jobs (DEPRECATED)
immichpy jobs create-job
Create a manual job
Usage:
immichpy jobs create-job [OPTIONS]
Options:
--name <person-cleanup|tag-cleanup|user-cleanup|memory-cleanup|memory-create|backup-database|integrity-missing-files|integrity-untracked-files|integrity-checksum-mismatch|integrity-missing-files-refresh|integrity-untracked-files-refresh|integrity-checksum-mismatch-refresh|integrity-missing-files-delete-all|integrity-untracked-files-delete-all|integrity-checksum-mismatch-delete-all>: Manual job name [required]--help: Show this message and exit.
immichpy jobs get-queues-legacy
Retrieve queue counts and status
Usage:
immichpy jobs get-queues-legacy [OPTIONS]
Options:
--help: Show this message and exit.
immichpy jobs run-queue-command-legacy
Run jobs
Usage:
immichpy jobs run-queue-command-legacy [OPTIONS] {name}:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>
Arguments:
name:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>: [required]
Options:
--command <start|pause|resume|empty|clear-failed>: Queue command to execute [required]--force <true|false>: Force the command execution (if applicable)--help: Show this message and exit.
immichpy libraries
An external library is made up of input file paths or expressions that are scanned for asset files. Discovered files are automatically imported. Assets much be unique within a library, but can be duplicated across libraries. Each user has a default upload library, and can have one or more external libraries.
Usage:
immichpy libraries [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-library: Create a librarydelete-library: Delete a libraryget-all-libraries: Retrieve librariesget-library: Retrieve a libraryget-library-statistics: Retrieve library statisticsscan-library: Scan a libraryupdate-library: Update a library (DEPRECATED)validate: Validate library settings
immichpy libraries create-library
Create a library
Usage:
immichpy libraries create-library [OPTIONS]
Options:
--exclusion-patterns <str>: Exclusion patterns (max 128)--import-paths <str>: Import paths (max 128)--name <str>: Library name--owner-id <uuid>: Owner user ID [required]--help: Show this message and exit.
immichpy libraries delete-library
Delete a library
Usage:
immichpy libraries delete-library [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy libraries get-all-libraries
Retrieve libraries
Usage:
immichpy libraries get-all-libraries [OPTIONS]
Options:
--help: Show this message and exit.
immichpy libraries get-library
Retrieve a library
Usage:
immichpy libraries get-library [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy libraries get-library-statistics
Retrieve library statistics
Usage:
immichpy libraries get-library-statistics [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy libraries scan-library
Scan a library
Usage:
immichpy libraries scan-library [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy libraries update-library
Update a library
Usage:
immichpy libraries update-library [OPTIONS] {id}
Arguments:
id: [required]
Options:
--exclusion-patterns <str>: Exclusion patterns (max 128)--import-paths <str>: Import paths (max 128)--name <str>: Library name--help: Show this message and exit.
immichpy libraries validate
Validate library settings
Usage:
immichpy libraries validate [OPTIONS] {id}
Arguments:
id: [required]
Options:
--exclusion-patterns <str>: Exclusion patterns (max 128)--import-paths <str>: Import paths to validate (max 128)--help: Show this message and exit.
immichpy maintenance-admin
Maintenance mode allows you to put Immich in a read-only state to perform various operations.
Usage:
immichpy maintenance-admin [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
delete-integrity-report: Delete integrity report itemdetect-prior-install: Detect existing installget-integrity-report: Get integrity report by typeget-integrity-report-csv: Export integrity report by type as CSVget-integrity-report-file: Download flagged fileget-integrity-report-summary: Get integrity report summaryget-maintenance-status: Get maintenance mode statusmaintenance-login: Log into maintenance modeset-maintenance-mode: Set maintenance mode
immichpy maintenance-admin delete-integrity-report
Delete integrity report item
Usage:
immichpy maintenance-admin delete-integrity-report [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy maintenance-admin detect-prior-install
Detect existing install
Usage:
immichpy maintenance-admin detect-prior-install [OPTIONS]
Options:
--help: Show this message and exit.
immichpy maintenance-admin get-integrity-report
Get integrity report by type
Usage:
immichpy maintenance-admin get-integrity-report [OPTIONS]
Options:
--cursor <str>: Cursor for pagination--limit <int range>: Number of items per page [0<=x<=9007199254740991]--type <untracked_file|missing_file|checksum_mismatch>: [required]--help: Show this message and exit.
immichpy maintenance-admin get-integrity-report-csv
Export integrity report by type as CSV
Usage:
immichpy maintenance-admin get-integrity-report-csv [OPTIONS] {type}:<untracked_file|missing_file|checksum_mismatch>
Arguments:
type:<untracked_file|missing_file|checksum_mismatch>: [required]
Options:
--help: Show this message and exit.
immichpy maintenance-admin get-integrity-report-file
Download flagged file
Usage:
immichpy maintenance-admin get-integrity-report-file [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy maintenance-admin get-integrity-report-summary
Get integrity report summary
Usage:
immichpy maintenance-admin get-integrity-report-summary [OPTIONS]
Options:
--help: Show this message and exit.
immichpy maintenance-admin get-maintenance-status
Get maintenance mode status
Usage:
immichpy maintenance-admin get-maintenance-status [OPTIONS]
Options:
--help: Show this message and exit.
immichpy maintenance-admin maintenance-login
Log into maintenance mode
Usage:
immichpy maintenance-admin maintenance-login [OPTIONS]
Options:
--token <str>: Maintenance token--help: Show this message and exit.
immichpy maintenance-admin set-maintenance-mode
Set maintenance mode
Usage:
immichpy maintenance-admin set-maintenance-mode [OPTIONS]
Options:
--action <start|end|select_database_restore|restore_database>: Maintenance action [required]--restore-backup-filename <str>: Restore backup filename--help: Show this message and exit.
immichpy map
Map endpoints include supplemental functionality related to geolocation, such as reverse geocoding and retrieving map markers for assets with geolocation data.
Usage:
immichpy map [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-map-markers: Retrieve map markersreverse-geocode: Reverse geocode coordinates
immichpy map get-map-markers
Retrieve map markers
Usage:
immichpy map get-map-markers [OPTIONS]
Options:
--file-created-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter assets created after this date
Example: 2024-01-01T00:00:00.000Z
--file-created-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter assets created before this date
Example: 2024-01-01T00:00:00.000Z
--is-archived <true|false>: Filter by archived status--is-favorite <true|false>: Filter by favorite status--with-partners <true|false>: Include partner assets--with-shared-albums <true|false>: Include shared album assets--help: Show this message and exit.
immichpy map reverse-geocode
Reverse geocode coordinates
Usage:
immichpy map reverse-geocode [OPTIONS]
Options:
--lat <float>: Latitude (-90 to 90) [required]--lon <float>: Longitude (-180 to 180) [required]--help: Show this message and exit.
immichpy memories
A memory is a specialized collection of assets with dedicated viewing implementations in the web and mobile clients. A memory includes fields related to visibility and are automatically generated per user via a background job.
Usage:
immichpy memories [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
add-memory-assets: Add assets to a memorycreate-memory: Create a memorydelete-memory: Delete a memoryget-memory: Retrieve a memorymemories-statistics: Retrieve memories statisticsremove-memory-assets: Remove assets from a memorysearch-memories: Retrieve memoriesupdate-memory: Update a memory (DEPRECATED)
immichpy memories add-memory-assets
Add assets to a memory
Usage:
immichpy memories add-memory-assets [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy memories create-memory
Create a memory
Usage:
immichpy memories create-memory [OPTIONS]
Options:
--asset-ids <uuid>: Asset IDs to associate with memory--data-year <int range>: Year for on this day memory [1000<=x<=9999; required]--hide-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when memory should be hidden
Example: 2024-01-01T00:00:00.000Z
--is-saved <true|false>: Is memory saved--memory-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Memory date
Example: 2024-01-01T00:00:00.000Z [required]
--seen-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when memory was seen
Example: 2024-01-01T00:00:00.000Z
--show-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when memory should be shown
Example: 2024-01-01T00:00:00.000Z
--type <on_this_day>: Memory type [required]--help: Show this message and exit.
immichpy memories delete-memory
Delete a memory
Usage:
immichpy memories delete-memory [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy memories get-memory
Retrieve a memory
Usage:
immichpy memories get-memory [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy memories memories-statistics
Retrieve memories statistics
Usage:
immichpy memories memories-statistics [OPTIONS]
Options:
--for <str>: Filter by date
Example: 2024-01-01
--id <uuid>: Memory ID--is-saved <true|false>: Filter by saved status--is-trashed <true|false>: Include trashed memories--is-upcoming <true|false>: Filter by memories that have not been shown yet--order <asc|desc|random>--page <int range>: Page number [1<=x<=9007199254740991]--size <int range>: Number of memories to return [1<=x<=9007199254740991]--type <on_this_day>--help: Show this message and exit.
immichpy memories remove-memory-assets
Remove assets from a memory
Usage:
immichpy memories remove-memory-assets [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy memories search-memories
Retrieve memories
Usage:
immichpy memories search-memories [OPTIONS]
Options:
--for <str>: Filter by date
Example: 2024-01-01
--id <uuid>: Memory ID--is-saved <true|false>: Filter by saved status--is-trashed <true|false>: Include trashed memories--is-upcoming <true|false>: Filter by memories that have not been shown yet--order <asc|desc|random>--page <int range>: Page number [1<=x<=9007199254740991]--size <int range>: Number of memories to return [1<=x<=9007199254740991]--type <on_this_day>--help: Show this message and exit.
immichpy memories update-memory
Update a memory
Usage:
immichpy memories update-memory [OPTIONS] {id}
Arguments:
id: [required]
Options:
--is-saved <true|false>: Is memory saved--memory-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Memory date
Example: 2024-01-01T00:00:00.000Z
--seen-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when memory was seen
Example: 2024-01-01T00:00:00.000Z
--help: Show this message and exit.
immichpy notifications
A notification is a specialized message sent to users to inform them of important events. Currently, these notifications are only shown in the Immich web application.
Usage:
immichpy notifications [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
delete-notification: Delete a notificationdelete-notifications: Delete notificationsget-notification: Get a notificationget-notifications: Retrieve notificationsupdate-notification: Update a notificationupdate-notifications: Update notifications
immichpy notifications delete-notification
Delete a notification
Usage:
immichpy notifications delete-notification [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy notifications delete-notifications
Delete notifications
Usage:
immichpy notifications delete-notifications [OPTIONS]
Options:
--ids <uuid>: Notification IDs to delete [required]--help: Show this message and exit.
immichpy notifications get-notification
Get a notification
Usage:
immichpy notifications get-notification [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy notifications get-notifications
Retrieve notifications
Usage:
immichpy notifications get-notifications [OPTIONS]
Options:
--id <uuid>: Filter by notification ID--level <success|error|warning|info>--type <JobFailed|BackupFailed|SystemMessage|AlbumInvite|AlbumUpdate|ClusterGroupRequest|Custom>--unread <true|false>: Filter by unread status--help: Show this message and exit.
immichpy notifications update-notification
Update a notification
Usage:
immichpy notifications update-notification [OPTIONS] {id}
Arguments:
id: [required]
Options:
--read-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when notification was read
Example: 2024-01-01T00:00:00.000Z
--help: Show this message and exit.
immichpy notifications update-notifications
Update notifications
Usage:
immichpy notifications update-notifications [OPTIONS]
Options:
--ids <uuid>: Notification IDs to update [required]--read-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when notifications were read
Example: 2024-01-01T00:00:00.000Z
--help: Show this message and exit.
immichpy notifications-admin
Notification administrative endpoints.
Usage:
immichpy notifications-admin [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-notification: Create a notificationget-notification-template-admin: Render email templatesend-test-email-admin: Send test email
immichpy notifications-admin create-notification
Create a notification
Usage:
immichpy notifications-admin create-notification [OPTIONS]
Options:
--data <str>: Additional notification data
As a JSON string
--description <str>: Notification description--level <success|error|warning|info>: Notification level--read-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Date when notification was read
Example: 2024-01-01T00:00:00.000Z
--title <str>: Notification title [required]--type <JobFailed|BackupFailed|SystemMessage|AlbumInvite|AlbumUpdate|ClusterGroupRequest|Custom>: Notification type--user-id <uuid>: User ID to send notification to [required]--help: Show this message and exit.
immichpy notifications-admin get-notification-template-admin
Render email template
Usage:
immichpy notifications-admin get-notification-template-admin [OPTIONS] {name}
Arguments:
name: [required]
Options:
--template <str>: Template name [required]--help: Show this message and exit.
immichpy notifications-admin send-test-email-admin
Send test email
Usage:
immichpy notifications-admin send-test-email-admin [OPTIONS]
Options:
--enabled: Whether SMTP email notifications are enabled [required]--from <str>: Email address to send from [required]--reply-to <str>: Email address for replies [required]--transport-host <str>: SMTP server hostname [required]--transport-ignore-cert: Whether to ignore SSL certificate errors [required]--transport-password <str>: SMTP password [required]--transport-port <int range>: SMTP server port [0<=x<=65535; required]--transport-secure: Whether to use secure connection (TLS/SSL) [required]--transport-username <str>: SMTP username [required]--help: Show this message and exit.
immichpy partners
A partner is a link with another user that allows sharing of assets between two users.
Usage:
immichpy partners [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-partner: Create a partnercreate-partner-deprecated: Create a partner (DEPRECATED)get-partners: Retrieve partnersremove-partner: Remove a partnerupdate-partner: Update a partner
immichpy partners create-partner
Create a partner
Usage:
immichpy partners create-partner [OPTIONS]
Options:
--shared-with-id <uuid>: User ID to share with [required]--help: Show this message and exit.
immichpy partners create-partner-deprecated
Create a partner
Usage:
immichpy partners create-partner-deprecated [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy partners get-partners
Retrieve partners
Usage:
immichpy partners get-partners [OPTIONS]
Options:
--direction <shared-by|shared-with>: [required]--help: Show this message and exit.
immichpy partners remove-partner
Remove a partner
Usage:
immichpy partners remove-partner [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy partners update-partner
Update a partner
Usage:
immichpy partners update-partner [OPTIONS] {id}
Arguments:
id: [required]
Options:
--in-timeline: Show partner assets in timeline [required]--help: Show this message and exit.
immichpy people
A person is a collection of faces, which can be favorited and named. A person can also be merged into another person. People are automatically created via the face recognition job.
Usage:
immichpy people [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-person: Create a persondelete-people: Delete peopledelete-person: Delete personget-all-people: Get all peopleget-person: Get a personget-person-statistics: Get person statisticsget-person-thumbnail: Get person thumbnailmerge-people: Merge peoplemerge-person-legacy: Merge people (DEPRECATED)reassign-faces: Reassign facesupdate-people: Update peopleupdate-person: Update person (DEPRECATED)
immichpy people create-person
Create a person
Usage:
immichpy people create-person [OPTIONS]
Options:
--birth-date <str>: Person date of birth--color <str>: Person color (hex)--is-favorite <true|false>: Mark as favorite--is-hidden <true|false>: Person visibility (hidden)--name <str>: Person name--help: Show this message and exit.
immichpy people delete-people
Delete people
Usage:
immichpy people delete-people [OPTIONS]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy people delete-person
Delete person
Usage:
immichpy people delete-person [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy people get-all-people
Get all people
Usage:
immichpy people get-all-people [OPTIONS]
Options:
--closest-asset-id <uuid>: Closest asset ID for similarity search--closest-person-id <uuid>: Closest person ID for similarity search--page <int range>: Page number for pagination [1<=x<=9007199254740991]--size <int range>: Number of items per page [1<=x<=1000]--with-hidden <true|false>: Include hidden people--help: Show this message and exit.
immichpy people get-person
Get a person
Usage:
immichpy people get-person [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy people get-person-statistics
Get person statistics
Usage:
immichpy people get-person-statistics [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy people get-person-thumbnail
Get person thumbnail
Usage:
immichpy people get-person-thumbnail [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy people merge-people
Merge people
Usage:
immichpy people merge-people [OPTIONS]
Options:
--ids <uuid>: Person IDs to merge [required]--help: Show this message and exit.
immichpy people merge-person-legacy
Merge people
Usage:
immichpy people merge-person-legacy [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: Person IDs to merge [required]--help: Show this message and exit.
immichpy people reassign-faces
Reassign faces
Usage:
immichpy people reassign-faces [OPTIONS] {id}
Arguments:
id: [required]
Options:
--data <str>: Face update items
As a JSON string with keys: assetId (string), personId (string) [required]
--help: Show this message and exit.
immichpy people update-people
Update people
Usage:
immichpy people update-people [OPTIONS]
Options:
--people <str>: People to update
As a JSON string with keys: birthDate (string), color (string), featureFaceAssetId (string), id (string), isFavorite (boolean), isHidden (boolean), name (string) [required]
--help: Show this message and exit.
immichpy people update-person
Update person
Usage:
immichpy people update-person [OPTIONS] {id}
Arguments:
id: [required]
Options:
--birth-date <str>: Person date of birth--color <str>: Person color (hex)--feature-face-asset-id <uuid>: Asset ID used for feature face thumbnail--is-favorite <true|false>: Mark as favorite--is-hidden <true|false>: Person visibility (hidden)--name <str>: Person name--help: Show this message and exit.
immichpy plugins
A plugin is an installed module that makes filters and actions available for the workflow feature.
Usage:
immichpy plugins [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-plugin: Retrieve a pluginsearch-plugin-methods: Retrieve plugin methodssearch-plugin-templates: Retrieve workflow templatessearch-plugins: List all plugins
immichpy plugins get-plugin
Retrieve a plugin
Usage:
immichpy plugins get-plugin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy plugins search-plugin-methods
Retrieve plugin methods
Usage:
immichpy plugins search-plugin-methods [OPTIONS]
Options:
--description <str>--enabled <true|false>: Whether the plugin method is enabled--id <uuid>: Plugin method ID--name <str>--plugin-name <str>: Plugin name--plugin-version <str>: Plugin version--title <str>--trigger <AssetCreate|AssetMetadataExtraction|AssetTagged>: Workflow trigger--type <AssetV1>: Workflow types--help: Show this message and exit.
immichpy plugins search-plugin-templates
Retrieve workflow templates
Usage:
immichpy plugins search-plugin-templates [OPTIONS]
Options:
--help: Show this message and exit.
immichpy plugins search-plugins
List all plugins
Usage:
immichpy plugins search-plugins [OPTIONS]
Options:
--description <str>--enabled <true|false>: Whether the plugin is enabled--id <uuid>: Plugin ID--name <str>--title <str>--version <str>--help: Show this message and exit.
immichpy queues
Queues and background jobs are used for processing tasks asynchronously. Queues can be paused and resumed as needed.
Usage:
immichpy queues [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
empty-queue: Empty a queueget-queue: Retrieve a queueget-queue-jobs: Retrieve queue jobsget-queues: List all queuesupdate-queue: Update a queue
immichpy queues empty-queue
Empty a queue
Usage:
immichpy queues empty-queue [OPTIONS] {name}:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>
Arguments:
name:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>: [required]
Options:
--failed <true|false>: If true, will also remove failed jobs from the queue.--help: Show this message and exit.
immichpy queues get-queue
Retrieve a queue
Usage:
immichpy queues get-queue [OPTIONS] {name}:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>
Arguments:
name:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>: [required]
Options:
--help: Show this message and exit.
immichpy queues get-queue-jobs
Retrieve queue jobs
Usage:
immichpy queues get-queue-jobs [OPTIONS] {name}:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>
Arguments:
name:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>: [required]
Options:
--status <active|failed|completed|delayed|waiting|paused>: Filter jobs by status--help: Show this message and exit.
immichpy queues get-queues
List all queues
Usage:
immichpy queues get-queues [OPTIONS]
Options:
--help: Show this message and exit.
immichpy queues update-queue
Update a queue
Usage:
immichpy queues update-queue [OPTIONS] {name}:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>
Arguments:
name:<thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|integrityCheck|editor>: [required]
Options:
--is-paused <true|false>: Whether to pause the queue--help: Show this message and exit.
immichpy search
Endpoints related to searching assets via text, smart search, optical character recognition (OCR), and other filters like person, album, and other metadata. Search endpoints usually support pagination and sorting.
Usage:
immichpy search [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-assets-by-city: Retrieve assets by cityget-explore-data: Retrieve explore dataget-search-suggestions: Retrieve search suggestionssearch-asset-statistics: Search asset statisticssearch-assets: Search assets by metadatasearch-large-assets: Search large assets (DEPRECATED)search-person: Search peoplesearch-places: Search placessearch-random: Search random assetssearch-smart: Smart asset search
immichpy search get-assets-by-city
Retrieve assets by city
Usage:
immichpy search get-assets-by-city [OPTIONS]
Options:
--help: Show this message and exit.
immichpy search get-explore-data
Retrieve explore data
Usage:
immichpy search get-explore-data [OPTIONS]
Options:
--help: Show this message and exit.
immichpy search get-search-suggestions
Retrieve search suggestions
Usage:
immichpy search get-search-suggestions [OPTIONS]
Options:
--country <str>: Filter by country--include-null <true|false>: Include null values in suggestions--lens-model <str>: Filter by lens model--make <str>: Filter by camera make--model <str>: Filter by camera model--state <str>: Filter by state/province--type <country|state|city|camera-make|camera-model|camera-lens-model>: [required]--help: Show this message and exit.
immichpy search search-asset-statistics
Search asset statistics
Usage:
immichpy search search-asset-statistics [OPTIONS]
Options:
--album-ids <uuid>: Filter by album IDs--city <str>: Filter by city name--country <str>: Filter by country name--created-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (after)
Example: 2024-01-01T00:00:00.000Z
--created-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (before)
Example: 2024-01-01T00:00:00.000Z
--description <str>: Filter by description text--filter-album-ids-all <uuid>--filter-album-ids-any <uuid>--filter-album-ids-none <uuid>--filter-checksum-eq <str>--filter-checksum-in <str>--filter-checksum-ne <str>--filter-checksum-not-in <str>--filter-city-eq <str>--filter-city-in <str>--filter-city-ne <str>--filter-city-not-in <str>--filter-country-eq <str>--filter-country-in <str>--filter-country-ne <str>--filter-country-not-in <str>--filter-created-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-description-ends-with <str>--filter-description-eq <str>--filter-description-in <str>--filter-description-like <str>--filter-description-ne <str>--filter-description-not-in <str>--filter-description-not-like <str>--filter-description-starts-with <str>--filter-encoded-video-path-eq <str>--filter-encoded-video-path-in <str>--filter-encoded-video-path-ne <str>--filter-encoded-video-path-not-in <str>--filter-file-size-in-bytes-eq <float>--filter-file-size-in-bytes-gt <float>--filter-file-size-in-bytes-gte <float>--filter-file-size-in-bytes-in <float>--filter-file-size-in-bytes-lt <float>--filter-file-size-in-bytes-lte <float>--filter-file-size-in-bytes-ne <float>--filter-file-size-in-bytes-not-in <float>--filter-has-albums-eq <true|false>--filter-has-people-eq <true|false>--filter-has-tags-eq <true|false>--filter-id-eq <uuid>--filter-id-ne <uuid>--filter-is-encoded-eq <true|false>--filter-is-favorite-eq <true|false>--filter-is-motion-eq <true|false>--filter-is-offline-eq <true|false>--filter-lens-model-eq <str>--filter-lens-model-in <str>--filter-lens-model-ne <str>--filter-lens-model-not-in <str>--filter-library-id-eq <uuid>--filter-library-id-ne <uuid>--filter-make-eq <str>--filter-make-in <str>--filter-make-ne <str>--filter-make-not-in <str>--filter-model-eq <str>--filter-model-in <str>--filter-model-ne <str>--filter-model-not-in <str>--filter-ocr-matches <str>--filter-or <str>: As a JSON string with keys: albumIds (object), checksum (object), city (object), country (object), createdAt (object), description (object), encodedVideoPath (object), fileSizeInBytes (object), hasAlbums (object), hasPeople (object), hasTags (object), id (object), isEncoded (object), isFavorite (object), isMotion (object), isOffline (object), lensModel (object), libraryId (object), make (object), model (object), ocr (object), originalFileName (object), originalPath (object), personIds (object), rating (object), state (object), tagIds (object), takenAt (object), trashedAt (object), type (object), updatedAt (object), visibility (object)--filter-original-file-name-ends-with <str>--filter-original-file-name-eq <str>--filter-original-file-name-in <str>--filter-original-file-name-like <str>--filter-original-file-name-ne <str>--filter-original-file-name-not-in <str>--filter-original-file-name-not-like <str>--filter-original-file-name-starts-with <str>--filter-original-path-ends-with <str>--filter-original-path-eq <str>--filter-original-path-in <str>--filter-original-path-like <str>--filter-original-path-ne <str>--filter-original-path-not-in <str>--filter-original-path-not-like <str>--filter-original-path-starts-with <str>--filter-person-ids-all <uuid>--filter-person-ids-any <uuid>--filter-person-ids-none <uuid>--filter-rating-eq <float>--filter-rating-gt <float>--filter-rating-gte <float>--filter-rating-in <float>--filter-rating-lt <float>--filter-rating-lte <float>--filter-rating-ne <float>--filter-rating-not-in <float>--filter-state-eq <str>--filter-state-in <str>--filter-state-ne <str>--filter-state-not-in <str>--filter-tag-ids-all <uuid>--filter-tag-ids-any <uuid>--filter-tag-ids-none <uuid>--filter-taken-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-type-eq <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-type-ne <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-not-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-updated-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-visibility-eq <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-in <archive|timeline|hidden|locked>--filter-visibility-ne <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-not-in <archive|timeline|hidden|locked>--is-encoded <true|false>: Filter by encoded status--is-favorite <true|false>: Filter by favorite status--is-motion <true|false>: Filter by motion photo status--is-not-in-album <true|false>: Filter assets not in any album--is-offline <true|false>: Filter by offline status--lens-model <str>: Filter by lens model--library-id <uuid>: Library ID to filter by--make <str>: Filter by camera make--model <str>: Filter by camera model--ocr <str>: Filter by OCR text content--person-ids <uuid>: Filter by person IDs--rating <int range>: Filter by rating [1-5], or null for unrated [1<=x<=5]--state <str>: Filter by state/province name--tag-ids <uuid>: Filter by tag IDs--taken-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (after)
Example: 2024-01-01T00:00:00.000Z
--taken-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (before)
Example: 2024-01-01T00:00:00.000Z
--trashed-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (after)
Example: 2024-01-01T00:00:00.000Z
--trashed-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (before)
Example: 2024-01-01T00:00:00.000Z
--type <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--updated-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (after)
Example: 2024-01-01T00:00:00.000Z
--updated-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (before)
Example: 2024-01-01T00:00:00.000Z
--visibility <archive|timeline|hidden|locked>: Asset visibility--help: Show this message and exit.
immichpy search search-assets
Search assets by metadata
Usage:
immichpy search search-assets [OPTIONS]
Options:
--album-ids <uuid>: Filter by album IDs--checksum <str>: Filter by file checksum--city <str>: Filter by city name--country <str>: Filter by country name--created-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (after)
Example: 2024-01-01T00:00:00.000Z
--created-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (before)
Example: 2024-01-01T00:00:00.000Z
--cursor <str>: Cursor for the next page of results--description <str>: Filter by description text--encoded-video-path <str>: Filter by encoded video file path--filter-album-ids-all <uuid>--filter-album-ids-any <uuid>--filter-album-ids-none <uuid>--filter-checksum-eq <str>--filter-checksum-in <str>--filter-checksum-ne <str>--filter-checksum-not-in <str>--filter-city-eq <str>--filter-city-in <str>--filter-city-ne <str>--filter-city-not-in <str>--filter-country-eq <str>--filter-country-in <str>--filter-country-ne <str>--filter-country-not-in <str>--filter-created-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-description-ends-with <str>--filter-description-eq <str>--filter-description-in <str>--filter-description-like <str>--filter-description-ne <str>--filter-description-not-in <str>--filter-description-not-like <str>--filter-description-starts-with <str>--filter-encoded-video-path-eq <str>--filter-encoded-video-path-in <str>--filter-encoded-video-path-ne <str>--filter-encoded-video-path-not-in <str>--filter-file-size-in-bytes-eq <float>--filter-file-size-in-bytes-gt <float>--filter-file-size-in-bytes-gte <float>--filter-file-size-in-bytes-in <float>--filter-file-size-in-bytes-lt <float>--filter-file-size-in-bytes-lte <float>--filter-file-size-in-bytes-ne <float>--filter-file-size-in-bytes-not-in <float>--filter-has-albums-eq <true|false>--filter-has-people-eq <true|false>--filter-has-tags-eq <true|false>--filter-id-eq <uuid>--filter-id-ne <uuid>--filter-is-encoded-eq <true|false>--filter-is-favorite-eq <true|false>--filter-is-motion-eq <true|false>--filter-is-offline-eq <true|false>--filter-lens-model-eq <str>--filter-lens-model-in <str>--filter-lens-model-ne <str>--filter-lens-model-not-in <str>--filter-library-id-eq <uuid>--filter-library-id-ne <uuid>--filter-make-eq <str>--filter-make-in <str>--filter-make-ne <str>--filter-make-not-in <str>--filter-model-eq <str>--filter-model-in <str>--filter-model-ne <str>--filter-model-not-in <str>--filter-ocr-matches <str>--filter-or <str>: As a JSON string with keys: albumIds (object), checksum (object), city (object), country (object), createdAt (object), description (object), encodedVideoPath (object), fileSizeInBytes (object), hasAlbums (object), hasPeople (object), hasTags (object), id (object), isEncoded (object), isFavorite (object), isMotion (object), isOffline (object), lensModel (object), libraryId (object), make (object), model (object), ocr (object), originalFileName (object), originalPath (object), personIds (object), rating (object), state (object), tagIds (object), takenAt (object), trashedAt (object), type (object), updatedAt (object), visibility (object)--filter-original-file-name-ends-with <str>--filter-original-file-name-eq <str>--filter-original-file-name-in <str>--filter-original-file-name-like <str>--filter-original-file-name-ne <str>--filter-original-file-name-not-in <str>--filter-original-file-name-not-like <str>--filter-original-file-name-starts-with <str>--filter-original-path-ends-with <str>--filter-original-path-eq <str>--filter-original-path-in <str>--filter-original-path-like <str>--filter-original-path-ne <str>--filter-original-path-not-in <str>--filter-original-path-not-like <str>--filter-original-path-starts-with <str>--filter-person-ids-all <uuid>--filter-person-ids-any <uuid>--filter-person-ids-none <uuid>--filter-rating-eq <float>--filter-rating-gt <float>--filter-rating-gte <float>--filter-rating-in <float>--filter-rating-lt <float>--filter-rating-lte <float>--filter-rating-ne <float>--filter-rating-not-in <float>--filter-state-eq <str>--filter-state-in <str>--filter-state-ne <str>--filter-state-not-in <str>--filter-tag-ids-all <uuid>--filter-tag-ids-any <uuid>--filter-tag-ids-none <uuid>--filter-taken-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-type-eq <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-type-ne <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-not-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-updated-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-visibility-eq <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-in <archive|timeline|hidden|locked>--filter-visibility-ne <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-not-in <archive|timeline|hidden|locked>--id <uuid>: Filter by asset ID--is-encoded <true|false>: Filter by encoded status--is-favorite <true|false>: Filter by favorite status--is-motion <true|false>: Filter by motion photo status--is-not-in-album <true|false>: Filter assets not in any album--is-offline <true|false>: Filter by offline status--key <str>--lens-model <str>: Filter by lens model--library-id <uuid>: Library ID to filter by--make <str>: Filter by camera make--model <str>: Filter by camera model--ocr <str>: Filter by OCR text content--order <asc|desc>: Asset sort order--order-by-direction <asc|desc>: Asset sort order--order-by-field <fileCreatedAt|localDateTime|fileSizeInBytes|rating>--original-file-name <str>: Filter by original file name--original-path <str>: Filter by original file path--page <int range>: Page number [1<=x<=9007199254740991]--person-ids <uuid>: Filter by person IDs--preview-path <str>: Filter by preview file path--rating <int range>: Filter by rating [1-5], or null for unrated [1<=x<=5]--size <int range>: Number of results to return [1<=x<=1000]--slug <str>--state <str>: Filter by state/province name--tag-ids <uuid>: Filter by tag IDs--taken-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (after)
Example: 2024-01-01T00:00:00.000Z
--taken-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (before)
Example: 2024-01-01T00:00:00.000Z
--thumbnail-path <str>: Filter by thumbnail file path--trashed-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (after)
Example: 2024-01-01T00:00:00.000Z
--trashed-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (before)
Example: 2024-01-01T00:00:00.000Z
--type <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--updated-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (after)
Example: 2024-01-01T00:00:00.000Z
--updated-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (before)
Example: 2024-01-01T00:00:00.000Z
--visibility <archive|timeline|hidden|locked>: Asset visibility--with-deleted <true|false>: Include deleted assets--with-exif <true|false>: Include EXIF data in response--with-people <true|false>: Include people data in response--with-stacked <true|false>: Include stacked assets--help: Show this message and exit.
immichpy search search-large-assets
Search large assets
Usage:
immichpy search search-large-assets [OPTIONS]
Options:
--album-ids <uuid>: Filter by album IDs--city <str>: Filter by city name--country <str>: Filter by country name--created-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (after)
Example: 2024-01-01T00:00:00.000Z
--created-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (before)
Example: 2024-01-01T00:00:00.000Z
--is-encoded <true|false>: Filter by encoded status--is-favorite <true|false>: Filter by favorite status--is-motion <true|false>: Filter by motion photo status--is-not-in-album <true|false>: Filter assets not in any album--is-offline <true|false>: Filter by offline status--lens-model <str>: Filter by lens model--library-id <uuid>: Library ID to filter by--make <str>: Filter by camera make--min-file-size <int range>: Minimum file size in bytes [0<=x<=9007199254740991]--model <str>: Filter by camera model--ocr <str>: Filter by OCR text content--person-ids <uuid>: Filter by person IDs--rating <int range>: Filter by rating [1-5], or null for unrated [1<=x<=5]--size <int range>: Number of results to return [1<=x<=1000]--state <str>: Filter by state/province name--tag-ids <uuid>: Filter by tag IDs--taken-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (after)
Example: 2024-01-01T00:00:00.000Z
--taken-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (before)
Example: 2024-01-01T00:00:00.000Z
--trashed-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (after)
Example: 2024-01-01T00:00:00.000Z
--trashed-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (before)
Example: 2024-01-01T00:00:00.000Z
--type <IMAGE|VIDEO|AUDIO|OTHER>--updated-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (after)
Example: 2024-01-01T00:00:00.000Z
--updated-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (before)
Example: 2024-01-01T00:00:00.000Z
--visibility <archive|timeline|hidden|locked>--with-deleted <true|false>: Include deleted assets--with-exif <true|false>: Include EXIF data in response--help: Show this message and exit.
immichpy search search-person
Search people
Usage:
immichpy search search-person [OPTIONS]
Options:
--name <str>: Person name to search for [required]--with-hidden <true|false>: Include hidden people--help: Show this message and exit.
immichpy search search-places
Search places
Usage:
immichpy search search-places [OPTIONS]
Options:
--name <str>: Place name to search for [required]--help: Show this message and exit.
immichpy search search-random
Search random assets
Usage:
immichpy search search-random [OPTIONS]
Options:
--album-ids <uuid>: Filter by album IDs--city <str>: Filter by city name--country <str>: Filter by country name--created-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (after)
Example: 2024-01-01T00:00:00.000Z
--created-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (before)
Example: 2024-01-01T00:00:00.000Z
--filter-album-ids-all <uuid>--filter-album-ids-any <uuid>--filter-album-ids-none <uuid>--filter-checksum-eq <str>--filter-checksum-in <str>--filter-checksum-ne <str>--filter-checksum-not-in <str>--filter-city-eq <str>--filter-city-in <str>--filter-city-ne <str>--filter-city-not-in <str>--filter-country-eq <str>--filter-country-in <str>--filter-country-ne <str>--filter-country-not-in <str>--filter-created-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-description-ends-with <str>--filter-description-eq <str>--filter-description-in <str>--filter-description-like <str>--filter-description-ne <str>--filter-description-not-in <str>--filter-description-not-like <str>--filter-description-starts-with <str>--filter-encoded-video-path-eq <str>--filter-encoded-video-path-in <str>--filter-encoded-video-path-ne <str>--filter-encoded-video-path-not-in <str>--filter-file-size-in-bytes-eq <float>--filter-file-size-in-bytes-gt <float>--filter-file-size-in-bytes-gte <float>--filter-file-size-in-bytes-in <float>--filter-file-size-in-bytes-lt <float>--filter-file-size-in-bytes-lte <float>--filter-file-size-in-bytes-ne <float>--filter-file-size-in-bytes-not-in <float>--filter-has-albums-eq <true|false>--filter-has-people-eq <true|false>--filter-has-tags-eq <true|false>--filter-id-eq <uuid>--filter-id-ne <uuid>--filter-is-encoded-eq <true|false>--filter-is-favorite-eq <true|false>--filter-is-motion-eq <true|false>--filter-is-offline-eq <true|false>--filter-lens-model-eq <str>--filter-lens-model-in <str>--filter-lens-model-ne <str>--filter-lens-model-not-in <str>--filter-library-id-eq <uuid>--filter-library-id-ne <uuid>--filter-make-eq <str>--filter-make-in <str>--filter-make-ne <str>--filter-make-not-in <str>--filter-model-eq <str>--filter-model-in <str>--filter-model-ne <str>--filter-model-not-in <str>--filter-ocr-matches <str>--filter-or <str>: As a JSON string with keys: albumIds (object), checksum (object), city (object), country (object), createdAt (object), description (object), encodedVideoPath (object), fileSizeInBytes (object), hasAlbums (object), hasPeople (object), hasTags (object), id (object), isEncoded (object), isFavorite (object), isMotion (object), isOffline (object), lensModel (object), libraryId (object), make (object), model (object), ocr (object), originalFileName (object), originalPath (object), personIds (object), rating (object), state (object), tagIds (object), takenAt (object), trashedAt (object), type (object), updatedAt (object), visibility (object)--filter-original-file-name-ends-with <str>--filter-original-file-name-eq <str>--filter-original-file-name-in <str>--filter-original-file-name-like <str>--filter-original-file-name-ne <str>--filter-original-file-name-not-in <str>--filter-original-file-name-not-like <str>--filter-original-file-name-starts-with <str>--filter-original-path-ends-with <str>--filter-original-path-eq <str>--filter-original-path-in <str>--filter-original-path-like <str>--filter-original-path-ne <str>--filter-original-path-not-in <str>--filter-original-path-not-like <str>--filter-original-path-starts-with <str>--filter-person-ids-all <uuid>--filter-person-ids-any <uuid>--filter-person-ids-none <uuid>--filter-rating-eq <float>--filter-rating-gt <float>--filter-rating-gte <float>--filter-rating-in <float>--filter-rating-lt <float>--filter-rating-lte <float>--filter-rating-ne <float>--filter-rating-not-in <float>--filter-state-eq <str>--filter-state-in <str>--filter-state-ne <str>--filter-state-not-in <str>--filter-tag-ids-all <uuid>--filter-tag-ids-any <uuid>--filter-tag-ids-none <uuid>--filter-taken-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-type-eq <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-type-ne <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-not-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-updated-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-visibility-eq <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-in <archive|timeline|hidden|locked>--filter-visibility-ne <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-not-in <archive|timeline|hidden|locked>--is-encoded <true|false>: Filter by encoded status--is-favorite <true|false>: Filter by favorite status--is-motion <true|false>: Filter by motion photo status--is-not-in-album <true|false>: Filter assets not in any album--is-offline <true|false>: Filter by offline status--lens-model <str>: Filter by lens model--library-id <uuid>: Library ID to filter by--make <str>: Filter by camera make--model <str>: Filter by camera model--ocr <str>: Filter by OCR text content--person-ids <uuid>: Filter by person IDs--rating <int range>: Filter by rating [1-5], or null for unrated [1<=x<=5]--size <int range>: Number of results to return [1<=x<=1000]--state <str>: Filter by state/province name--tag-ids <uuid>: Filter by tag IDs--taken-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (after)
Example: 2024-01-01T00:00:00.000Z
--taken-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (before)
Example: 2024-01-01T00:00:00.000Z
--trashed-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (after)
Example: 2024-01-01T00:00:00.000Z
--trashed-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (before)
Example: 2024-01-01T00:00:00.000Z
--type <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--updated-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (after)
Example: 2024-01-01T00:00:00.000Z
--updated-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (before)
Example: 2024-01-01T00:00:00.000Z
--visibility <archive|timeline|hidden|locked>: Asset visibility--with-deleted <true|false>: Include deleted assets--with-exif <true|false>: Include EXIF data in response--with-people <true|false>: Include people data in response--with-stacked <true|false>: Include stacked assets--help: Show this message and exit.
immichpy search search-smart
Smart asset search
Usage:
immichpy search search-smart [OPTIONS]
Options:
--album-ids <uuid>: Filter by album IDs--city <str>: Filter by city name--country <str>: Filter by country name--created-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (after)
Example: 2024-01-01T00:00:00.000Z
--created-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by creation date (before)
Example: 2024-01-01T00:00:00.000Z
--filter-album-ids-all <uuid>--filter-album-ids-any <uuid>--filter-album-ids-none <uuid>--filter-checksum-eq <str>--filter-checksum-in <str>--filter-checksum-ne <str>--filter-checksum-not-in <str>--filter-city-eq <str>--filter-city-in <str>--filter-city-ne <str>--filter-city-not-in <str>--filter-country-eq <str>--filter-country-in <str>--filter-country-ne <str>--filter-country-not-in <str>--filter-created-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-created-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-description-ends-with <str>--filter-description-eq <str>--filter-description-in <str>--filter-description-like <str>--filter-description-ne <str>--filter-description-not-in <str>--filter-description-not-like <str>--filter-description-starts-with <str>--filter-encoded-video-path-eq <str>--filter-encoded-video-path-in <str>--filter-encoded-video-path-ne <str>--filter-encoded-video-path-not-in <str>--filter-file-size-in-bytes-eq <float>--filter-file-size-in-bytes-gt <float>--filter-file-size-in-bytes-gte <float>--filter-file-size-in-bytes-in <float>--filter-file-size-in-bytes-lt <float>--filter-file-size-in-bytes-lte <float>--filter-file-size-in-bytes-ne <float>--filter-file-size-in-bytes-not-in <float>--filter-has-albums-eq <true|false>--filter-has-people-eq <true|false>--filter-has-tags-eq <true|false>--filter-id-eq <uuid>--filter-id-ne <uuid>--filter-is-encoded-eq <true|false>--filter-is-favorite-eq <true|false>--filter-is-motion-eq <true|false>--filter-is-offline-eq <true|false>--filter-lens-model-eq <str>--filter-lens-model-in <str>--filter-lens-model-ne <str>--filter-lens-model-not-in <str>--filter-library-id-eq <uuid>--filter-library-id-ne <uuid>--filter-make-eq <str>--filter-make-in <str>--filter-make-ne <str>--filter-make-not-in <str>--filter-model-eq <str>--filter-model-in <str>--filter-model-ne <str>--filter-model-not-in <str>--filter-ocr-matches <str>--filter-or <str>: As a JSON string with keys: albumIds (object), checksum (object), city (object), country (object), createdAt (object), description (object), encodedVideoPath (object), fileSizeInBytes (object), hasAlbums (object), hasPeople (object), hasTags (object), id (object), isEncoded (object), isFavorite (object), isMotion (object), isOffline (object), lensModel (object), libraryId (object), make (object), model (object), ocr (object), originalFileName (object), originalPath (object), personIds (object), rating (object), state (object), tagIds (object), takenAt (object), trashedAt (object), type (object), updatedAt (object), visibility (object)--filter-original-file-name-ends-with <str>--filter-original-file-name-eq <str>--filter-original-file-name-in <str>--filter-original-file-name-like <str>--filter-original-file-name-ne <str>--filter-original-file-name-not-in <str>--filter-original-file-name-not-like <str>--filter-original-file-name-starts-with <str>--filter-original-path-ends-with <str>--filter-original-path-eq <str>--filter-original-path-in <str>--filter-original-path-like <str>--filter-original-path-ne <str>--filter-original-path-not-in <str>--filter-original-path-not-like <str>--filter-original-path-starts-with <str>--filter-person-ids-all <uuid>--filter-person-ids-any <uuid>--filter-person-ids-none <uuid>--filter-rating-eq <float>--filter-rating-gt <float>--filter-rating-gte <float>--filter-rating-in <float>--filter-rating-lt <float>--filter-rating-lte <float>--filter-rating-ne <float>--filter-rating-not-in <float>--filter-state-eq <str>--filter-state-in <str>--filter-state-ne <str>--filter-state-not-in <str>--filter-tag-ids-all <uuid>--filter-tag-ids-any <uuid>--filter-tag-ids-none <uuid>--filter-taken-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-taken-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-trashed-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-type-eq <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-type-ne <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--filter-type-not-in <IMAGE|VIDEO|AUDIO|OTHER>--filter-updated-at-eq <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-gte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lt <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-lte <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-updated-at-ne <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Example: 2024-01-01T00:00:00.000Z--filter-visibility-eq <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-in <archive|timeline|hidden|locked>--filter-visibility-ne <archive|timeline|hidden|locked>: Asset visibility--filter-visibility-not-in <archive|timeline|hidden|locked>--is-encoded <true|false>: Filter by encoded status--is-favorite <true|false>: Filter by favorite status--is-motion <true|false>: Filter by motion photo status--is-not-in-album <true|false>: Filter assets not in any album--is-offline <true|false>: Filter by offline status--language <str>: Search language code--lens-model <str>: Filter by lens model--library-id <uuid>: Library ID to filter by--make <str>: Filter by camera make--model <str>: Filter by camera model--ocr <str>: Filter by OCR text content--page <int range>: Page number [1<=x<=9007199254740991]--person-ids <uuid>: Filter by person IDs--query <str>: Natural language search query--query-asset-id <uuid>: Asset ID to use as search reference--rating <int range>: Filter by rating [1-5], or null for unrated [1<=x<=5]--size <int range>: Number of results to return [1<=x<=1000]--state <str>: Filter by state/province name--tag-ids <uuid>: Filter by tag IDs--taken-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (after)
Example: 2024-01-01T00:00:00.000Z
--taken-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by taken date (before)
Example: 2024-01-01T00:00:00.000Z
--trashed-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (after)
Example: 2024-01-01T00:00:00.000Z
--trashed-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by trash date (before)
Example: 2024-01-01T00:00:00.000Z
--type <IMAGE|VIDEO|AUDIO|OTHER>: Asset type--updated-after <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (after)
Example: 2024-01-01T00:00:00.000Z
--updated-before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by update date (before)
Example: 2024-01-01T00:00:00.000Z
--visibility <archive|timeline|hidden|locked>: Asset visibility--with-deleted <true|false>: Include deleted assets--with-exif <true|false>: Include EXIF data in response--help: Show this message and exit.
immichpy server
Information about the current server deployment, including version and build information, available features, supported media types, and more.
Usage:
immichpy server [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
delete-server-license: Delete server product keyget-about-info: Get server informationget-apk-links: Get APK linksget-server-config: Get config (DEPRECATED)get-server-features: Get features (DEPRECATED)get-server-license: Get product keyget-server-statistics: Get statisticsget-server-version: Get server versionget-storage: Get storageget-supported-media-types: Get supported media typesget-version-check: Get version check statusget-version-history: Get version historyping-server: Pingset-server-license: Set server product key
immichpy server delete-server-license
Delete server product key
Usage:
immichpy server delete-server-license [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-about-info
Get server information
Usage:
immichpy server get-about-info [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-apk-links
Get APK links
Usage:
immichpy server get-apk-links [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-server-config
Get config
Usage:
immichpy server get-server-config [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-server-features
Get features
Usage:
immichpy server get-server-features [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-server-license
Get product key
Usage:
immichpy server get-server-license [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-server-statistics
Get statistics
Usage:
immichpy server get-server-statistics [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-server-version
Get server version
Usage:
immichpy server get-server-version [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-storage
Get storage
Usage:
immichpy server get-storage [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-supported-media-types
Get supported media types
Usage:
immichpy server get-supported-media-types [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-version-check
Get version check status
Usage:
immichpy server get-version-check [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server get-version-history
Get version history
Usage:
immichpy server get-version-history [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server ping-server
Ping
Usage:
immichpy server ping-server [OPTIONS]
Options:
--help: Show this message and exit.
immichpy server set-server-license
Set server product key
Usage:
immichpy server set-server-license [OPTIONS]
Options:
--activation-key <str>: Activation key [required]--license-key <str>: License key (format: /^IM(SV|CL)(-[\dA-Za-z]{4}){8}$/) [required]--help: Show this message and exit.
immichpy sessions
A session represents an authenticated login session for a user. Sessions also appear in the web application as "Authorized devices".
Usage:
immichpy sessions [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-session: Create a sessiondelete-all-sessions: Delete all sessionsdelete-session: Delete a sessionget-sessions: Retrieve sessionslock-session: Lock a sessionupdate-session: Update a session (DEPRECATED)
immichpy sessions create-session
Create a session
Usage:
immichpy sessions create-session [OPTIONS]
Options:
--device-os <str>: Device OS--device-type <str>: Device type--duration <int range>: Session duration in seconds [1<=x<=9007199254740991]--help: Show this message and exit.
immichpy sessions delete-all-sessions
Delete all sessions
Usage:
immichpy sessions delete-all-sessions [OPTIONS]
Options:
--help: Show this message and exit.
immichpy sessions delete-session
Delete a session
Usage:
immichpy sessions delete-session [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy sessions get-sessions
Retrieve sessions
Usage:
immichpy sessions get-sessions [OPTIONS]
Options:
--help: Show this message and exit.
immichpy sessions lock-session
Lock a session
Usage:
immichpy sessions lock-session [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy sessions update-session
Update a session
Usage:
immichpy sessions update-session [OPTIONS] {id}
Arguments:
id: [required]
Options:
--is-pending-sync-reset <true|false>: Reset pending sync state--help: Show this message and exit.
immichpy shared-links
A shared link is a public url that provides access to a specific album, asset, or collection of assets. A shared link can be protected with a password, include a specific slug, allow or disallow downloads, and optionally include an expiration date.
Usage:
immichpy shared-links [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
add-shared-link-assets: Add assets to a shared linkcreate-shared-link: Create a shared linkget-all-shared-links: Retrieve all shared linksget-my-shared-link: Retrieve current shared linkget-shared-link-by-id: Retrieve a shared linkremove-shared-link: Delete a shared linkremove-shared-link-assets: Remove assets from a shared linkshared-link-login: Shared link loginupdate-shared-link: Update a shared link
immichpy shared-links add-shared-link-assets
Add assets to a shared link
Usage:
immichpy shared-links add-shared-link-assets [OPTIONS] {id}
Arguments:
id: [required]
Options:
--asset-ids <uuid>: Asset IDs [required]--help: Show this message and exit.
immichpy shared-links create-shared-link
Create a shared link
Usage:
immichpy shared-links create-shared-link [OPTIONS]
Options:
--album-id <uuid>: Album ID (for album sharing)--allow-download <true|false>: Allow downloads--allow-upload <true|false>: Allow uploads--asset-ids <uuid>: Asset IDs (for individual assets)--description <str>: Link description--expires-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Expiration date
Example: 2024-01-01T00:00:00.000Z
--password <str>: Link password--show-metadata <true|false>: Show metadata--slug <str>: Custom URL slug--type <ALBUM|INDIVIDUAL>: Shared link type [required]--help: Show this message and exit.
immichpy shared-links get-all-shared-links
Retrieve all shared links
Usage:
immichpy shared-links get-all-shared-links [OPTIONS]
Options:
--album-id <uuid>: Filter by album ID--id <uuid>: Filter by shared link ID--help: Show this message and exit.
immichpy shared-links get-my-shared-link
Retrieve current shared link
Usage:
immichpy shared-links get-my-shared-link [OPTIONS]
Options:
--key <str>--slug <str>--help: Show this message and exit.
immichpy shared-links get-shared-link-by-id
Retrieve a shared link
Usage:
immichpy shared-links get-shared-link-by-id [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy shared-links remove-shared-link
Delete a shared link
Usage:
immichpy shared-links remove-shared-link [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy shared-links remove-shared-link-assets
Remove assets from a shared link
Usage:
immichpy shared-links remove-shared-link-assets [OPTIONS] {id}
Arguments:
id: [required]
Options:
--asset-ids <uuid>: Asset IDs [required]--help: Show this message and exit.
immichpy shared-links shared-link-login
Shared link login
Usage:
immichpy shared-links shared-link-login [OPTIONS]
Options:
--key <str>--password <str>: Shared link password
Example: password [required]
--slug <str>--help: Show this message and exit.
immichpy shared-links update-shared-link
Update a shared link
Usage:
immichpy shared-links update-shared-link [OPTIONS] {id}
Arguments:
id: [required]
Options:
--allow-download <true|false>: Allow downloads--allow-upload <true|false>: Allow uploads--description <str>: Link description--expires-at <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Expiration date
Example: 2024-01-01T00:00:00.000Z
--password <str>: Link password--show-metadata <true|false>: Show metadata--slug <str>: Custom URL slug--help: Show this message and exit.
immichpy stacks
A stack is a group of related assets. One asset is the "primary" asset, and the rest are "child" assets. On the main timeline, stack parents are included by default, while child assets are hidden.
Usage:
immichpy stacks [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-stack: Create a stackdelete-stack: Delete a stackdelete-stacks: Delete stacksget-stack: Retrieve a stackremove-asset-from-stack: Remove an asset from a stacksearch-stacks: Retrieve stacksupdate-stack: Update a stack (DEPRECATED)
immichpy stacks create-stack
Create a stack
Usage:
immichpy stacks create-stack [OPTIONS]
Options:
--asset-ids <uuid>: Asset IDs (first becomes primary, min 2) [required]--help: Show this message and exit.
immichpy stacks delete-stack
Delete a stack
Usage:
immichpy stacks delete-stack [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy stacks delete-stacks
Delete stacks
Usage:
immichpy stacks delete-stacks [OPTIONS]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy stacks get-stack
Retrieve a stack
Usage:
immichpy stacks get-stack [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy stacks remove-asset-from-stack
Remove an asset from a stack
Usage:
immichpy stacks remove-asset-from-stack [OPTIONS] {asset_id} {id}
Arguments:
asset_id: [required]id: [required]
Options:
--help: Show this message and exit.
immichpy stacks search-stacks
Retrieve stacks
Usage:
immichpy stacks search-stacks [OPTIONS]
Options:
--primary-asset-id <uuid>: Filter by primary asset ID--help: Show this message and exit.
immichpy stacks update-stack
Update a stack
Usage:
immichpy stacks update-stack [OPTIONS] {id}
Arguments:
id: [required]
Options:
--primary-asset-id <uuid>: Primary asset ID--help: Show this message and exit.
immichpy sync
A collection of endpoints for the new mobile synchronization implementation.
Usage:
immichpy sync [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
delete-sync-ack: Delete acknowledgementsget-sync-ack: Retrieve acknowledgementsget-sync-stream: Stream sync changessend-sync-ack: Acknowledge changes
immichpy sync delete-sync-ack
Delete acknowledgements
Usage:
immichpy sync delete-sync-ack [OPTIONS]
Options:
--types <AuthUserV1|UserV1|UserDeleteV1|AssetV1|AssetV2|AssetDeleteV1|AssetExifV1|AssetEditV1|AssetEditDeleteV1|AssetMetadataV1|AssetMetadataDeleteV1|AssetOcrV1|AssetOcrDeleteV1|PartnerV1|PartnerDeleteV1|PartnerAssetV1|PartnerAssetV2|PartnerAssetBackfillV1|PartnerAssetBackfillV2|PartnerAssetDeleteV1|PartnerAssetExifV1|PartnerAssetExifBackfillV1|PartnerStackBackfillV1|PartnerStackDeleteV1|PartnerStackV1|AlbumV1|AlbumV2|AlbumDeleteV1|AlbumUserV1|AlbumUserBackfillV1|AlbumUserDeleteV1|AlbumAssetCreateV1|AlbumAssetCreateV2|AlbumAssetUpdateV1|AlbumAssetUpdateV2|AlbumAssetBackfillV1|AlbumAssetBackfillV2|AlbumAssetExifCreateV1|AlbumAssetExifUpdateV1|AlbumAssetExifBackfillV1|AlbumToAssetV1|AlbumToAssetDeleteV1|AlbumToAssetBackfillV1|MemoryV1|MemoryDeleteV1|MemoryToAssetV1|MemoryToAssetDeleteV1|StackV1|StackDeleteV1|PersonV1|PersonDeleteV1|AssetFaceV1|AssetFaceV2|AssetFaceDeleteV1|UserMetadataV1|UserMetadataDeleteV1|SyncAckV1|SyncResetV1|SyncCompleteV1>: Sync entity types to delete acks for--help: Show this message and exit.
immichpy sync get-sync-ack
Retrieve acknowledgements
Usage:
immichpy sync get-sync-ack [OPTIONS]
Options:
--help: Show this message and exit.
immichpy sync get-sync-stream
Stream sync changes
Usage:
immichpy sync get-sync-stream [OPTIONS]
Options:
--reset <true|false>: Reset sync state--types <AlbumsV1|AlbumsV2|AlbumUsersV1|AlbumToAssetsV1|AlbumAssetsV1|AlbumAssetsV2|AlbumAssetExifsV1|AssetsV1|AssetsV2|AssetExifsV1|AssetEditsV1|AssetMetadataV1|AssetOcrV1|AuthUsersV1|MemoriesV1|MemoryToAssetsV1|PartnersV1|PartnerAssetsV1|PartnerAssetsV2|PartnerAssetExifsV1|PartnerStacksV1|StacksV1|UsersV1|PeopleV1|AssetFacesV1|AssetFacesV2|UserMetadataV1>: Sync request types [required]--help: Show this message and exit.
immichpy sync send-sync-ack
Acknowledge changes
Usage:
immichpy sync send-sync-ack [OPTIONS]
Options:
--acks <str>: Acknowledgment IDs (max 1000) [required]--help: Show this message and exit.
immichpy system-config
Endpoints to view, modify, and validate the system configuration settings.
Usage:
immichpy system-config [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-config: Get system configuration (DEPRECATED)get-config-defaults: Get system configuration defaults (DEPRECATED)get-storage-template-options: Get storage template optionsupdate-config: Update system configuration (DEPRECATED)
immichpy system-config get-config
Get system configuration
Usage:
immichpy system-config get-config [OPTIONS]
Options:
--help: Show this message and exit.
immichpy system-config get-config-defaults
Get system configuration defaults
Usage:
immichpy system-config get-config-defaults [OPTIONS]
Options:
--help: Show this message and exit.
immichpy system-config get-storage-template-options
Get storage template options
Usage:
immichpy system-config get-storage-template-options [OPTIONS]
Options:
--help: Show this message and exit.
immichpy system-config update-config
Update system configuration
Usage:
immichpy system-config update-config [OPTIONS]
Options:
--backup-database-cron-expression <str>: Cron expression [required]--backup-database-enabled: Enabled [required]--backup-database-keep-last-amount <int range>: Keep last amount [1<=x<=9007199254740991; required]--ffmpeg-accel <nvenc|qsv|vaapi|rkmpp|disabled>: Transcode hardware acceleration [required]--ffmpeg-accel-decode: Accelerated decode [required]--ffmpeg-accepted-audio-codecs <mp3|aac|opus|pcm_s16le>: Accepted audio codecs [required]--ffmpeg-accepted-containers <mov|mp4|ogg|webm>: Accepted containers [required]--ffmpeg-accepted-video-codecs <h264|hevc|vp9|av1>: Accepted video codecs [required]--ffmpeg-bframes <int range>: B-frames [-1<=x<=16; required]--ffmpeg-cq-mode <auto|cqp|icq>: CQ mode [required]--ffmpeg-crf <int range>: CRF [0<=x<=51; required]--ffmpeg-gop-size <int range>: GOP size [0<=x<=9007199254740991; required]--ffmpeg-max-bitrate <str>: Max bitrate [required]--ffmpeg-preferred-hw-device <str>: Preferred hardware device [required]--ffmpeg-preset <str>: Preset [required]--ffmpeg-realtime-enabled: Enable real-time HLS transcoding (alpha) [required]--ffmpeg-realtime-resolutions <480|720|1080|1440|2160>: Resolutions to use for real-time HLS transcoding [required]--ffmpeg-realtime-video-codecs <h264|hevc|vp9|av1>: Video codecs to use for real-time HLS transcoding [required]--ffmpeg-refs <int range>: References [0<=x<=6; required]--ffmpeg-target-audio-codec <mp3|aac|opus|pcm_s16le>: Target audio codec [required]--ffmpeg-target-resolution <str>: Target resolution [required]--ffmpeg-target-video-codec <h264|hevc|vp9|av1>: Target video codec [required]--ffmpeg-temporal-aq: Temporal AQ [required]--ffmpeg-threads <int range>: Threads [0<=x<=9007199254740991; required]--ffmpeg-tonemap <hable|mobius|reinhard|disabled>: Tone mapping [required]--ffmpeg-transcode <all|optimal|bitrate|required|disabled>: Transcode policy [required]--ffmpeg-two-pass: Two pass [required]--image-colorspace <srgb|p3>: Colorspace [required]--image-extract-embedded: Extract embedded [required]--image-fullsize-enabled: Enabled [required]--image-fullsize-format <jpeg|webp>: Image format [required]--image-fullsize-progressive <true|false>: Progressive--image-fullsize-quality <int range>: Quality [1<=x<=100; required]--image-preview-format <jpeg|webp>: Image format [required]--image-preview-progressive <true|false>: Progressive--image-preview-quality <int range>: Quality [1<=x<=100; required]--image-preview-size <int range>: Size [1<=x<=9007199254740991; required]--image-thumbnail-format <jpeg|webp>: Image format [required]--image-thumbnail-progressive <true|false>: Progressive--image-thumbnail-quality <int range>: Quality [1<=x<=100; required]--image-thumbnail-size <int range>: Size [1<=x<=9007199254740991; required]--integrity-checks-checksum-files-cron-expression <str>: Cron expression for when the integrity check should run [required]--integrity-checks-checksum-files-enabled: Enabled [required]--integrity-checks-checksum-files-percentage-limit <float range>: Percentage limit of the integrity checksum job [0<=x<=1; required]--integrity-checks-checksum-files-time-limit <int range>: How long the integrity checksum job may run for [0<=x<=9007199254740991; required]--integrity-checks-missing-files-cron-expression <str>: Cron expression for when the integrity check should run [required]--integrity-checks-missing-files-enabled: Enabled [required]--integrity-checks-untracked-files-cron-expression <str>: Cron expression for when the integrity check should run [required]--integrity-checks-untracked-files-enabled: Enabled [required]--job-background-task-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-editor-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-face-detection-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-integrity-check-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-library-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-metadata-extraction-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-migration-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-notifications-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-ocr-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-search-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-sidecar-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-smart-search-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-thumbnail-generation-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-video-conversion-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--job-workflow-concurrency <int range>: Concurrency [1<=x<=9007199254740991; required]--library-scan-cron-expression <str>: Cron expression [required]--library-scan-enabled: Enabled [required]--library-watch-enabled: Enabled [required]--logging-enabled: Enabled [required]--logging-level <verbose|debug|log|warn|error|fatal>: Log level [required]--machine-learning-availability-checks-enabled: Enabled [required]--machine-learning-availability-checks-interval <int range>: [-9007199254740991<=x<=9007199254740991; required]--machine-learning-availability-checks-timeout <int range>: [-9007199254740991<=x<=9007199254740991; required]--machine-learning-clip-enabled: Whether the task is enabled [required]--machine-learning-clip-model-name <str>: Name of the model to use [required]--machine-learning-duplicate-detection-enabled: Whether the task is enabled [required]--machine-learning-duplicate-detection-max-distance <float range>: Maximum distance threshold for duplicate detection [0.001<=x<=0.1; required]--machine-learning-enabled: Enabled [required]--machine-learning-facial-recognition-enabled: Whether the task is enabled [required]--machine-learning-facial-recognition-max-distance <float range>: Maximum distance threshold for face recognition [0.1<=x<=2; required]--machine-learning-facial-recognition-min-faces <int range>: Minimum number of faces required for recognition [1<=x<=9007199254740991; required]--machine-learning-facial-recognition-min-score <float range>: Minimum confidence score for face detection [0.1<=x<=1; required]--machine-learning-facial-recognition-model-name <str>: Name of the model to use [required]--machine-learning-ocr-enabled: Whether the task is enabled [required]--machine-learning-ocr-max-resolution <int range>: Maximum resolution for OCR processing [1<=x<=9007199254740991; required]--machine-learning-ocr-min-detection-score <float range>: Minimum confidence score for text detection [0.1<=x<=1; required]--machine-learning-ocr-min-recognition-score <float range>: Minimum confidence score for text recognition [0.1<=x<=1; required]--machine-learning-ocr-model-name <str>: Name of the model to use [required]--machine-learning-urls <str>: ML service URLs [required]--map-dark-style <str>: Dark map style URL [required]--map-enabled: Enabled [required]--map-light-style <str>: Light map style URL [required]--metadata-faces-import: Import [required]--new-version-check-channel <stable|releaseCandidate>: Release channel [required]--new-version-check-enabled: Enabled [required]--nightly-tasks-cluster-new-faces: Cluster new faces [required]--nightly-tasks-database-cleanup: Database cleanup [required]--nightly-tasks-generate-memories: Generate memories [required]--nightly-tasks-missing-thumbnails: Missing thumbnails [required]--nightly-tasks-start-time <str>: Start time (HH:MM) [required]--nightly-tasks-sync-quota-usage: Sync quota usage [required]--notifications-smtp-enabled: Whether SMTP email notifications are enabled [required]--notifications-smtp-from <str>: Email address to send from [required]--notifications-smtp-reply-to <str>: Email address for replies [required]--notifications-smtp-transport-host <str>: SMTP server hostname [required]--notifications-smtp-transport-ignore-cert: Whether to ignore SSL certificate errors [required]--notifications-smtp-transport-password <str>: SMTP password [required]--notifications-smtp-transport-port <int range>: SMTP server port [0<=x<=65535; required]--notifications-smtp-transport-secure: Whether to use secure connection (TLS/SSL) [required]--notifications-smtp-transport-username <str>: SMTP username [required]--oauth-account-management-url <str>: Account management URL--oauth-allow-insecure-requests: Allow insecure requests [required]--oauth-auto-launch: Auto launch [required]--oauth-auto-register: Auto register [required]--oauth-button-text <str>: Button text [required]--oauth-client-id <str>: Client ID [required]--oauth-client-secret <str>: Client secret [required]--oauth-default-storage-quota <int range>: Default storage quota [0<=x<=9007199254740991; required]--oauth-enabled: Enabled [required]--oauth-end-session-endpoint <str>: End session endpoint [required]--oauth-issuer-url <str>: Issuer URL [required]--oauth-mobile-override-enabled: Mobile override enabled [required]--oauth-mobile-redirect-uri <str>: Mobile redirect URI (set to empty string to disable) [required]--oauth-profile-signing-algorithm <str>: Profile signing algorithm [required]--oauth-prompt <str>: OAuth prompt parameter (e.g. select_account, login, consent) [required]--oauth-role-claim <str>: Role claim [required]--oauth-scope <str>: Scope [required]--oauth-signing-algorithm <str>: Signing algorithm [required]--oauth-storage-label-claim <str>: Storage label claim [required]--oauth-storage-quota-claim <str>: Storage quota claim [required]--oauth-timeout <int range>: Timeout [1<=x<=9007199254740991; required]--oauth-token-endpoint-auth-method <client_secret_post|client_secret_basic>: OAuth token endpoint auth method [required]--password-login-enabled: Enabled [required]--reverse-geocoding-enabled: Enabled [required]--server-external-domain <str>: External domain [required]--server-login-page-message <str>: Login page message [required]--server-public-users: Public users [required]--storage-template-enabled: Enabled [required]--storage-template-hash-verification-enabled: Hash verification enabled [required]--storage-template-template <str>: Template [required]--templates-email-album-invite-template <str>: Album invite template [required]--templates-email-album-update-template <str>: Album update template [required]--templates-email-welcome-template <str>: Welcome template [required]--theme-custom-css <str>: Custom CSS for theming [required]--trash-days <int range>: Days [0<=x<=9007199254740991; required]--trash-enabled: Enabled [required]--user-delete-delay <int range>: Delete delay [1<=x<=9007199254740991; required]--help: Show this message and exit.
immichpy system-metadata
Endpoints to view, modify, and validate the system metadata, which includes information about things like admin onboarding status.
Usage:
immichpy system-metadata [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-admin-onboarding: Retrieve admin onboardingget-reverse-geocoding-state: Retrieve reverse geocoding stateget-version-check-state: Retrieve version check stateupdate-admin-onboarding: Update admin onboarding
immichpy system-metadata get-admin-onboarding
Retrieve admin onboarding
Usage:
immichpy system-metadata get-admin-onboarding [OPTIONS]
Options:
--help: Show this message and exit.
immichpy system-metadata get-reverse-geocoding-state
Retrieve reverse geocoding state
Usage:
immichpy system-metadata get-reverse-geocoding-state [OPTIONS]
Options:
--help: Show this message and exit.
immichpy system-metadata get-version-check-state
Retrieve version check state
Usage:
immichpy system-metadata get-version-check-state [OPTIONS]
Options:
--help: Show this message and exit.
immichpy system-metadata update-admin-onboarding
Update admin onboarding
Usage:
immichpy system-metadata update-admin-onboarding [OPTIONS]
Options:
--is-onboarded: Is admin onboarded [required]--help: Show this message and exit.
immichpy tags
A tag is a user-defined label that can be applied to assets for organizational purposes. Tags can also be hierarchical, allowing for parent-child relationships between tags.
Usage:
immichpy tags [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
bulk-tag-assets: Tag assetscreate-tag: Create a tagdelete-tag: Delete a tagget-all-tags: Retrieve tagsget-tag-by-id: Retrieve a tagtag-assets: Tag assetsuntag-assets: Untag assetsupdate-tag: Update a tag (DEPRECATED)upsert-tags: Upsert tags
immichpy tags bulk-tag-assets
Tag assets
Usage:
immichpy tags bulk-tag-assets [OPTIONS]
Options:
--asset-ids <uuid>: Asset IDs [required]--tag-ids <uuid>: Tag IDs [required]--help: Show this message and exit.
immichpy tags create-tag
Create a tag
Usage:
immichpy tags create-tag [OPTIONS]
Options:
--color <str>: Tag color (hex)--name <str>: Tag name [required]--parent-id <uuid>: Parent tag ID--help: Show this message and exit.
immichpy tags delete-tag
Delete a tag
Usage:
immichpy tags delete-tag [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy tags get-all-tags
Retrieve tags
Usage:
immichpy tags get-all-tags [OPTIONS]
Options:
--help: Show this message and exit.
immichpy tags get-tag-by-id
Retrieve a tag
Usage:
immichpy tags get-tag-by-id [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy tags tag-assets
Tag assets
Usage:
immichpy tags tag-assets [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy tags untag-assets
Untag assets
Usage:
immichpy tags untag-assets [OPTIONS] {id}
Arguments:
id: [required]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy tags update-tag
Update a tag
Usage:
immichpy tags update-tag [OPTIONS] {id}
Arguments:
id: [required]
Options:
--color <str>: Tag color (hex)--name <str>: Tag name--help: Show this message and exit.
immichpy tags upsert-tags
Upsert tags
Usage:
immichpy tags upsert-tags [OPTIONS]
Options:
--tags <str>: Tag names to upsert [required]--help: Show this message and exit.
immichpy timeline
Specialized endpoints related to the timeline implementation used in the web application. External applications or tools should not use or rely on these endpoints, as they are subject to change without notice.
Usage:
immichpy timeline [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-time-bucket: Get time bucketget-time-buckets: Get time buckets
immichpy timeline get-time-bucket
Get time bucket
Usage:
immichpy timeline get-time-bucket [OPTIONS]
Options:
--album-id <uuid>: Filter assets belonging to a specific album--bbox <str>: Bounding box coordinates as west,south,east,north (WGS84)
Example: 11.075683,49.416711,11.117589,49.454875
--is-favorite <true|false>: Filter by favorite status (true for favorites only, false for non-favorites only)--is-trashed <true|false>: Filter by trash status (true for trashed assets only, false for non-trashed only)--key <str>--order <asc|desc>: Sort order for assets within time buckets (ASC for oldest first, DESC for newest first)--order-by <takenAt|createdAt>: Date to group and order assets by (takenAt for date taken, createdAt for date added to Immich)--person-id <uuid>: Filter assets containing a specific person (face recognition)--slug <str>--tag-id <uuid>: Filter assets with a specific tag--time-bucket <str>: Time bucket identifier in YYYY-MM-DD format
Example: 2024-01-01 [required]
--user-id <uuid>: Filter assets by specific user ID--visibility <archive|timeline|hidden|locked>: Filter by asset visibility status (ARCHIVE, TIMELINE, HIDDEN, LOCKED)--with-coordinates <true|false>: Include location data in the response--with-partners <true|false>: Include assets shared by partners--with-stacked <true|false>: Include stacked assets in the response. When true, only primary assets from stacks are returned.--help: Show this message and exit.
immichpy timeline get-time-buckets
Get time buckets
Usage:
immichpy timeline get-time-buckets [OPTIONS]
Options:
--album-id <uuid>: Filter assets belonging to a specific album--bbox <str>: Bounding box coordinates as west,south,east,north (WGS84)
Example: 11.075683,49.416711,11.117589,49.454875
--is-favorite <true|false>: Filter by favorite status (true for favorites only, false for non-favorites only)--is-trashed <true|false>: Filter by trash status (true for trashed assets only, false for non-trashed only)--key <str>--order <asc|desc>: Sort order for assets within time buckets (ASC for oldest first, DESC for newest first)--order-by <takenAt|createdAt>: Date to group and order assets by (takenAt for date taken, createdAt for date added to Immich)--person-id <uuid>: Filter assets containing a specific person (face recognition)--slug <str>--tag-id <uuid>: Filter assets with a specific tag--user-id <uuid>: Filter assets by specific user ID--visibility <archive|timeline|hidden|locked>: Filter by asset visibility status (ARCHIVE, TIMELINE, HIDDEN, LOCKED)--with-coordinates <true|false>: Include location data in the response--with-partners <true|false>: Include assets shared by partners--with-stacked <true|false>: Include stacked assets in the response. When true, only primary assets from stacks are returned.--help: Show this message and exit.
immichpy trash
Endpoints for managing the trash can, which includes assets that have been discarded. Items in the trash are automatically deleted after a configured amount of time.
Usage:
immichpy trash [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
empty-trash: Empty trashrestore-assets: Restore assetsrestore-trash: Restore trash
immichpy trash empty-trash
Empty trash
Usage:
immichpy trash empty-trash [OPTIONS]
Options:
--help: Show this message and exit.
immichpy trash restore-assets
Restore assets
Usage:
immichpy trash restore-assets [OPTIONS]
Options:
--ids <uuid>: IDs to process [required]--help: Show this message and exit.
immichpy trash restore-trash
Restore trash
Usage:
immichpy trash restore-trash [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users
Endpoints for viewing and updating the current users, including product key information, profile picture data, onboarding progress, and more.
Usage:
immichpy users [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-profile-image: Create user profile imagedelete-profile-image: Delete user profile imagedelete-user-license: Delete user product keydelete-user-onboarding: Delete user onboardingget-my-calendar-heatmap: Retrieve calendar heatmap activityget-my-preferences: Get my preferencesget-my-user: Get current userget-profile-image: Retrieve user profile imageget-user: Retrieve a userget-user-license: Retrieve user product keyget-user-onboarding: Retrieve user onboardingsearch-users: Get all usersset-user-license: Set user product keyset-user-onboarding: Update user onboardingupdate-my-preferences: Update my preferences (DEPRECATED)update-my-user: Update current user (DEPRECATED)get-profile-image-to-file: Download a user's profile image and save...
immichpy users create-profile-image
Create user profile image
Usage:
immichpy users create-profile-image [OPTIONS]
Options:
--file <path>: Profile image file [required]--help: Show this message and exit.
immichpy users delete-profile-image
Delete user profile image
Usage:
immichpy users delete-profile-image [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users delete-user-license
Delete user product key
Usage:
immichpy users delete-user-license [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users delete-user-onboarding
Delete user onboarding
Usage:
immichpy users delete-user-onboarding [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users get-my-calendar-heatmap
Retrieve calendar heatmap activity
Usage:
immichpy users get-my-calendar-heatmap [OPTIONS]
Options:
--from <str>: Start date in UTC
Example: 2024-01-01
--to <str>: End date in UTC
Example: 2024-01-01
--type <Upload|Taken>--help: Show this message and exit.
immichpy users get-my-preferences
Get my preferences
Usage:
immichpy users get-my-preferences [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users get-my-user
Get current user
Usage:
immichpy users get-my-user [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users get-profile-image
Retrieve user profile image
Usage:
immichpy users get-profile-image [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy users get-user
Retrieve a user
Usage:
immichpy users get-user [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy users get-user-license
Retrieve user product key
Usage:
immichpy users get-user-license [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users get-user-onboarding
Retrieve user onboarding
Usage:
immichpy users get-user-onboarding [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users search-users
Get all users
Usage:
immichpy users search-users [OPTIONS]
Options:
--help: Show this message and exit.
immichpy users set-user-license
Set user product key
Usage:
immichpy users set-user-license [OPTIONS]
Options:
--activation-key <str>: Activation key [required]--license-key <str>: License key (format: /^IM(SV|CL)(-[\dA-Za-z]{4}){8}$/) [required]--help: Show this message and exit.
immichpy users set-user-onboarding
Update user onboarding
Usage:
immichpy users set-user-onboarding [OPTIONS]
Options:
--is-onboarded: Is user onboarded [required]--help: Show this message and exit.
immichpy users update-my-preferences
Update my preferences
Usage:
immichpy users update-my-preferences [OPTIONS]
Options:
--albums-default-asset-order <asc|desc>: Asset sort order--avatar-color <primary|pink|red|yellow|blue|green|purple|orange|gray|amber>: User avatar color--cast-g-cast-enabled <true|false>: Whether Google Cast is enabled--download-archive-size <int range>: Maximum archive size in bytes [1<=x<=9007199254740991]--download-include-embedded-videos <true|false>: Whether to include embedded videos in downloads--email-notifications-album-invite <true|false>: Whether to receive email notifications for album invites--email-notifications-album-update <true|false>: Whether to receive email notifications for album updates--email-notifications-enabled <true|false>: Whether email notifications are enabled--folders-enabled <true|false>: Whether folders are enabled--folders-sidebar-web <true|false>: Whether folders appear in web sidebar--memories-duration <int range>: Memory duration in seconds [1<=x<=9007199254740991]--memories-enabled <true|false>: Whether memories are enabled--memories-sidebar-web <true|false>: Whether memories appear in web sidebar--people-enabled <true|false>: Whether people are enabled--people-minimum-faces <int range>: People face threshold [1<=x<=9007199254740991]--people-sidebar-web <true|false>: Whether people appear in web sidebar--purchase-hide-buy-button-until <str>: Date until which to hide buy button--purchase-show-support-badge <true|false>: Whether to show support badge--ratings-enabled <true|false>: Whether ratings are enabled--recently-added-sidebar-web <true|false>: Whether the recently added page appears in the web sidebar--shared-links-enabled <true|false>: Whether shared links are enabled--shared-links-sidebar-web <true|false>: Whether shared links appear in web sidebar--tags-enabled <true|false>: Whether tags are enabled--tags-sidebar-web <true|false>: Whether tags appear in web sidebar--help: Show this message and exit.
immichpy users update-my-user
Update current user
Usage:
immichpy users update-my-user [OPTIONS]
Options:
--avatar-color <str>: User avatar color--email <str>: User email--name <str>: User name--password <str>: User password (deprecated, use change password endpoint)--help: Show this message and exit.
immichpy users get-profile-image-to-file
Download a user's profile image and save it to a file.
Downloads the profile image for the specified user and saves it to the specified output directory. The filename can be specified or will be derived from the response headers.
Usage:
immichpy users get-profile-image-to-file [OPTIONS] {id} {out_dir}
Arguments:
id: User ID (UUID) [required]out_dir: Output directory for the profile image file [required]
Options:
--filename <str>: Filename to use (defaults to original filename or profile-{user_id})--show-progress: Show progress bar while downloading--help: Show this message and exit.
immichpy users-admin
Administrative endpoints for managing users, including creating, updating, deleting, and restoring users. Also includes endpoints for resetting passwords and PIN codes.
Usage:
immichpy users-admin [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-user-admin: Create a userdelete-user-admin: Delete a userget-user-admin: Retrieve a userget-user-calendar-heatmap-admin: Retrieve calendar heatmap activityget-user-preferences-admin: Retrieve user preferencesget-user-sessions-admin: Retrieve user sessionsget-user-statistics-admin: Retrieve user statisticsrestore-user-admin: Restore a deleted usersearch-users-admin: Search usersupdate-user-admin: Update a user (DEPRECATED)update-user-preferences-admin: Update user preferences (DEPRECATED)
immichpy users-admin create-user-admin
Create a user
Usage:
immichpy users-admin create-user-admin [OPTIONS]
Options:
--avatar-color <str>: User avatar color--email <str>: User email [required]--is-admin <true|false>: Grant admin privileges--name <str>: User name [required]--notify <true|false>: Send notification email--password <str>: User password [required]--pin-code <str>: PIN code
Example: 123456
--quota-size-in-bytes <int range>: Storage quota in bytes [0<=x<=9007199254740991]--should-change-password <true|false>: Require password change on next login--storage-label <str>: Storage label--help: Show this message and exit.
immichpy users-admin delete-user-admin
Delete a user
Usage:
immichpy users-admin delete-user-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--force <true|false>: Force delete even if user has assets--help: Show this message and exit.
immichpy users-admin get-user-admin
Retrieve a user
Usage:
immichpy users-admin get-user-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy users-admin get-user-calendar-heatmap-admin
Retrieve calendar heatmap activity
Usage:
immichpy users-admin get-user-calendar-heatmap-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--from <str>: Start date in UTC
Example: 2024-01-01
--to <str>: End date in UTC
Example: 2024-01-01
--type <Upload|Taken>--help: Show this message and exit.
immichpy users-admin get-user-preferences-admin
Retrieve user preferences
Usage:
immichpy users-admin get-user-preferences-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy users-admin get-user-sessions-admin
Retrieve user sessions
Usage:
immichpy users-admin get-user-sessions-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy users-admin get-user-statistics-admin
Retrieve user statistics
Usage:
immichpy users-admin get-user-statistics-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--is-favorite <true|false>: Filter by favorite status--is-trashed <true|false>: Filter by trash status--visibility <archive|timeline|hidden|locked>--help: Show this message and exit.
immichpy users-admin restore-user-admin
Restore a deleted user
Usage:
immichpy users-admin restore-user-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy users-admin search-users-admin
Search users
Usage:
immichpy users-admin search-users-admin [OPTIONS]
Options:
--id <uuid>: User ID filter--with-deleted <true|false>: Include deleted users--help: Show this message and exit.
immichpy users-admin update-user-admin
Update a user
Usage:
immichpy users-admin update-user-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--avatar-color <str>: User avatar color--email <str>: User email--is-admin <true|false>: Grant admin privileges--name <str>: User name--password <str>: User password--pin-code <str>: PIN code
Example: 123456
--quota-size-in-bytes <int range>: Storage quota in bytes [0<=x<=9007199254740991]--should-change-password <true|false>: Require password change on next login--storage-label <str>: Storage label--help: Show this message and exit.
immichpy users-admin update-user-preferences-admin
Update user preferences
Usage:
immichpy users-admin update-user-preferences-admin [OPTIONS] {id}
Arguments:
id: [required]
Options:
--albums-default-asset-order <asc|desc>: Asset sort order--avatar-color <primary|pink|red|yellow|blue|green|purple|orange|gray|amber>: User avatar color--cast-g-cast-enabled <true|false>: Whether Google Cast is enabled--download-archive-size <int range>: Maximum archive size in bytes [1<=x<=9007199254740991]--download-include-embedded-videos <true|false>: Whether to include embedded videos in downloads--email-notifications-album-invite <true|false>: Whether to receive email notifications for album invites--email-notifications-album-update <true|false>: Whether to receive email notifications for album updates--email-notifications-enabled <true|false>: Whether email notifications are enabled--folders-enabled <true|false>: Whether folders are enabled--folders-sidebar-web <true|false>: Whether folders appear in web sidebar--memories-duration <int range>: Memory duration in seconds [1<=x<=9007199254740991]--memories-enabled <true|false>: Whether memories are enabled--memories-sidebar-web <true|false>: Whether memories appear in web sidebar--people-enabled <true|false>: Whether people are enabled--people-minimum-faces <int range>: People face threshold [1<=x<=9007199254740991]--people-sidebar-web <true|false>: Whether people appear in web sidebar--purchase-hide-buy-button-until <str>: Date until which to hide buy button--purchase-show-support-badge <true|false>: Whether to show support badge--ratings-enabled <true|false>: Whether ratings are enabled--recently-added-sidebar-web <true|false>: Whether the recently added page appears in the web sidebar--shared-links-enabled <true|false>: Whether shared links are enabled--shared-links-sidebar-web <true|false>: Whether shared links appear in web sidebar--tags-enabled <true|false>: Whether tags are enabled--tags-sidebar-web <true|false>: Whether tags appear in web sidebar--help: Show this message and exit.
immichpy views
Endpoints for specialized views, such as the folder view.
Usage:
immichpy views [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
get-assets-by-original-path: Retrieve assets by original pathget-unique-original-paths: Retrieve unique paths
immichpy views get-assets-by-original-path
Retrieve assets by original path
Usage:
immichpy views get-assets-by-original-path [OPTIONS]
Options:
--path <str>: [required]--help: Show this message and exit.
immichpy views get-unique-original-paths
Retrieve unique paths
Usage:
immichpy views get-unique-original-paths [OPTIONS]
Options:
--help: Show this message and exit.
immichpy workflows
A workflow is a set of actions that run whenever a triggering event occurs. Workflows also can include filters to further limit execution.
Usage:
immichpy workflows [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
create-workflow: Create a workflowdelete-workflow: Delete a workflowget-workflow: Retrieve a workflowget-workflow-for-share: Retrieve a workflowget-workflow-logs: Retrieve workflow logsget-workflow-triggers: List all workflow triggerssearch-workflows: List all workflowsupdate-workflow: Update a workflow (DEPRECATED)
immichpy workflows create-workflow
Create a workflow
Usage:
immichpy workflows create-workflow [OPTIONS]
Options:
--description <str>: Workflow description--enabled <true|false>: Workflow enabled--logging <true|false>: Workflow logs run results--name <str>: Workflow name--steps <str>: As a JSON string with keys: config (object), enabled (boolean), method (string)--trigger <AssetCreate|AssetMetadataExtraction|AssetTagged>: Plugin trigger type [required]--help: Show this message and exit.
immichpy workflows delete-workflow
Delete a workflow
Usage:
immichpy workflows delete-workflow [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy workflows get-workflow
Retrieve a workflow
Usage:
immichpy workflows get-workflow [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy workflows get-workflow-for-share
Retrieve a workflow
Usage:
immichpy workflows get-workflow-for-share [OPTIONS] {id}
Arguments:
id: [required]
Options:
--help: Show this message and exit.
immichpy workflows get-workflow-logs
Retrieve workflow logs
Usage:
immichpy workflows get-workflow-logs [OPTIONS] {id}
Arguments:
id: [required]
Options:
--before <%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S>: Filter by runs before a date/time
Example: 2024-01-01T00:00:00.000Z
--limit <int range>: Maximum number of logs [0<=x<=9007199254740991]--result <completed|halted|error>: Filter by run result--help: Show this message and exit.
immichpy workflows get-workflow-triggers
List all workflow triggers
Usage:
immichpy workflows get-workflow-triggers [OPTIONS]
Options:
--help: Show this message and exit.
immichpy workflows search-workflows
List all workflows
Usage:
immichpy workflows search-workflows [OPTIONS]
Options:
--description <str>: Workflow description--enabled <true|false>: Workflow enabled--id <uuid>: Workflow ID--logging <true|false>: Workflow logs run results--name <str>: Workflow name--trigger <AssetCreate|AssetMetadataExtraction|AssetTagged>: Workflow trigger type--help: Show this message and exit.
immichpy workflows update-workflow
Update a workflow
Usage:
immichpy workflows update-workflow [OPTIONS] {id}
Arguments:
id: [required]
Options:
--description <str>: Workflow description--enabled <true|false>: Workflow enabled--logging <true|false>: Workflow logs run results--name <str>: Workflow name--steps <str>: As a JSON string with keys: config (object), enabled (boolean), method (string)--trigger <AssetCreate|AssetMetadataExtraction|AssetTagged>: Plugin trigger type--help: Show this message and exit.
immichpy backups
Manage backups of the Immich database.
Usage:
immichpy backups [OPTIONS] COMMAND [ARGS]...
Options:
--help: Show this message and exit.
Commands:
delete-database-backup: Delete database backupdownload-database-backup: Download database backuplist-database-backups: List database backupsstart-database-restore-flow: Start database backup restore flowupload-database-backup: Upload database backup
immichpy backups delete-database-backup
Delete database backup
Usage:
immichpy backups delete-database-backup [OPTIONS]
Options:
--backups <str>: Backup filenames to delete [required]--help: Show this message and exit.
immichpy backups download-database-backup
Download database backup
Usage:
immichpy backups download-database-backup [OPTIONS] {filename}
Arguments:
filename: [required]
Options:
--help: Show this message and exit.
immichpy backups list-database-backups
List database backups
Usage:
immichpy backups list-database-backups [OPTIONS]
Options:
--help: Show this message and exit.
immichpy backups start-database-restore-flow
Start database backup restore flow
Usage:
immichpy backups start-database-restore-flow [OPTIONS]
Options:
--help: Show this message and exit.
immichpy backups upload-database-backup
Upload database backup
Usage:
immichpy backups upload-database-backup [OPTIONS]
Options:
--file <path>: Database backup file--help: Show this message and exit.