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 TEXT: Authorize via API key (get one here). [env var: IMMICH_API_KEY]--access-token TEXT: Authorize via access token. [env var: IMMICH_ACCESS_TOKEN]--base-url TEXT: The server to connect to. [env var: IMMICH_API_URL]-p, --profile TEXT: 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 TEXT: Profile name. This can be used to set different server configurations. [default: default]--base-url TEXT: The base URL of the Immich server, including the API path. [default: https://demo.immich.app/api]--api-key TEXT: An API key to use with the profile (recommended)--access-token TEXT: 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 keyupdate-api-key: Update an API key
immichpy api-keys create-api-key
Create an API key
Usage:
$ immichpy api-keys create-api-key [OPTIONS]
Options:
--name TEXT: API key name--permissions [all|activity.create|activity.read|activity.update|activity.delete|activity.statistics|apiKey.create|apiKey.read|apiKey.update|apiKey.delete|asset.read|asset.update|asset.delete|asset.statistics|asset.share|asset.view|asset.download|asset.upload|asset.replace|asset.copy|asset.derive|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|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|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 update-api-key
Update an API key
Usage:
$ immichpy api-keys update-api-key [OPTIONS] ID
Arguments:
ID: [required]
Options:
--name TEXT: API key name--permissions [all|activity.create|activity.read|activity.update|activity.delete|activity.statistics|apiKey.create|apiKey.read|apiKey.update|apiKey.delete|asset.read|asset.update|asset.delete|asset.statistics|asset.share|asset.view|asset.download|asset.upload|asset.replace|asset.copy|asset.derive|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|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|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 TEXT: Album ID [required]--asset-id TEXT: Asset ID (if activity is for an asset)--comment TEXT: Comment text (required if type is comment)--type TEXT: Activity type (like or comment) [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 TEXT: Album ID [required]--asset-id TEXT: Asset ID (if activity is for an asset)--level [album|asset]: Filter by activity level--type [comment|like]: Filter by activity type--user-id TEXT: 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 TEXT: Album ID [required]--asset-id TEXT: 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-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 TEXT: IDs to process [required]--key TEXT--slug TEXT--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 TEXT: Album IDs [required]--asset-ids TEXT: Asset IDs [required]--key TEXT--slug TEXT--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 TEXT: Album users to add
As a JSON string [required]
* --help: Show this message and exit.
immichpy albums create-album
Create an album
Usage:
$ immichpy albums create-album [OPTIONS]
Options:
--album-name TEXT: Album name [required]--album-users TEXT: Album users
As a JSON string
* --asset-ids TEXT: Initial asset IDs
* --description TEXT: 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 TEXT--slug TEXT--without-assets [true|false]: Exclude assets from response--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 TEXT: Filter albums containing this asset ID (ignores shared parameter)--shared [true|false]: Filter by shared status: true = only shared, false = only own, undefined = all--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 TEXT: 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: [required]USER_ID: [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 TEXT: Album name--album-thumbnail-asset-id TEXT: Album thumbnail asset ID--description TEXT: Album description--is-activity-enabled [true|false]: Enable activity feed--order TEXT: 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: [required]USER_ID: [required]
Options:
--role TEXT: 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 uploadcheck-existing-assets: Check existing assetscopy-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 assetget-all-user-assets-by-device-id: Retrieve assets by device ID (DEPRECATED)get-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-random: Get random assets (DEPRECATED)play-asset-video: Play asset videoremove-asset-edits: Remove edits from an existing assetreplace-asset: Replace asset (DEPRECATED)run-asset-jobs: Run an asset jobupdate-asset: Update an assetupdate-asset-metadata: Update asset metadataupdate-assets: Update assetsupdate-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 TEXT: Assets to check
As a JSON string [required]
* --help: Show this message and exit.
immichpy assets check-existing-assets
Check existing assets
Usage:
$ immichpy assets check-existing-assets [OPTIONS]
Options:
--device-asset-ids TEXT: Device asset IDs to check [required]--device-id TEXT: Device ID [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 TEXT: Source asset ID [required]--stack [true|false]: Copy stack association--target-id TEXT: 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 TEXT: 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 TEXT: Metadata items to delete
As a JSON 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 TEXT--slug TEXT--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 TEXT: List of edit actions to apply (crop, rotate, or mirror)
As a JSON string [required]
* --help: Show this message and exit.
immichpy assets get-all-user-assets-by-device-id
Retrieve assets by device ID
Usage:
$ immichpy assets get-all-user-assets-by-device-id [OPTIONS] DEVICE_ID
Arguments:
DEVICE_ID: Device ID [required]
Options:
--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 TEXT--slug TEXT--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]: Filter by visibility--help: Show this message and exit.
immichpy assets get-random
Get random assets
Usage:
$ immichpy assets get-random [OPTIONS]
Options:
--count FLOAT RANGE: Number of random assets to return [x>=1]--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 TEXT--slug TEXT--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 replace-asset
Replace asset
Usage:
$ immichpy assets replace-asset [OPTIONS] ID
Arguments:
ID: [required]
Options:
--asset-data PATH: Asset file data [required]--device-asset-id TEXT: Device asset ID [required]--device-id TEXT: Device ID [required]--duration TEXT: Duration (for videos)--file-created-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: File creation date [required]--file-modified-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: File modification date [required]--filename TEXT: Filename--key TEXT--slug TEXT--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 TEXT: Asset IDs [required]--name TEXT: 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 TEXT: Original date and time--description TEXT: Asset description--is-favorite [true|false]: Mark as favorite--latitude FLOAT: Latitude coordinate--live-photo-video-id TEXT: Live photo video ID--longitude FLOAT: Longitude coordinate--rating FLOAT RANGE: Rating [-1<=x<=5]--visibility TEXT: 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 TEXT: Metadata items to upsert
As a JSON string [required]
* --help: Show this message and exit.
immichpy assets update-assets
Update assets
Usage:
$ immichpy assets update-assets [OPTIONS]
Options:
--date-time-original TEXT: Original date and time--date-time-relative FLOAT: Relative time offset in seconds--description TEXT: Asset description--duplicate-id TEXT: Duplicate asset ID--ids TEXT: Asset IDs to update [required]--is-favorite [true|false]: Mark as favorite--latitude FLOAT: Latitude coordinate--longitude FLOAT: Longitude coordinate--rating FLOAT RANGE: Rating [-1<=x<=5]--time-zone TEXT: Time zone (IANA timezone)--visibility TEXT: 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 TEXT: Metadata items to upsert
As a JSON string [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]--device-asset-id TEXT: Device asset ID [required]--device-id TEXT: Device ID [required]--duration TEXT: Duration (for videos)--file-created-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: File creation date [required]--file-modified-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: File modification date [required]--filename TEXT: Filename--is-favorite [true|false]: Mark as favorite--key TEXT--live-photo-video-id TEXT: Live photo video ID--metadata TEXT: Asset metadata items
As a JSON string
* --sidecar-data PATH: Sidecar file data
* --slug TEXT
* --visibility TEXT: Asset visibility
* --x-immich-checksum TEXT: 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 TEXT--size [original|fullsize|preview|thumbnail]: Asset media size--slug TEXT--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 TEXT: Public share key (last path segment of /share/<key>)--slug TEXT: Public share slug (last path segment of /s/<slug>)--filename TEXT: 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 TEXT: Public share key (last path segment of /share/<key>)--slug TEXT: Public share slug (last path segment of /s/<slug>)--filename TEXT: 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 TEXT: Public share key (last path segment of /share/<key>)--slug TEXT: Public share slug (last path segment of /s/<slug>)--size TEXT: Thumbnail size: fullsize, preview, or thumbnail--filename TEXT: 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 TEXT: 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 INTEGER: Number of concurrent uploads [default: 5]--show-progress: Show progress bars--album-name TEXT: 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: 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 TEXT: New password (min 8 characters)
Example: password [required]
* --password TEXT: 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 TEXT: New PIN code (4-6 digits)
Example: 123456 [required]
* --password TEXT: User password (required if PIN code is not provided)
* --pin-code TEXT: 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 TEXT: OAuth code verifier (PKCE)--state TEXT: OAuth state parameter--url TEXT: 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 TEXT: OAuth code verifier (PKCE)--state TEXT: OAuth state parameter--url TEXT: 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 TEXT: User email
Example: testuser@email.com [required]
* --password TEXT: 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 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 TEXT: User password (required if PIN code is not provided)--pin-code TEXT: 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 TEXT: 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 TEXT: User email
Example: testuser@email.com [required]
* --name TEXT: User name
Example: Admin [required]
* --password TEXT: 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 TEXT: OAuth code challenge (PKCE)--redirect-uri TEXT: OAuth redirect URI [required]--state TEXT: 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 TEXT: User password (required if PIN code is not provided)--pin-code TEXT: 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:
--asset-ids TEXT: Asset IDs [required]--key TEXT--slug TEXT--help: Show this message and exit.
immichpy download get-download-info
Retrieve download information
Usage:
$ immichpy download get-download-info [OPTIONS]
Options:
--album-id TEXT: Album ID to download--archive-size INTEGER RANGE: Archive size limit in bytes [x>=1]--asset-ids TEXT: Asset IDs to download--key TEXT--slug TEXT--user-id TEXT: 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 TEXT: Public share key (last path segment of /share/<key>)--slug TEXT: Public share slug (last path segment of /s/<slug>)--show-progress: Show progress bars (per-archive bytes + overall archive count)--album-id TEXT: Album ID to download--archive-size INTEGER: Archive size limit in bytes--asset-ids TEXT: Asset IDs to download--user-id TEXT: 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 TEXT: 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: Delete a duplicatedelete-duplicates: Delete duplicatesget-asset-duplicates: Retrieve duplicates
immichpy duplicates delete-duplicate
Delete a duplicate
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 TEXT: 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 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 via 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 TEXT: Asset ID [required]--height INTEGER: Face bounding box height [required]--image-height INTEGER: Image height in pixels [required]--image-width INTEGER: Image width in pixels [required]--person-id TEXT: Person ID [required]--width INTEGER: Face bounding box width [required]--x INTEGER: Face bounding box X coordinate [required]--y INTEGER: Face bounding box Y coordinate [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 TEXT: 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 TEXT: 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 TEXT: 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|editor}
Arguments:
NAME:{thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|editor}: Queue name [required]
Options:
--command TEXT: 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 libraryvalidate: Validate library settings
immichpy libraries create-library
Create a library
Usage:
$ immichpy libraries create-library [OPTIONS]
Options:
--exclusion-patterns TEXT: Exclusion patterns (max 128)--import-paths TEXT: Import paths (max 128)--name TEXT: Library name--owner-id TEXT: 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 TEXT: Exclusion patterns (max 128)--import-paths TEXT: Import paths (max 128)--name TEXT: 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 TEXT: Exclusion patterns (max 128)--import-paths TEXT: 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:
detect-prior-install: Detect existing installget-maintenance-status: Get maintenance mode statusmaintenance-login: Log into maintenance modeset-maintenance-mode: Set maintenance mode
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-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 TEXT: 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 TEXT: Maintenance action [required]--restore-backup-filename TEXT: 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--file-created-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter assets created before this date--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
immichpy memories add-memory-assets
Add assets to a memory
Usage:
$ immichpy memories add-memory-assets [OPTIONS] ID
Arguments:
ID: [required]
Options:
--ids TEXT: 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 TEXT: Asset IDs to associate with memory--data-year FLOAT RANGE: Year for on this day memory [x>=1; required]--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 [required]--seen-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Date when memory was seen--type TEXT: 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 [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by date--is-saved [true|false]: Filter by saved status--is-trashed [true|false]: Include trashed memories--order [asc|desc|random]: Sort order--size INTEGER RANGE: Number of memories to return [x>=1]--type [on_this_day]: Memory type--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 TEXT: IDs to process [required]--help: Show this message and exit.
immichpy memories search-memories
Retrieve memories
Usage:
$ immichpy memories search-memories [OPTIONS]
Options:
--for [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by date--is-saved [true|false]: Filter by saved status--is-trashed [true|false]: Include trashed memories--order [asc|desc|random]: Sort order--size INTEGER RANGE: Number of memories to return [x>=1]--type [on_this_day]: Memory type--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--seen-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Date when memory was seen--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 TEXT: 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 TEXT: Filter by notification ID--level [success|error|warning|info]: Filter by notification level--type [JobFailed|BackupFailed|SystemMessage|AlbumInvite|AlbumUpdate|Custom]: Filter by notification type--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--help: Show this message and exit.
immichpy notifications update-notifications
Update notifications
Usage:
$ immichpy notifications update-notifications [OPTIONS]
Options:
--ids TEXT: 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--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 TEXT: Additional notification data
As a JSON string
* --description TEXT: Notification description
* --level TEXT: Notification level
* --read-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Date when notification was read
* --title TEXT: Notification title [required]
* --type TEXT: Notification type
* --user-id TEXT: 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 TEXT: 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 TEXT: Email address to send from [required]--reply-to TEXT: Email address for replies [required]--transport-host TEXT: SMTP server hostname [required]--transport-ignore-cert: Whether to ignore SSL certificate errors [required]--transport-password TEXT: SMTP password [required]--transport-port FLOAT RANGE: SMTP server port [0<=x<=65535; required]--transport-secure: Whether to use secure connection (TLS/SSL) [required]--transport-username TEXT: 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 TEXT: 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]: Partner direction [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-person: Merge peoplereassign-faces: Reassign facesupdate-people: Update peopleupdate-person: Update person
immichpy people create-person
Create a person
Usage:
$ immichpy people create-person [OPTIONS]
Options:
--birth-date TEXT: Person date of birth--color TEXT: Person color (hex)--is-favorite [true|false]: Mark as favorite--is-hidden [true|false]: Person visibility (hidden)--name TEXT: Person name--help: Show this message and exit.
immichpy people delete-people
Delete people
Usage:
$ immichpy people delete-people [OPTIONS]
Options:
--ids TEXT: 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 TEXT: Closest asset ID for similarity search--closest-person-id TEXT: Closest person ID for similarity search--page FLOAT RANGE: Page number for pagination [x>=1]--size FLOAT 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-person
Merge people
Usage:
$ immichpy people merge-person [OPTIONS] ID
Arguments:
ID: [required]
Options:
--ids TEXT: 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 TEXT: Face update items
As a JSON string [required]
* --help: Show this message and exit.
immichpy people update-people
Update people
Usage:
$ immichpy people update-people [OPTIONS]
Options:
--people TEXT: People to update
As a JSON 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 TEXT: Person date of birth--color TEXT: Person color (hex)--feature-face-asset-id TEXT: Asset ID used for feature face thumbnail--is-favorite [true|false]: Mark as favorite--is-hidden [true|false]: Person visibility (hidden)--name TEXT: 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 pluginget-plugin-triggers: List all plugin triggersget-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 get-plugin-triggers
List all plugin triggers
Usage:
$ immichpy plugins get-plugin-triggers [OPTIONS]
Options:
--help: Show this message and exit.
immichpy plugins get-plugins
List all plugins
Usage:
$ immichpy plugins get-plugins [OPTIONS]
Options:
--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|editor}
Arguments:
NAME:{thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|editor}: Queue name [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|editor}
Arguments:
NAME:{thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|editor}: Queue name [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|editor}
Arguments:
NAME:{thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|editor}: Queue name [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|editor}
Arguments:
NAME:{thumbnailGeneration|metadataExtraction|videoConversion|faceDetection|facialRecognition|smartSearch|duplicateDetection|backgroundTask|storageTemplateMigration|migration|search|sidecar|library|notifications|backupDatabase|ocr|workflow|editor}: Queue name [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 assetssearch-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 TEXT: Filter by country--include-null [true|false]: Include null values in suggestions--lens-model TEXT: Filter by lens model--make TEXT: Filter by camera make--model TEXT: Filter by camera model--state TEXT: Filter by state/province--type [country|state|city|camera-make|camera-model|camera-lens-model]: Suggestion type [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 TEXT: Filter by album IDs--city TEXT: Filter by city name--country TEXT: 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)--created-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by creation date (before)--description TEXT: Filter by description text--device-id TEXT: Device ID to filter by--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 TEXT: Filter by lens model--library-id TEXT: Library ID to filter by--make TEXT: Filter by camera make--model TEXT: Filter by camera model--ocr TEXT: Filter by OCR text content--person-ids TEXT: Filter by person IDs--rating FLOAT RANGE: Filter by rating [-1<=x<=5]--state TEXT: Filter by state/province name--tag-ids TEXT: 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)--taken-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by taken date (before)--trashed-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (after)--trashed-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (before)--type TEXT: Asset type--updated-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (after)--updated-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (before)--visibility TEXT: 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 TEXT: Filter by album IDs--checksum TEXT: Filter by file checksum--city TEXT: Filter by city name--country TEXT: 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)--created-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by creation date (before)--description TEXT: Filter by description text--device-asset-id TEXT: Filter by device asset ID--device-id TEXT: Device ID to filter by--encoded-video-path TEXT: Filter by encoded video file path--id TEXT: 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--lens-model TEXT: Filter by lens model--library-id TEXT: Library ID to filter by--make TEXT: Filter by camera make--model TEXT: Filter by camera model--ocr TEXT: Filter by OCR text content--order TEXT: Asset sort order--original-file-name TEXT: Filter by original file name--original-path TEXT: Filter by original file path--page FLOAT RANGE: Page number [x>=1]--person-ids TEXT: Filter by person IDs--preview-path TEXT: Filter by preview file path--rating FLOAT RANGE: Filter by rating [-1<=x<=5]--size FLOAT RANGE: Number of results to return [1<=x<=1000]--state TEXT: Filter by state/province name--tag-ids TEXT: 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)--taken-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by taken date (before)--thumbnail-path TEXT: 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)--trashed-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (before)--type TEXT: Asset type--updated-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (after)--updated-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (before)--visibility TEXT: Asset visibility--with-deleted [true|false]: Include deleted assets--with-exif [true|false]: Include EXIF data in response--with-people [true|false]: Include assets with people--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 TEXT: Filter by album IDs--city TEXT: Filter by city name--country TEXT: 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)--created-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by creation date (before)--device-id TEXT: Device ID to filter by--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 TEXT: Filter by lens model--library-id TEXT: Library ID to filter by--make TEXT: Filter by camera make--min-file-size INTEGER RANGE: Minimum file size in bytes [x>=0]--model TEXT: Filter by camera model--ocr TEXT: Filter by OCR text content--person-ids TEXT: Filter by person IDs--rating FLOAT RANGE: Filter by rating [-1<=x<=5]--size FLOAT RANGE: Number of results to return [1<=x<=1000]--state TEXT: Filter by state/province name--tag-ids TEXT: 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)--taken-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by taken date (before)--trashed-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (after)--trashed-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (before)--type [IMAGE|VIDEO|AUDIO|OTHER]: Asset type filter--updated-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (after)--updated-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (before)--visibility [archive|timeline|hidden|locked]: Filter by visibility--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 TEXT: 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 TEXT: 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 TEXT: Filter by album IDs--city TEXT: Filter by city name--country TEXT: 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)--created-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by creation date (before)--device-id TEXT: Device ID to filter by--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 TEXT: Filter by lens model--library-id TEXT: Library ID to filter by--make TEXT: Filter by camera make--model TEXT: Filter by camera model--ocr TEXT: Filter by OCR text content--person-ids TEXT: Filter by person IDs--rating FLOAT RANGE: Filter by rating [-1<=x<=5]--size FLOAT RANGE: Number of results to return [1<=x<=1000]--state TEXT: Filter by state/province name--tag-ids TEXT: 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)--taken-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by taken date (before)--trashed-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (after)--trashed-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (before)--type TEXT: Asset type--updated-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (after)--updated-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (before)--visibility TEXT: Asset visibility--with-deleted [true|false]: Include deleted assets--with-exif [true|false]: Include EXIF data in response--with-people [true|false]: Include assets with people--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 TEXT: Filter by album IDs--city TEXT: Filter by city name--country TEXT: 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)--created-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by creation date (before)--device-id TEXT: Device ID to filter by--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 TEXT: Search language code--lens-model TEXT: Filter by lens model--library-id TEXT: Library ID to filter by--make TEXT: Filter by camera make--model TEXT: Filter by camera model--ocr TEXT: Filter by OCR text content--page FLOAT RANGE: Page number [x>=1]--person-ids TEXT: Filter by person IDs--query TEXT: Natural language search query--query-asset-id TEXT: Asset ID to use as search reference--rating FLOAT RANGE: Filter by rating [-1<=x<=5]--size FLOAT RANGE: Number of results to return [1<=x<=1000]--state TEXT: Filter by state/province name--tag-ids TEXT: 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)--taken-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by taken date (before)--trashed-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (after)--trashed-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by trash date (before)--type TEXT: Asset type--updated-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (after)--updated-before [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Filter by update date (before)--visibility TEXT: 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 configget-server-features: Get featuresget-server-license: Get product keyget-server-statistics: Get statisticsget-server-version: Get server versionget-storage: Get storageget-supported-media-types: Get supported media typesget-theme: Get themeget-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-theme
Get theme
Usage:
$ immichpy server get-theme [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 TEXT: Activation key [required]--license-key TEXT: License key (format: IM(SV|CL)(-XXXX){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
immichpy sessions create-session
Create a session
Usage:
$ immichpy sessions create-session [OPTIONS]
Options:
--device-os TEXT: Device OS--device-type TEXT: Device type--duration FLOAT RANGE: Session duration in seconds [x>=1]--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 linkupdate-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 TEXT: Asset IDs [required]--key TEXT--slug TEXT--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 TEXT: Album ID (for album sharing)--allow-download [true|false]: Allow downloads--allow-upload [true|false]: Allow uploads--asset-ids TEXT: Asset IDs (for individual assets)--description TEXT: Link description--expires-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Expiration date--password TEXT: Link password--show-metadata [true|false]: Show metadata--slug TEXT: Custom URL slug--type TEXT: 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 TEXT: Filter by album ID--id TEXT: 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 TEXT--password TEXT: Link passwordpassword--slug TEXT--token TEXT: Access token--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 TEXT: Asset IDs [required]--key TEXT--slug TEXT--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--change-expiry-time [true|false]: Whether to change the expiry time. Few clients cannot send null to set the expiryTime to never. Setting this flag and not sending expiryAt is considered as null instead. Clients that can send null values can ignore this.--description TEXT: Link description--expires-at [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Expiration date--password TEXT: Link password--show-metadata [true|false]: Show metadata--slug TEXT: 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
immichpy stacks create-stack
Create a stack
Usage:
$ immichpy stacks create-stack [OPTIONS]
Options:
--asset-ids TEXT: 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 TEXT: 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 TEXT: 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 TEXT: 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-delta-sync: Get delta sync for user (DEPRECATED)get-full-sync-for-user: Get full sync for user (DEPRECATED)get-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|AssetDeleteV1|AssetExifV1|AssetMetadataV1|AssetMetadataDeleteV1|PartnerV1|PartnerDeleteV1|PartnerAssetV1|PartnerAssetBackfillV1|PartnerAssetDeleteV1|PartnerAssetExifV1|PartnerAssetExifBackfillV1|PartnerStackBackfillV1|PartnerStackDeleteV1|PartnerStackV1|AlbumV1|AlbumDeleteV1|AlbumUserV1|AlbumUserBackfillV1|AlbumUserDeleteV1|AlbumAssetCreateV1|AlbumAssetUpdateV1|AlbumAssetBackfillV1|AlbumAssetExifCreateV1|AlbumAssetExifUpdateV1|AlbumAssetExifBackfillV1|AlbumToAssetV1|AlbumToAssetDeleteV1|AlbumToAssetBackfillV1|MemoryV1|MemoryDeleteV1|MemoryToAssetV1|MemoryToAssetDeleteV1|StackV1|StackDeleteV1|PersonV1|PersonDeleteV1|AssetFaceV1|AssetFaceDeleteV1|UserMetadataV1|UserMetadataDeleteV1|SyncAckV1|SyncResetV1|SyncCompleteV1]: Sync entity types to delete acks for--help: Show this message and exit.
immichpy sync get-delta-sync
Get delta sync for user
Usage:
$ immichpy sync get-delta-sync [OPTIONS]
Options:
--updated-after [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Sync assets updated after this date [required]--user-ids TEXT: User IDs to sync [required]--help: Show this message and exit.
immichpy sync get-full-sync-for-user
Get full sync for user
Usage:
$ immichpy sync get-full-sync-for-user [OPTIONS]
Options:
--last-id TEXT: Last asset ID (pagination)--limit INTEGER RANGE: Maximum number of assets to return [x>=1; required]--updated-until [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]: Sync assets updated until this date [required]--user-id TEXT: Filter by user ID--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|AlbumUsersV1|AlbumToAssetsV1|AlbumAssetsV1|AlbumAssetExifsV1|AssetsV1|AssetExifsV1|AssetMetadataV1|AuthUsersV1|MemoriesV1|MemoryToAssetsV1|PartnersV1|PartnerAssetsV1|PartnerAssetExifsV1|PartnerStacksV1|StacksV1|UsersV1|PeopleV1|AssetFacesV1|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 TEXT: 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 configurationget-config-defaults: Get system configuration defaultsget-storage-template-options: Get storage template optionsupdate-config: Update system configuration
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 TEXT: Cron expression [required]--backup-database-enabled: Enabled [required]--backup-database-keep-last-amount FLOAT RANGE: Keep last amount [x>=1; required]--ffmpeg-accel TEXT: Transcode hardware acceleration [required]--ffmpeg-accel-decode: Accelerated decode [required]--ffmpeg-accepted-audio-codecs [mp3|aac|libopus|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 INTEGER RANGE: B-frames [-1<=x<=16; required]--ffmpeg-cq-mode TEXT: CQ mode [required]--ffmpeg-crf INTEGER RANGE: CRF [0<=x<=51; required]--ffmpeg-gop-size INTEGER RANGE: GOP size [x>=0; required]--ffmpeg-max-bitrate TEXT: Max bitrate [required]--ffmpeg-preferred-hw-device TEXT: Preferred hardware device [required]--ffmpeg-preset TEXT: Preset [required]--ffmpeg-refs INTEGER RANGE: References [0<=x<=6; required]--ffmpeg-target-audio-codec TEXT: Target audio codec [required]--ffmpeg-target-resolution TEXT: Target resolution [required]--ffmpeg-target-video-codec TEXT: Target video codec [required]--ffmpeg-temporal-aq: Temporal AQ [required]--ffmpeg-threads INTEGER RANGE: Threads [x>=0; required]--ffmpeg-tonemap TEXT: Tone mapping [required]--ffmpeg-transcode TEXT: Transcode policy [required]--ffmpeg-two-pass: Two pass [required]--image-colorspace TEXT: Colorspace [required]--image-extract-embedded: Extract embedded [required]--image-fullsize-enabled: Enabled [required]--image-fullsize-format TEXT: Image format [required]--image-fullsize-progressive [true|false]: Progressive--image-fullsize-quality INTEGER RANGE: Quality [1<=x<=100; required]--image-preview-format TEXT: Image format [required]--image-preview-progressive [true|false]--image-preview-quality INTEGER RANGE: Quality [1<=x<=100; required]--image-preview-size INTEGER RANGE: Size [x>=1; required]--image-thumbnail-format TEXT: Image format [required]--image-thumbnail-progressive [true|false]--image-thumbnail-quality INTEGER RANGE: Quality [1<=x<=100; required]--image-thumbnail-size INTEGER RANGE: Size [x>=1; required]--job-background-task-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-editor-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-face-detection-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-library-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-metadata-extraction-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-migration-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-notifications-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-ocr-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-search-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-sidecar-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-smart-search-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-thumbnail-generation-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-video-conversion-concurrency INTEGER RANGE: Concurrency [x>=1; required]--job-workflow-concurrency INTEGER RANGE: Concurrency [x>=1; required]--library-scan-cron-expression TEXT: [required]--library-scan-enabled: Enabled [required]--library-watch-enabled: Enabled [required]--logging-enabled: Enabled [required]--logging-level TEXT: [required]--machine-learning-availability-checks-enabled: Enabled [required]--machine-learning-availability-checks-interval FLOAT: [required]--machine-learning-availability-checks-timeout FLOAT: [required]--machine-learning-clip-enabled: Whether the task is enabled [required]--machine-learning-clip-model-name TEXT: 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 INTEGER RANGE: Minimum number of faces required for recognition [x>=1; 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 TEXT: Name of the model to use [required]--machine-learning-ocr-enabled: Whether the task is enabled [required]--machine-learning-ocr-max-resolution INTEGER RANGE: Maximum resolution for OCR processing [x>=1; 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 TEXT: Name of the model to use [required]--machine-learning-urls TEXT: [required]--map-dark-style TEXT: [required]--map-enabled: Enabled [required]--map-light-style TEXT: [required]--metadata-faces-import: Import [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 TEXT: [required]--nightly-tasks-sync-quota-usage: Sync quota usage [required]--notifications-smtp-enabled: Whether SMTP email notifications are enabled [required]--notifications-smtp-from TEXT: Email address to send from [required]--notifications-smtp-reply-to TEXT: Email address for replies [required]--notifications-smtp-transport-host TEXT: SMTP server hostname [required]--notifications-smtp-transport-ignore-cert: Whether to ignore SSL certificate errors [required]--notifications-smtp-transport-password TEXT: SMTP password [required]--notifications-smtp-transport-port FLOAT RANGE: SMTP server port [0<=x<=65535; required]--notifications-smtp-transport-secure: Whether to use secure connection (TLS/SSL) [required]--notifications-smtp-transport-username TEXT: SMTP username [required]--oauth-auto-launch: Auto launch [required]--oauth-auto-register: Auto register [required]--oauth-button-text TEXT: Button text [required]--oauth-client-id TEXT: Client ID [required]--oauth-client-secret TEXT: Client secret [required]--oauth-default-storage-quota INTEGER RANGE: Default storage quota [x>=0; required]--oauth-enabled: Enabled [required]--oauth-issuer-url TEXT: Issuer URL [required]--oauth-mobile-override-enabled: Mobile override enabled [required]--oauth-mobile-redirect-uri TEXT: Mobile redirect URI [required]--oauth-profile-signing-algorithm TEXT: Profile signing algorithm [required]--oauth-role-claim TEXT: Role claim [required]--oauth-scope TEXT: Scope [required]--oauth-signing-algorithm TEXT: [required]--oauth-storage-label-claim TEXT: Storage label claim [required]--oauth-storage-quota-claim TEXT: Storage quota claim [required]--oauth-timeout INTEGER RANGE: Timeout [x>=1; required]--oauth-token-endpoint-auth-method TEXT: Token endpoint auth method [required]--password-login-enabled: Enabled [required]--reverse-geocoding-enabled: Enabled [required]--server-external-domain TEXT: External domain [required]--server-login-page-message TEXT: 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 TEXT: Template [required]--templates-email-album-invite-template TEXT: [required]--templates-email-album-update-template TEXT: [required]--templates-email-welcome-template TEXT: [required]--theme-custom-css TEXT: Custom CSS for theming [required]--trash-days INTEGER RANGE: Days [x>=0; required]--trash-enabled: Enabled [required]--user-delete-delay INTEGER RANGE: Delete delay [x>=1; 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 tagupsert-tags: Upsert tags
immichpy tags bulk-tag-assets
Tag assets
Usage:
$ immichpy tags bulk-tag-assets [OPTIONS]
Options:
--asset-ids TEXT: Asset IDs [required]--tag-ids TEXT: Tag IDs [required]--help: Show this message and exit.
immichpy tags create-tag
Create a tag
Usage:
$ immichpy tags create-tag [OPTIONS]
Options:
--color TEXT: Tag color (hex)--name TEXT: Tag name [required]--parent-id TEXT: 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 TEXT: 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 TEXT: 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 TEXT: Tag color (hex)--help: Show this message and exit.
immichpy tags upsert-tags
Upsert tags
Usage:
$ immichpy tags upsert-tags [OPTIONS]
Options:
--tags TEXT: 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 TEXT: Filter assets belonging to a specific album--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 TEXT--order [asc|desc]: Sort order for assets within time buckets (ASC for oldest first, DESC for newest first)--person-id TEXT: Filter assets containing a specific person (face recognition)--slug TEXT--tag-id TEXT: Filter assets with a specific tag--time-bucket TEXT: Time bucket identifier in YYYY-MM-DD format (e.g., "2024-01-01" for January 2024)2024-01-01 [required]--user-id TEXT: 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 TEXT: Filter assets belonging to a specific album--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 TEXT--order [asc|desc]: Sort order for assets within time buckets (ASC for oldest first, DESC for newest first)--person-id TEXT: Filter assets containing a specific person (face recognition)--slug TEXT--tag-id TEXT: Filter assets with a specific tag--user-id TEXT: 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 TEXT: 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-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 preferencesupdate-my-user: Update current userget-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-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 TEXT: Activation key [required]--license-key TEXT: License key (format: IM(SV|CL)(-XXXX){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 TEXT: Asset sort order--avatar-color TEXT: Avatar color--cast-g-cast-enabled [true|false]: Whether Google Cast is enabled--download-archive-size INTEGER RANGE: Maximum archive size in bytes [x>=1]--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 INTEGER RANGE: Memory duration in seconds [x>=1]--memories-enabled [true|false]: Whether memories are enabled--people-enabled [true|false]: Whether people are enabled--people-sidebar-web [true|false]: Whether people appear in web sidebar--purchase-hide-buy-button-until TEXT: 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--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 TEXT: Avatar color--email TEXT: User email--name TEXT: User name--password TEXT: 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 TEXT: 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-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 userupdate-user-preferences-admin: Update user preferences
immichpy users-admin create-user-admin
Create a user
Usage:
$ immichpy users-admin create-user-admin [OPTIONS]
Options:
--avatar-color TEXT: Avatar color--email TEXT: User email [required]--is-admin [true|false]: Grant admin privileges--name TEXT: User name [required]--notify [true|false]: Send notification email--password TEXT: User password [required]--quota-size-in-bytes INTEGER RANGE: Storage quota in bytes [x>=0]--should-change-password [true|false]: Require password change on next login--storage-label TEXT: 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-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]: Filter by visibility--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 TEXT: 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 TEXT: Avatar color--email TEXT: User email--is-admin [true|false]: Grant admin privileges--name TEXT: User name--password TEXT: User password--pin-code TEXT: PIN code
Example: 123456
* --quota-size-in-bytes INTEGER RANGE: Storage quota in bytes [x>=0]
* --should-change-password [true|false]: Require password change on next login
* --storage-label TEXT: 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 TEXT: Asset sort order--avatar-color TEXT: Avatar color--cast-g-cast-enabled [true|false]: Whether Google Cast is enabled--download-archive-size INTEGER RANGE: Maximum archive size in bytes [x>=1]--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 INTEGER RANGE: Memory duration in seconds [x>=1]--memories-enabled [true|false]: Whether memories are enabled--people-enabled [true|false]: Whether people are enabled--people-sidebar-web [true|false]: Whether people appear in web sidebar--purchase-hide-buy-button-until TEXT: 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--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 TEXT: [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-workflows: List all workflowsupdate-workflow: Update a workflow
immichpy workflows create-workflow
Create a workflow
Usage:
$ immichpy workflows create-workflow [OPTIONS]
Options:
--actions TEXT: Workflow actions
As a JSON string [required]
* --description TEXT: Workflow description
* --enabled [true|false]: Workflow enabled
* --filters TEXT: Workflow filters
As a JSON string [required]
* --name TEXT: Workflow name [required]
* --trigger-type TEXT: 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-workflows
List all workflows
Usage:
$ immichpy workflows get-workflows [OPTIONS]
Options:
--help: Show this message and exit.
immichpy workflows update-workflow
Update a workflow
Usage:
$ immichpy workflows update-workflow [OPTIONS] ID
Arguments:
ID: [required]
Options:
--actions TEXT: Workflow actions
As a JSON string
* --description TEXT: Workflow description
* --enabled [true|false]: Workflow enabled
* --filters TEXT: Workflow filters
As a JSON string
* --name TEXT: Workflow name
* --trigger-type TEXT: 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 TEXT: [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--help: Show this message and exit.