immichpy 1.6.5__py3-none-any.whl → 1.7.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (435) hide show
  1. immichpy/cli/commands/activities.py +23 -11
  2. immichpy/cli/commands/albums.py +34 -20
  3. immichpy/cli/commands/api_keys.py +6 -4
  4. immichpy/cli/commands/assets.py +274 -65
  5. immichpy/cli/commands/authentication.py +115 -25
  6. immichpy/cli/commands/database_backups_admin.py +111 -0
  7. immichpy/cli/commands/download.py +13 -5
  8. immichpy/cli/commands/duplicates.py +1 -1
  9. immichpy/cli/commands/faces.py +17 -11
  10. immichpy/cli/commands/jobs.py +6 -4
  11. immichpy/cli/commands/libraries.py +15 -9
  12. immichpy/cli/commands/maintenance_admin.py +39 -2
  13. immichpy/cli/commands/map.py +8 -8
  14. immichpy/cli/commands/memories.py +35 -21
  15. immichpy/cli/commands/notifications.py +16 -8
  16. immichpy/cli/commands/notifications_admin.py +43 -17
  17. immichpy/cli/commands/partners.py +9 -3
  18. immichpy/cli/commands/people.py +30 -24
  19. immichpy/cli/commands/plugins.py +14 -0
  20. immichpy/cli/commands/queues.py +8 -6
  21. immichpy/cli/commands/search.py +395 -189
  22. immichpy/cli/commands/server.py +6 -2
  23. immichpy/cli/commands/sessions.py +6 -4
  24. immichpy/cli/commands/shared_links.py +42 -25
  25. immichpy/cli/commands/stacks.py +4 -4
  26. immichpy/cli/commands/sync.py +26 -10
  27. immichpy/cli/commands/system_config.py +216 -115
  28. immichpy/cli/commands/system_metadata.py +3 -1
  29. immichpy/cli/commands/tags.py +9 -9
  30. immichpy/cli/commands/trash.py +1 -1
  31. immichpy/cli/commands/users.py +57 -29
  32. immichpy/cli/commands/users_admin.py +79 -45
  33. immichpy/cli/commands/workflows.py +40 -11
  34. immichpy/cli/main.py +8 -0
  35. immichpy/client/.openapi-generator/FILES +26 -2
  36. immichpy/client/generated/__init__.py +101 -7
  37. immichpy/client/generated/api/__init__.py +3 -0
  38. immichpy/client/generated/api/activities_api.py +73 -43
  39. immichpy/client/generated/api/albums_api.py +40 -19
  40. immichpy/client/generated/api/api_keys_api.py +1 -1
  41. immichpy/client/generated/api/assets_api.py +1768 -366
  42. immichpy/client/generated/api/authentication_admin_api.py +1 -1
  43. immichpy/client/generated/api/authentication_api.py +1 -1
  44. immichpy/client/generated/api/database_backups_admin_api.py +1224 -0
  45. immichpy/client/generated/api/deprecated_api.py +103 -73
  46. immichpy/client/generated/api/download_api.py +1 -1
  47. immichpy/client/generated/api/duplicates_api.py +1 -1
  48. immichpy/client/generated/api/faces_api.py +7 -7
  49. immichpy/client/generated/api/jobs_api.py +7 -7
  50. immichpy/client/generated/api/libraries_api.py +1 -1
  51. immichpy/client/generated/api/maintenance_admin_api.py +459 -1
  52. immichpy/client/generated/api/map_api.py +103 -49
  53. immichpy/client/generated/api/memories_api.py +109 -61
  54. immichpy/client/generated/api/notifications_admin_api.py +1 -1
  55. immichpy/client/generated/api/notifications_api.py +52 -25
  56. immichpy/client/generated/api/partners_api.py +7 -7
  57. immichpy/client/generated/api/people_api.py +37 -19
  58. immichpy/client/generated/api/plugins_api.py +230 -1
  59. immichpy/client/generated/api/queues_api.py +37 -31
  60. immichpy/client/generated/api/search_api.py +529 -283
  61. immichpy/client/generated/api/server_api.py +1 -1
  62. immichpy/client/generated/api/sessions_api.py +1 -1
  63. immichpy/client/generated/api/shared_links_api.py +53 -19
  64. immichpy/client/generated/api/stacks_api.py +13 -7
  65. immichpy/client/generated/api/sync_api.py +1 -1
  66. immichpy/client/generated/api/system_config_api.py +1 -1
  67. immichpy/client/generated/api/system_metadata_api.py +1 -1
  68. immichpy/client/generated/api/tags_api.py +1 -1
  69. immichpy/client/generated/api/timeline_api.py +1 -1
  70. immichpy/client/generated/api/trash_api.py +1 -1
  71. immichpy/client/generated/api/users_admin_api.py +55 -31
  72. immichpy/client/generated/api/users_api.py +16 -7
  73. immichpy/client/generated/api/views_api.py +1 -1
  74. immichpy/client/generated/api/workflows_api.py +1 -1
  75. immichpy/client/generated/api_client.py +1 -1
  76. immichpy/client/generated/configuration.py +2 -2
  77. immichpy/client/generated/exceptions.py +1 -1
  78. immichpy/client/generated/models/__init__.py +56 -3
  79. immichpy/client/generated/models/activity_create_dto.py +11 -5
  80. immichpy/client/generated/models/activity_response_dto.py +10 -6
  81. immichpy/client/generated/models/activity_statistics_response_dto.py +4 -4
  82. immichpy/client/generated/models/add_users_dto.py +2 -2
  83. immichpy/client/generated/models/admin_onboarding_update_dto.py +4 -2
  84. immichpy/client/generated/models/album_response_dto.py +28 -16
  85. immichpy/client/generated/models/album_statistics_response_dto.py +6 -4
  86. immichpy/client/generated/models/album_user_add_dto.py +3 -3
  87. immichpy/client/generated/models/album_user_create_dto.py +3 -3
  88. immichpy/client/generated/models/album_user_response_dto.py +3 -3
  89. immichpy/client/generated/models/album_user_role.py +2 -2
  90. immichpy/client/generated/models/albums_add_assets_dto.py +3 -3
  91. immichpy/client/generated/models/albums_add_assets_response_dto.py +4 -4
  92. immichpy/client/generated/models/albums_response.py +4 -2
  93. immichpy/client/generated/models/albums_update.py +5 -3
  94. immichpy/client/generated/models/api_key_create_dto.py +5 -3
  95. immichpy/client/generated/models/api_key_create_response_dto.py +2 -2
  96. immichpy/client/generated/models/api_key_response_dto.py +6 -6
  97. immichpy/client/generated/models/api_key_update_dto.py +5 -3
  98. immichpy/client/generated/models/asset_bulk_delete_dto.py +6 -4
  99. immichpy/client/generated/models/asset_bulk_update_dto.py +28 -12
  100. immichpy/client/generated/models/asset_bulk_upload_check_dto.py +3 -3
  101. immichpy/client/generated/models/asset_bulk_upload_check_item.py +3 -3
  102. immichpy/client/generated/models/asset_bulk_upload_check_response_dto.py +5 -3
  103. immichpy/client/generated/models/asset_bulk_upload_check_result.py +12 -6
  104. immichpy/client/generated/models/asset_copy_dto.py +16 -8
  105. immichpy/client/generated/models/asset_delta_sync_dto.py +5 -3
  106. immichpy/client/generated/models/asset_delta_sync_response_dto.py +6 -4
  107. immichpy/client/generated/models/asset_edit_action.py +35 -0
  108. immichpy/client/generated/models/asset_edit_action_crop.py +95 -0
  109. immichpy/client/generated/models/asset_edit_action_list_dto.py +104 -0
  110. immichpy/client/generated/models/asset_edit_action_list_dto_edits_inner.py +188 -0
  111. immichpy/client/generated/models/asset_edit_action_mirror.py +95 -0
  112. immichpy/client/generated/models/asset_edit_action_rotate.py +95 -0
  113. immichpy/client/generated/models/asset_edits_dto.py +107 -0
  114. immichpy/client/generated/models/asset_face_create_dto.py +13 -9
  115. immichpy/client/generated/models/asset_face_delete_dto.py +3 -3
  116. immichpy/client/generated/models/asset_face_response_dto.py +26 -10
  117. immichpy/client/generated/models/asset_face_update_dto.py +3 -3
  118. immichpy/client/generated/models/asset_face_update_item.py +3 -3
  119. immichpy/client/generated/models/asset_face_without_person_response_dto.py +23 -9
  120. immichpy/client/generated/models/asset_full_sync_dto.py +13 -5
  121. immichpy/client/generated/models/asset_ids_dto.py +2 -2
  122. immichpy/client/generated/models/asset_ids_response_dto.py +6 -4
  123. immichpy/client/generated/models/asset_job_name.py +2 -2
  124. immichpy/client/generated/models/asset_jobs_dto.py +3 -3
  125. immichpy/client/generated/models/asset_media_response_dto.py +4 -4
  126. immichpy/client/generated/models/asset_media_size.py +2 -1
  127. immichpy/client/generated/models/asset_media_status.py +2 -2
  128. immichpy/client/generated/models/asset_metadata_bulk_delete_dto.py +103 -0
  129. immichpy/client/generated/models/asset_metadata_bulk_delete_item_dto.py +86 -0
  130. immichpy/client/generated/models/asset_metadata_bulk_response_dto.py +93 -0
  131. immichpy/client/generated/models/asset_metadata_bulk_upsert_dto.py +103 -0
  132. immichpy/client/generated/models/asset_metadata_bulk_upsert_item_dto.py +91 -0
  133. immichpy/client/generated/models/asset_metadata_response_dto.py +5 -6
  134. immichpy/client/generated/models/asset_metadata_upsert_dto.py +5 -3
  135. immichpy/client/generated/models/asset_metadata_upsert_item_dto.py +4 -5
  136. immichpy/client/generated/models/asset_ocr_response_dto.py +1 -1
  137. immichpy/client/generated/models/asset_order.py +2 -2
  138. immichpy/client/generated/models/asset_response_dto.py +66 -24
  139. immichpy/client/generated/models/asset_stack_response_dto.py +8 -4
  140. immichpy/client/generated/models/asset_stats_response_dto.py +5 -5
  141. immichpy/client/generated/models/asset_type_enum.py +2 -2
  142. immichpy/client/generated/models/asset_visibility.py +2 -2
  143. immichpy/client/generated/models/audio_codec.py +2 -2
  144. immichpy/client/generated/models/auth_status_response_dto.py +12 -6
  145. immichpy/client/generated/models/avatar_update.py +3 -3
  146. immichpy/client/generated/models/bulk_id_error_reason.py +2 -2
  147. immichpy/client/generated/models/bulk_id_response_dto.py +14 -5
  148. immichpy/client/generated/models/bulk_ids_dto.py +3 -3
  149. immichpy/client/generated/models/cast_response.py +4 -2
  150. immichpy/client/generated/models/cast_update.py +4 -2
  151. immichpy/client/generated/models/change_password_dto.py +6 -4
  152. immichpy/client/generated/models/check_existing_assets_dto.py +3 -3
  153. immichpy/client/generated/models/check_existing_assets_response_dto.py +4 -2
  154. immichpy/client/generated/models/clip_config.py +5 -3
  155. immichpy/client/generated/models/colorspace.py +1 -1
  156. immichpy/client/generated/models/contributor_count_response_dto.py +5 -3
  157. immichpy/client/generated/models/cq_mode.py +2 -2
  158. immichpy/client/generated/models/create_album_dto.py +9 -5
  159. immichpy/client/generated/models/create_library_dto.py +9 -5
  160. immichpy/client/generated/models/create_profile_image_response_dto.py +8 -4
  161. immichpy/client/generated/models/crop_parameters.py +105 -0
  162. immichpy/client/generated/models/database_backup_config.py +6 -4
  163. immichpy/client/generated/models/database_backup_delete_dto.py +82 -0
  164. immichpy/client/generated/models/database_backup_dto.py +85 -0
  165. immichpy/client/generated/models/database_backup_list_response_dto.py +98 -0
  166. immichpy/client/generated/models/download_archive_info.py +5 -3
  167. immichpy/client/generated/models/download_info_dto.py +11 -5
  168. immichpy/client/generated/models/download_response.py +8 -3
  169. immichpy/client/generated/models/download_response_dto.py +3 -3
  170. immichpy/client/generated/models/download_update.py +5 -3
  171. immichpy/client/generated/models/duplicate_detection_config.py +6 -3
  172. immichpy/client/generated/models/duplicate_response_dto.py +5 -3
  173. immichpy/client/generated/models/email_notifications_response.py +10 -4
  174. immichpy/client/generated/models/email_notifications_update.py +14 -4
  175. immichpy/client/generated/models/exif_response_dto.py +47 -23
  176. immichpy/client/generated/models/face_dto.py +3 -3
  177. immichpy/client/generated/models/facial_recognition_config.py +15 -6
  178. immichpy/client/generated/models/folders_response.py +5 -3
  179. immichpy/client/generated/models/folders_update.py +9 -3
  180. immichpy/client/generated/models/image_format.py +2 -2
  181. immichpy/client/generated/models/job_create_dto.py +3 -3
  182. immichpy/client/generated/models/job_name.py +3 -2
  183. immichpy/client/generated/models/job_settings_dto.py +4 -2
  184. immichpy/client/generated/models/library_response_dto.py +16 -10
  185. immichpy/client/generated/models/library_stats_response_dto.py +6 -6
  186. immichpy/client/generated/models/license_key_dto.py +7 -3
  187. immichpy/client/generated/models/license_response_dto.py +8 -4
  188. immichpy/client/generated/models/log_level.py +1 -1
  189. immichpy/client/generated/models/login_credential_dto.py +4 -4
  190. immichpy/client/generated/models/login_response_dto.py +13 -9
  191. immichpy/client/generated/models/logout_response_dto.py +3 -3
  192. immichpy/client/generated/models/machine_learning_availability_checks_dto.py +3 -3
  193. immichpy/client/generated/models/maintenance_action.py +4 -2
  194. immichpy/client/generated/models/maintenance_auth_dto.py +3 -3
  195. immichpy/client/generated/models/maintenance_detect_install_response_dto.py +101 -0
  196. immichpy/client/generated/models/maintenance_detect_install_storage_folder_dto.py +95 -0
  197. immichpy/client/generated/models/maintenance_login_dto.py +3 -3
  198. immichpy/client/generated/models/maintenance_status_response_dto.py +109 -0
  199. immichpy/client/generated/models/manual_job_name.py +2 -2
  200. immichpy/client/generated/models/map_marker_response_dto.py +8 -8
  201. immichpy/client/generated/models/map_reverse_geocode_response_dto.py +5 -5
  202. immichpy/client/generated/models/memories_response.py +4 -4
  203. immichpy/client/generated/models/memories_update.py +7 -3
  204. immichpy/client/generated/models/memory_create_dto.py +12 -6
  205. immichpy/client/generated/models/memory_response_dto.py +20 -12
  206. immichpy/client/generated/models/memory_search_order.py +1 -1
  207. immichpy/client/generated/models/memory_statistics_response_dto.py +3 -3
  208. immichpy/client/generated/models/memory_type.py +1 -1
  209. immichpy/client/generated/models/memory_update_dto.py +10 -4
  210. immichpy/client/generated/models/merge_person_dto.py +3 -3
  211. immichpy/client/generated/models/metadata_search_dto.py +124 -46
  212. immichpy/client/generated/models/{asset_metadata_key.py → mirror_axis.py} +6 -5
  213. immichpy/client/generated/models/mirror_parameters.py +83 -0
  214. immichpy/client/generated/models/notification_create_dto.py +18 -8
  215. immichpy/client/generated/models/notification_delete_all_dto.py +3 -3
  216. immichpy/client/generated/models/notification_dto.py +15 -9
  217. immichpy/client/generated/models/notification_level.py +1 -1
  218. immichpy/client/generated/models/notification_type.py +1 -1
  219. immichpy/client/generated/models/notification_update_all_dto.py +5 -3
  220. immichpy/client/generated/models/notification_update_dto.py +4 -2
  221. immichpy/client/generated/models/o_auth_authorize_response_dto.py +3 -3
  222. immichpy/client/generated/models/o_auth_callback_dto.py +8 -4
  223. immichpy/client/generated/models/o_auth_config_dto.py +10 -4
  224. immichpy/client/generated/models/o_auth_token_endpoint_auth_method.py +2 -2
  225. immichpy/client/generated/models/ocr_config.py +14 -6
  226. immichpy/client/generated/models/on_this_day_dto.py +2 -2
  227. immichpy/client/generated/models/onboarding_dto.py +4 -2
  228. immichpy/client/generated/models/onboarding_response_dto.py +4 -2
  229. immichpy/client/generated/models/partner_create_dto.py +4 -2
  230. immichpy/client/generated/models/partner_direction.py +1 -1
  231. immichpy/client/generated/models/partner_response_dto.py +16 -8
  232. immichpy/client/generated/models/partner_update_dto.py +4 -2
  233. immichpy/client/generated/models/people_response.py +5 -3
  234. immichpy/client/generated/models/people_response_dto.py +7 -5
  235. immichpy/client/generated/models/people_update.py +9 -3
  236. immichpy/client/generated/models/people_update_dto.py +3 -3
  237. immichpy/client/generated/models/people_update_item.py +10 -10
  238. immichpy/client/generated/models/permission.py +13 -2
  239. immichpy/client/generated/models/person_create_dto.py +8 -8
  240. immichpy/client/generated/models/person_response_dto.py +17 -9
  241. immichpy/client/generated/models/person_statistics_response_dto.py +3 -3
  242. immichpy/client/generated/models/person_update_dto.py +9 -9
  243. immichpy/client/generated/models/person_with_faces_response_dto.py +20 -10
  244. immichpy/client/generated/models/pin_code_change_dto.py +10 -4
  245. immichpy/client/generated/models/pin_code_reset_dto.py +7 -3
  246. immichpy/client/generated/models/pin_code_setup_dto.py +2 -2
  247. immichpy/client/generated/models/places_response_dto.py +11 -7
  248. immichpy/client/generated/models/plugin_action_response_dto.py +13 -9
  249. immichpy/client/generated/models/{plugin_context.py → plugin_context_type.py} +4 -4
  250. immichpy/client/generated/models/plugin_filter_response_dto.py +13 -9
  251. immichpy/client/generated/models/plugin_response_dto.py +11 -11
  252. immichpy/client/generated/models/plugin_trigger_response_dto.py +89 -0
  253. immichpy/client/generated/models/plugin_trigger_type.py +2 -2
  254. immichpy/client/generated/models/purchase_response.py +7 -3
  255. immichpy/client/generated/models/purchase_update.py +7 -3
  256. immichpy/client/generated/models/queue_command.py +2 -2
  257. immichpy/client/generated/models/queue_command_dto.py +6 -4
  258. immichpy/client/generated/models/queue_delete_dto.py +1 -1
  259. immichpy/client/generated/models/queue_job_response_dto.py +6 -6
  260. immichpy/client/generated/models/queue_job_status.py +1 -1
  261. immichpy/client/generated/models/queue_name.py +2 -1
  262. immichpy/client/generated/models/queue_response_dto.py +5 -3
  263. immichpy/client/generated/models/queue_response_legacy_dto.py +1 -1
  264. immichpy/client/generated/models/queue_statistics_dto.py +8 -8
  265. immichpy/client/generated/models/queue_status_legacy_dto.py +8 -3
  266. immichpy/client/generated/models/queue_update_dto.py +4 -2
  267. immichpy/client/generated/models/queues_response_legacy_dto.py +9 -1
  268. immichpy/client/generated/models/random_search_dto.py +96 -34
  269. immichpy/client/generated/models/ratings_response.py +3 -3
  270. immichpy/client/generated/models/ratings_update.py +5 -3
  271. immichpy/client/generated/models/reaction_level.py +1 -1
  272. immichpy/client/generated/models/reaction_type.py +1 -1
  273. immichpy/client/generated/models/reverse_geocoding_state_response_dto.py +7 -3
  274. immichpy/client/generated/models/rotate_parameters.py +84 -0
  275. immichpy/client/generated/models/search_album_response_dto.py +4 -4
  276. immichpy/client/generated/models/search_asset_response_dto.py +6 -4
  277. immichpy/client/generated/models/search_explore_item.py +3 -3
  278. immichpy/client/generated/models/search_explore_response_dto.py +2 -2
  279. immichpy/client/generated/models/search_facet_count_response_dto.py +4 -4
  280. immichpy/client/generated/models/search_facet_response_dto.py +3 -3
  281. immichpy/client/generated/models/search_response_dto.py +1 -1
  282. immichpy/client/generated/models/search_statistics_response_dto.py +3 -3
  283. immichpy/client/generated/models/search_suggestion_type.py +1 -1
  284. immichpy/client/generated/models/server_about_response_dto.py +46 -22
  285. immichpy/client/generated/models/server_apk_links_dto.py +12 -6
  286. immichpy/client/generated/models/server_config_dto.py +36 -12
  287. immichpy/client/generated/models/server_features_dto.py +32 -16
  288. immichpy/client/generated/models/server_media_types_response_dto.py +5 -5
  289. immichpy/client/generated/models/server_ping_response.py +1 -1
  290. immichpy/client/generated/models/server_stats_response_dto.py +10 -6
  291. immichpy/client/generated/models/server_storage_response_dto.py +21 -8
  292. immichpy/client/generated/models/server_theme_dto.py +4 -2
  293. immichpy/client/generated/models/server_version_history_response_dto.py +6 -4
  294. immichpy/client/generated/models/server_version_response_dto.py +5 -5
  295. immichpy/client/generated/models/session_create_dto.py +8 -4
  296. immichpy/client/generated/models/session_create_response_dto.py +17 -11
  297. immichpy/client/generated/models/session_response_dto.py +16 -10
  298. immichpy/client/generated/models/session_unlock_dto.py +7 -3
  299. immichpy/client/generated/models/session_update_dto.py +2 -2
  300. immichpy/client/generated/models/set_maintenance_mode_dto.py +17 -7
  301. immichpy/client/generated/models/shared_link_create_dto.py +25 -11
  302. immichpy/client/generated/models/shared_link_edit_dto.py +19 -9
  303. immichpy/client/generated/models/shared_link_response_dto.py +18 -14
  304. immichpy/client/generated/models/shared_link_type.py +2 -2
  305. immichpy/client/generated/models/shared_links_response.py +5 -3
  306. immichpy/client/generated/models/shared_links_update.py +9 -3
  307. immichpy/client/generated/models/sign_up_dto.py +5 -5
  308. immichpy/client/generated/models/smart_search_dto.py +102 -36
  309. immichpy/client/generated/models/source_type.py +2 -2
  310. immichpy/client/generated/models/stack_create_dto.py +2 -2
  311. immichpy/client/generated/models/stack_response_dto.py +6 -4
  312. immichpy/client/generated/models/stack_update_dto.py +4 -2
  313. immichpy/client/generated/models/statistics_search_dto.py +86 -30
  314. immichpy/client/generated/models/storage_folder.py +38 -0
  315. immichpy/client/generated/models/sync_ack_delete_dto.py +5 -3
  316. immichpy/client/generated/models/sync_ack_dto.py +4 -4
  317. immichpy/client/generated/models/sync_ack_set_dto.py +4 -2
  318. immichpy/client/generated/models/sync_album_delete_v1.py +2 -2
  319. immichpy/client/generated/models/sync_album_to_asset_delete_v1.py +3 -3
  320. immichpy/client/generated/models/sync_album_to_asset_v1.py +3 -3
  321. immichpy/client/generated/models/sync_album_user_delete_v1.py +3 -3
  322. immichpy/client/generated/models/sync_album_user_v1.py +4 -4
  323. immichpy/client/generated/models/sync_album_v1.py +13 -9
  324. immichpy/client/generated/models/sync_asset_delete_v1.py +2 -2
  325. immichpy/client/generated/models/sync_asset_exif_v1.py +46 -26
  326. immichpy/client/generated/models/sync_asset_face_delete_v1.py +2 -2
  327. immichpy/client/generated/models/sync_asset_face_v1.py +5 -5
  328. immichpy/client/generated/models/sync_asset_metadata_delete_v1.py +3 -4
  329. immichpy/client/generated/models/sync_asset_metadata_v1.py +4 -5
  330. immichpy/client/generated/models/sync_asset_v1.py +47 -18
  331. immichpy/client/generated/models/sync_auth_user_v1.py +22 -12
  332. immichpy/client/generated/models/sync_entity_type.py +2 -2
  333. immichpy/client/generated/models/sync_memory_asset_delete_v1.py +3 -3
  334. immichpy/client/generated/models/sync_memory_asset_v1.py +3 -3
  335. immichpy/client/generated/models/sync_memory_delete_v1.py +2 -2
  336. immichpy/client/generated/models/sync_memory_v1.py +13 -13
  337. immichpy/client/generated/models/sync_partner_delete_v1.py +5 -3
  338. immichpy/client/generated/models/sync_partner_v1.py +6 -4
  339. immichpy/client/generated/models/sync_person_delete_v1.py +2 -2
  340. immichpy/client/generated/models/sync_person_v1.py +13 -11
  341. immichpy/client/generated/models/sync_request_type.py +2 -2
  342. immichpy/client/generated/models/sync_stack_delete_v1.py +2 -2
  343. immichpy/client/generated/models/sync_stack_v1.py +8 -6
  344. immichpy/client/generated/models/sync_stream_dto.py +4 -4
  345. immichpy/client/generated/models/sync_user_delete_v1.py +2 -2
  346. immichpy/client/generated/models/sync_user_metadata_delete_v1.py +3 -3
  347. immichpy/client/generated/models/sync_user_metadata_v1.py +4 -4
  348. immichpy/client/generated/models/sync_user_v1.py +16 -8
  349. immichpy/client/generated/models/system_config_backups_dto.py +1 -1
  350. immichpy/client/generated/models/system_config_dto.py +1 -1
  351. immichpy/client/generated/models/system_config_f_fmpeg_dto.py +44 -22
  352. immichpy/client/generated/models/system_config_faces_dto.py +2 -2
  353. immichpy/client/generated/models/system_config_generated_fullsize_image_dto.py +13 -7
  354. immichpy/client/generated/models/system_config_generated_image_dto.py +14 -8
  355. immichpy/client/generated/models/system_config_image_dto.py +5 -3
  356. immichpy/client/generated/models/system_config_job_dto.py +9 -1
  357. immichpy/client/generated/models/system_config_library_dto.py +1 -1
  358. immichpy/client/generated/models/system_config_library_scan_dto.py +2 -2
  359. immichpy/client/generated/models/system_config_library_watch_dto.py +3 -3
  360. immichpy/client/generated/models/system_config_logging_dto.py +3 -3
  361. immichpy/client/generated/models/system_config_machine_learning_dto.py +2 -2
  362. immichpy/client/generated/models/system_config_map_dto.py +2 -2
  363. immichpy/client/generated/models/system_config_metadata_dto.py +1 -1
  364. immichpy/client/generated/models/system_config_new_version_check_dto.py +3 -3
  365. immichpy/client/generated/models/system_config_nightly_tasks_dto.py +16 -6
  366. immichpy/client/generated/models/system_config_notifications_dto.py +1 -1
  367. immichpy/client/generated/models/system_config_o_auth_dto.py +28 -18
  368. immichpy/client/generated/models/system_config_password_login_dto.py +3 -3
  369. immichpy/client/generated/models/system_config_reverse_geocoding_dto.py +3 -3
  370. immichpy/client/generated/models/system_config_server_dto.py +8 -4
  371. immichpy/client/generated/models/system_config_smtp_dto.py +8 -4
  372. immichpy/client/generated/models/system_config_smtp_transport_dto.py +9 -7
  373. immichpy/client/generated/models/system_config_storage_template_dto.py +6 -4
  374. immichpy/client/generated/models/system_config_template_emails_dto.py +1 -1
  375. immichpy/client/generated/models/system_config_template_storage_option_dto.py +32 -9
  376. immichpy/client/generated/models/system_config_templates_dto.py +1 -1
  377. immichpy/client/generated/models/system_config_theme_dto.py +4 -2
  378. immichpy/client/generated/models/system_config_trash_dto.py +3 -3
  379. immichpy/client/generated/models/system_config_user_dto.py +4 -2
  380. immichpy/client/generated/models/tag_bulk_assets_dto.py +3 -3
  381. immichpy/client/generated/models/tag_bulk_assets_response_dto.py +3 -3
  382. immichpy/client/generated/models/tag_create_dto.py +8 -4
  383. immichpy/client/generated/models/tag_response_dto.py +10 -8
  384. immichpy/client/generated/models/tag_update_dto.py +3 -3
  385. immichpy/client/generated/models/tag_upsert_dto.py +3 -3
  386. immichpy/client/generated/models/tags_response.py +5 -3
  387. immichpy/client/generated/models/tags_update.py +9 -3
  388. immichpy/client/generated/models/template_dto.py +3 -3
  389. immichpy/client/generated/models/template_response_dto.py +4 -4
  390. immichpy/client/generated/models/test_email_response_dto.py +2 -2
  391. immichpy/client/generated/models/time_bucket_asset_response_dto.py +2 -3
  392. immichpy/client/generated/models/time_buckets_response_dto.py +1 -1
  393. immichpy/client/generated/models/tone_mapping.py +2 -2
  394. immichpy/client/generated/models/transcode_hw_accel.py +2 -2
  395. immichpy/client/generated/models/transcode_policy.py +2 -2
  396. immichpy/client/generated/models/trash_response_dto.py +3 -3
  397. immichpy/client/generated/models/update_album_dto.py +12 -6
  398. immichpy/client/generated/models/update_album_user_dto.py +3 -3
  399. immichpy/client/generated/models/update_asset_dto.py +21 -9
  400. immichpy/client/generated/models/update_library_dto.py +8 -4
  401. immichpy/client/generated/models/usage_by_user_dto.py +16 -9
  402. immichpy/client/generated/models/user_admin_create_dto.py +20 -10
  403. immichpy/client/generated/models/user_admin_delete_dto.py +5 -3
  404. immichpy/client/generated/models/user_admin_response_dto.py +35 -18
  405. immichpy/client/generated/models/user_admin_update_dto.py +20 -10
  406. immichpy/client/generated/models/user_avatar_color.py +2 -2
  407. immichpy/client/generated/models/user_license.py +6 -4
  408. immichpy/client/generated/models/user_metadata_key.py +2 -2
  409. immichpy/client/generated/models/user_preferences_response_dto.py +1 -1
  410. immichpy/client/generated/models/user_preferences_update_dto.py +1 -1
  411. immichpy/client/generated/models/user_response_dto.py +13 -7
  412. immichpy/client/generated/models/user_status.py +2 -2
  413. immichpy/client/generated/models/user_update_me_dto.py +10 -5
  414. immichpy/client/generated/models/validate_access_token_response_dto.py +4 -2
  415. immichpy/client/generated/models/validate_library_dto.py +9 -3
  416. immichpy/client/generated/models/validate_library_import_path_response_dto.py +4 -4
  417. immichpy/client/generated/models/validate_library_response_dto.py +4 -2
  418. immichpy/client/generated/models/version_check_state_response_dto.py +7 -3
  419. immichpy/client/generated/models/video_codec.py +2 -2
  420. immichpy/client/generated/models/video_container.py +2 -2
  421. immichpy/client/generated/models/workflow_action_item_dto.py +7 -3
  422. immichpy/client/generated/models/workflow_action_response_dto.py +10 -6
  423. immichpy/client/generated/models/workflow_create_dto.py +11 -7
  424. immichpy/client/generated/models/workflow_filter_item_dto.py +7 -3
  425. immichpy/client/generated/models/workflow_filter_response_dto.py +10 -6
  426. immichpy/client/generated/models/workflow_response_dto.py +14 -27
  427. immichpy/client/generated/models/workflow_update_dto.py +19 -7
  428. immichpy/client/generated/rest.py +1 -1
  429. immichpy/client/main.py +4 -1
  430. {immichpy-1.6.5.dist-info → immichpy-1.7.5.dist-info}/METADATA +1 -3
  431. immichpy-1.7.5.dist-info/RECORD +464 -0
  432. immichpy-1.6.5.dist-info/RECORD +0 -439
  433. {immichpy-1.6.5.dist-info → immichpy-1.7.5.dist-info}/WHEEL +0 -0
  434. {immichpy-1.6.5.dist-info → immichpy-1.7.5.dist-info}/entry_points.txt +0 -0
  435. {immichpy-1.6.5.dist-info → immichpy-1.7.5.dist-info}/licenses/LICENSE +0 -0
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -28,18 +28,28 @@ class SharedLinkEditDto(BaseModel):
28
28
  SharedLinkEditDto
29
29
  """ # noqa: E501
30
30
 
31
- allow_download: Optional[StrictBool] = Field(default=None, alias="allowDownload")
32
- allow_upload: Optional[StrictBool] = Field(default=None, alias="allowUpload")
31
+ allow_download: Optional[StrictBool] = Field(
32
+ default=None, description="Allow downloads", alias="allowDownload"
33
+ )
34
+ allow_upload: Optional[StrictBool] = Field(
35
+ default=None, description="Allow uploads", alias="allowUpload"
36
+ )
33
37
  change_expiry_time: Optional[StrictBool] = Field(
34
38
  default=None,
35
- description="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.",
39
+ description="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.",
36
40
  alias="changeExpiryTime",
37
41
  )
38
- description: Optional[StrictStr] = None
39
- expires_at: Optional[datetime] = Field(default=None, alias="expiresAt")
40
- password: Optional[StrictStr] = None
41
- show_metadata: Optional[StrictBool] = Field(default=None, alias="showMetadata")
42
- slug: Optional[StrictStr] = None
42
+ description: Optional[StrictStr] = Field(
43
+ default=None, description="Link description"
44
+ )
45
+ expires_at: Optional[datetime] = Field(
46
+ default=None, description="Expiration date", alias="expiresAt"
47
+ )
48
+ password: Optional[StrictStr] = Field(default=None, description="Link password")
49
+ show_metadata: Optional[StrictBool] = Field(
50
+ default=None, description="Show metadata", alias="showMetadata"
51
+ )
52
+ slug: Optional[StrictStr] = Field(default=None, description="Custom URL slug")
43
53
  __properties: ClassVar[List[str]] = [
44
54
  "allowDownload",
45
55
  "allowUpload",
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -32,20 +32,24 @@ class SharedLinkResponseDto(BaseModel):
32
32
  """ # noqa: E501
33
33
 
34
34
  album: Optional[AlbumResponseDto] = None
35
- allow_download: StrictBool = Field(alias="allowDownload")
36
- allow_upload: StrictBool = Field(alias="allowUpload")
35
+ allow_download: StrictBool = Field(
36
+ description="Allow downloads", alias="allowDownload"
37
+ )
38
+ allow_upload: StrictBool = Field(description="Allow uploads", alias="allowUpload")
37
39
  assets: List[AssetResponseDto]
38
- created_at: datetime = Field(alias="createdAt")
39
- description: Optional[StrictStr]
40
- expires_at: Optional[datetime] = Field(alias="expiresAt")
41
- id: StrictStr
42
- key: StrictStr
43
- password: Optional[StrictStr]
44
- show_metadata: StrictBool = Field(alias="showMetadata")
45
- slug: Optional[StrictStr]
46
- token: Optional[StrictStr] = None
47
- type: SharedLinkType
48
- user_id: StrictStr = Field(alias="userId")
40
+ created_at: datetime = Field(description="Creation date", alias="createdAt")
41
+ description: Optional[StrictStr] = Field(description="Link description")
42
+ expires_at: Optional[datetime] = Field(
43
+ description="Expiration date", alias="expiresAt"
44
+ )
45
+ id: StrictStr = Field(description="Shared link ID")
46
+ key: StrictStr = Field(description="Encryption key (base64url)")
47
+ password: Optional[StrictStr] = Field(description="Has password")
48
+ show_metadata: StrictBool = Field(description="Show metadata", alias="showMetadata")
49
+ slug: Optional[StrictStr] = Field(description="Custom URL slug")
50
+ token: Optional[StrictStr] = Field(default=None, description="Access token")
51
+ type: SharedLinkType = Field(description="Shared link type")
52
+ user_id: StrictStr = Field(description="Owner user ID", alias="userId")
49
53
  __properties: ClassVar[List[str]] = [
50
54
  "album",
51
55
  "allowDownload",
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -19,7 +19,7 @@ from typing_extensions import Self
19
19
 
20
20
  class SharedLinkType(str, Enum):
21
21
  """
22
- SharedLinkType
22
+ Shared link type
23
23
  """
24
24
 
25
25
  """
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -27,8 +27,10 @@ class SharedLinksResponse(BaseModel):
27
27
  SharedLinksResponse
28
28
  """ # noqa: E501
29
29
 
30
- enabled: StrictBool
31
- sidebar_web: StrictBool = Field(alias="sidebarWeb")
30
+ enabled: StrictBool = Field(description="Whether shared links are enabled")
31
+ sidebar_web: StrictBool = Field(
32
+ description="Whether shared links appear in web sidebar", alias="sidebarWeb"
33
+ )
32
34
  __properties: ClassVar[List[str]] = ["enabled", "sidebarWeb"]
33
35
 
34
36
  model_config = ConfigDict(
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -27,8 +27,14 @@ class SharedLinksUpdate(BaseModel):
27
27
  SharedLinksUpdate
28
28
  """ # noqa: E501
29
29
 
30
- enabled: Optional[StrictBool] = None
31
- sidebar_web: Optional[StrictBool] = Field(default=None, alias="sidebarWeb")
30
+ enabled: Optional[StrictBool] = Field(
31
+ default=None, description="Whether shared links are enabled"
32
+ )
33
+ sidebar_web: Optional[StrictBool] = Field(
34
+ default=None,
35
+ description="Whether shared links appear in web sidebar",
36
+ alias="sidebarWeb",
37
+ )
32
38
  __properties: ClassVar[List[str]] = ["enabled", "sidebarWeb"]
33
39
 
34
40
  model_config = ConfigDict(
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -16,7 +16,7 @@ import pprint
16
16
  import re # noqa: F401
17
17
  import json
18
18
 
19
- from pydantic import BaseModel, ConfigDict, StrictStr
19
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
20
20
  from typing import Any, ClassVar, Dict, List
21
21
  from typing import Optional, Set
22
22
  from typing_extensions import Self
@@ -27,9 +27,9 @@ class SignUpDto(BaseModel):
27
27
  SignUpDto
28
28
  """ # noqa: E501
29
29
 
30
- email: StrictStr
31
- name: StrictStr
32
- password: StrictStr
30
+ email: StrictStr = Field(description="User email")
31
+ name: StrictStr = Field(description="User name")
32
+ password: StrictStr = Field(description="User password")
33
33
  __properties: ClassVar[List[str]] = ["email", "name", "password"]
34
34
 
35
35
  model_config = ConfigDict(
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -32,56 +32,122 @@ class SmartSearchDto(BaseModel):
32
32
  SmartSearchDto
33
33
  """ # noqa: E501
34
34
 
35
- album_ids: Optional[List[UUID]] = Field(default=None, alias="albumIds")
36
- city: Optional[StrictStr] = None
37
- country: Optional[StrictStr] = None
38
- created_after: Optional[datetime] = Field(default=None, alias="createdAfter")
39
- created_before: Optional[datetime] = Field(default=None, alias="createdBefore")
40
- device_id: Optional[StrictStr] = Field(default=None, alias="deviceId")
41
- is_encoded: Optional[StrictBool] = Field(default=None, alias="isEncoded")
42
- is_favorite: Optional[StrictBool] = Field(default=None, alias="isFavorite")
43
- is_motion: Optional[StrictBool] = Field(default=None, alias="isMotion")
44
- is_not_in_album: Optional[StrictBool] = Field(default=None, alias="isNotInAlbum")
45
- is_offline: Optional[StrictBool] = Field(default=None, alias="isOffline")
46
- language: Optional[StrictStr] = None
47
- lens_model: Optional[StrictStr] = Field(default=None, alias="lensModel")
48
- library_id: Optional[UUID] = Field(default=None, alias="libraryId")
49
- make: Optional[StrictStr] = None
50
- model: Optional[StrictStr] = None
51
- ocr: Optional[StrictStr] = None
35
+ album_ids: Optional[List[UUID]] = Field(
36
+ default=None, description="Filter by album IDs", alias="albumIds"
37
+ )
38
+ city: Optional[StrictStr] = Field(default=None, description="Filter by city name")
39
+ country: Optional[StrictStr] = Field(
40
+ default=None, description="Filter by country name"
41
+ )
42
+ created_after: Optional[datetime] = Field(
43
+ default=None,
44
+ description="Filter by creation date (after)",
45
+ alias="createdAfter",
46
+ )
47
+ created_before: Optional[datetime] = Field(
48
+ default=None,
49
+ description="Filter by creation date (before)",
50
+ alias="createdBefore",
51
+ )
52
+ device_id: Optional[StrictStr] = Field(
53
+ default=None, description="Device ID to filter by", alias="deviceId"
54
+ )
55
+ is_encoded: Optional[StrictBool] = Field(
56
+ default=None, description="Filter by encoded status", alias="isEncoded"
57
+ )
58
+ is_favorite: Optional[StrictBool] = Field(
59
+ default=None, description="Filter by favorite status", alias="isFavorite"
60
+ )
61
+ is_motion: Optional[StrictBool] = Field(
62
+ default=None, description="Filter by motion photo status", alias="isMotion"
63
+ )
64
+ is_not_in_album: Optional[StrictBool] = Field(
65
+ default=None, description="Filter assets not in any album", alias="isNotInAlbum"
66
+ )
67
+ is_offline: Optional[StrictBool] = Field(
68
+ default=None, description="Filter by offline status", alias="isOffline"
69
+ )
70
+ language: Optional[StrictStr] = Field(
71
+ default=None, description="Search language code"
72
+ )
73
+ lens_model: Optional[StrictStr] = Field(
74
+ default=None, description="Filter by lens model", alias="lensModel"
75
+ )
76
+ library_id: Optional[UUID] = Field(
77
+ default=None, description="Library ID to filter by", alias="libraryId"
78
+ )
79
+ make: Optional[StrictStr] = Field(default=None, description="Filter by camera make")
80
+ model: Optional[StrictStr] = Field(
81
+ default=None, description="Filter by camera model"
82
+ )
83
+ ocr: Optional[StrictStr] = Field(
84
+ default=None, description="Filter by OCR text content"
85
+ )
52
86
  page: Optional[
53
87
  Union[
54
88
  Annotated[float, Field(strict=True, ge=1)],
55
89
  Annotated[int, Field(strict=True, ge=1)],
56
90
  ]
57
- ] = None
58
- person_ids: Optional[List[UUID]] = Field(default=None, alias="personIds")
59
- query: Optional[StrictStr] = None
60
- query_asset_id: Optional[UUID] = Field(default=None, alias="queryAssetId")
91
+ ] = Field(default=None, description="Page number")
92
+ person_ids: Optional[List[UUID]] = Field(
93
+ default=None, description="Filter by person IDs", alias="personIds"
94
+ )
95
+ query: Optional[StrictStr] = Field(
96
+ default=None, description="Natural language search query"
97
+ )
98
+ query_asset_id: Optional[UUID] = Field(
99
+ default=None,
100
+ description="Asset ID to use as search reference",
101
+ alias="queryAssetId",
102
+ )
61
103
  rating: Optional[
62
104
  Union[
63
105
  Annotated[float, Field(le=5, strict=True, ge=-1)],
64
106
  Annotated[int, Field(le=5, strict=True, ge=-1)],
65
107
  ]
66
- ] = None
108
+ ] = Field(default=None, description="Filter by rating")
67
109
  size: Optional[
68
110
  Union[
69
111
  Annotated[float, Field(le=1000, strict=True, ge=1)],
70
112
  Annotated[int, Field(le=1000, strict=True, ge=1)],
71
113
  ]
72
- ] = None
73
- state: Optional[StrictStr] = None
74
- tag_ids: Optional[List[UUID]] = Field(default=None, alias="tagIds")
75
- taken_after: Optional[datetime] = Field(default=None, alias="takenAfter")
76
- taken_before: Optional[datetime] = Field(default=None, alias="takenBefore")
77
- trashed_after: Optional[datetime] = Field(default=None, alias="trashedAfter")
78
- trashed_before: Optional[datetime] = Field(default=None, alias="trashedBefore")
79
- type: Optional[AssetTypeEnum] = None
80
- updated_after: Optional[datetime] = Field(default=None, alias="updatedAfter")
81
- updated_before: Optional[datetime] = Field(default=None, alias="updatedBefore")
82
- visibility: Optional[AssetVisibility] = None
83
- with_deleted: Optional[StrictBool] = Field(default=None, alias="withDeleted")
84
- with_exif: Optional[StrictBool] = Field(default=None, alias="withExif")
114
+ ] = Field(default=None, description="Number of results to return")
115
+ state: Optional[StrictStr] = Field(
116
+ default=None, description="Filter by state/province name"
117
+ )
118
+ tag_ids: Optional[List[UUID]] = Field(
119
+ default=None, description="Filter by tag IDs", alias="tagIds"
120
+ )
121
+ taken_after: Optional[datetime] = Field(
122
+ default=None, description="Filter by taken date (after)", alias="takenAfter"
123
+ )
124
+ taken_before: Optional[datetime] = Field(
125
+ default=None, description="Filter by taken date (before)", alias="takenBefore"
126
+ )
127
+ trashed_after: Optional[datetime] = Field(
128
+ default=None, description="Filter by trash date (after)", alias="trashedAfter"
129
+ )
130
+ trashed_before: Optional[datetime] = Field(
131
+ default=None, description="Filter by trash date (before)", alias="trashedBefore"
132
+ )
133
+ type: Optional[AssetTypeEnum] = Field(default=None, description="Asset type filter")
134
+ updated_after: Optional[datetime] = Field(
135
+ default=None, description="Filter by update date (after)", alias="updatedAfter"
136
+ )
137
+ updated_before: Optional[datetime] = Field(
138
+ default=None,
139
+ description="Filter by update date (before)",
140
+ alias="updatedBefore",
141
+ )
142
+ visibility: Optional[AssetVisibility] = Field(
143
+ default=None, description="Filter by visibility"
144
+ )
145
+ with_deleted: Optional[StrictBool] = Field(
146
+ default=None, description="Include deleted assets", alias="withDeleted"
147
+ )
148
+ with_exif: Optional[StrictBool] = Field(
149
+ default=None, description="Include EXIF data in response", alias="withExif"
150
+ )
85
151
  __properties: ClassVar[List[str]] = [
86
152
  "albumIds",
87
153
  "city",
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -19,7 +19,7 @@ from typing_extensions import Self
19
19
 
20
20
  class SourceType(str, Enum):
21
21
  """
22
- SourceType
22
+ Face detection source type
23
23
  """
24
24
 
25
25
  """
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -30,7 +30,7 @@ class StackCreateDto(BaseModel):
30
30
  """ # noqa: E501
31
31
 
32
32
  asset_ids: Annotated[List[UUID], Field(min_length=2)] = Field(
33
- description="first asset becomes the primary", alias="assetIds"
33
+ description="Asset IDs (first becomes primary, min 2)", alias="assetIds"
34
34
  )
35
35
  __properties: ClassVar[List[str]] = ["assetIds"]
36
36
 
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -28,9 +28,11 @@ class StackResponseDto(BaseModel):
28
28
  StackResponseDto
29
29
  """ # noqa: E501
30
30
 
31
- assets: List[AssetResponseDto]
32
- id: StrictStr
33
- primary_asset_id: StrictStr = Field(alias="primaryAssetId")
31
+ assets: List[AssetResponseDto] = Field(description="Stack assets")
32
+ id: StrictStr = Field(description="Stack ID")
33
+ primary_asset_id: StrictStr = Field(
34
+ description="Primary asset ID", alias="primaryAssetId"
35
+ )
34
36
  __properties: ClassVar[List[str]] = ["assets", "id", "primaryAssetId"]
35
37
 
36
38
  model_config = ConfigDict(
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -28,7 +28,9 @@ class StackUpdateDto(BaseModel):
28
28
  StackUpdateDto
29
29
  """ # noqa: E501
30
30
 
31
- primary_asset_id: Optional[UUID] = Field(default=None, alias="primaryAssetId")
31
+ primary_asset_id: Optional[UUID] = Field(
32
+ default=None, description="Primary asset ID", alias="primaryAssetId"
33
+ )
32
34
  __properties: ClassVar[List[str]] = ["primaryAssetId"]
33
35
 
34
36
  model_config = ConfigDict(
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -32,40 +32,96 @@ class StatisticsSearchDto(BaseModel):
32
32
  StatisticsSearchDto
33
33
  """ # noqa: E501
34
34
 
35
- album_ids: Optional[List[UUID]] = Field(default=None, alias="albumIds")
36
- city: Optional[StrictStr] = None
37
- country: Optional[StrictStr] = None
38
- created_after: Optional[datetime] = Field(default=None, alias="createdAfter")
39
- created_before: Optional[datetime] = Field(default=None, alias="createdBefore")
40
- description: Optional[StrictStr] = None
41
- device_id: Optional[StrictStr] = Field(default=None, alias="deviceId")
42
- is_encoded: Optional[StrictBool] = Field(default=None, alias="isEncoded")
43
- is_favorite: Optional[StrictBool] = Field(default=None, alias="isFavorite")
44
- is_motion: Optional[StrictBool] = Field(default=None, alias="isMotion")
45
- is_not_in_album: Optional[StrictBool] = Field(default=None, alias="isNotInAlbum")
46
- is_offline: Optional[StrictBool] = Field(default=None, alias="isOffline")
47
- lens_model: Optional[StrictStr] = Field(default=None, alias="lensModel")
48
- library_id: Optional[UUID] = Field(default=None, alias="libraryId")
49
- make: Optional[StrictStr] = None
50
- model: Optional[StrictStr] = None
51
- ocr: Optional[StrictStr] = None
52
- person_ids: Optional[List[UUID]] = Field(default=None, alias="personIds")
35
+ album_ids: Optional[List[UUID]] = Field(
36
+ default=None, description="Filter by album IDs", alias="albumIds"
37
+ )
38
+ city: Optional[StrictStr] = Field(default=None, description="Filter by city name")
39
+ country: Optional[StrictStr] = Field(
40
+ default=None, description="Filter by country name"
41
+ )
42
+ created_after: Optional[datetime] = Field(
43
+ default=None,
44
+ description="Filter by creation date (after)",
45
+ alias="createdAfter",
46
+ )
47
+ created_before: Optional[datetime] = Field(
48
+ default=None,
49
+ description="Filter by creation date (before)",
50
+ alias="createdBefore",
51
+ )
52
+ description: Optional[StrictStr] = Field(
53
+ default=None, description="Filter by description text"
54
+ )
55
+ device_id: Optional[StrictStr] = Field(
56
+ default=None, description="Device ID to filter by", alias="deviceId"
57
+ )
58
+ is_encoded: Optional[StrictBool] = Field(
59
+ default=None, description="Filter by encoded status", alias="isEncoded"
60
+ )
61
+ is_favorite: Optional[StrictBool] = Field(
62
+ default=None, description="Filter by favorite status", alias="isFavorite"
63
+ )
64
+ is_motion: Optional[StrictBool] = Field(
65
+ default=None, description="Filter by motion photo status", alias="isMotion"
66
+ )
67
+ is_not_in_album: Optional[StrictBool] = Field(
68
+ default=None, description="Filter assets not in any album", alias="isNotInAlbum"
69
+ )
70
+ is_offline: Optional[StrictBool] = Field(
71
+ default=None, description="Filter by offline status", alias="isOffline"
72
+ )
73
+ lens_model: Optional[StrictStr] = Field(
74
+ default=None, description="Filter by lens model", alias="lensModel"
75
+ )
76
+ library_id: Optional[UUID] = Field(
77
+ default=None, description="Library ID to filter by", alias="libraryId"
78
+ )
79
+ make: Optional[StrictStr] = Field(default=None, description="Filter by camera make")
80
+ model: Optional[StrictStr] = Field(
81
+ default=None, description="Filter by camera model"
82
+ )
83
+ ocr: Optional[StrictStr] = Field(
84
+ default=None, description="Filter by OCR text content"
85
+ )
86
+ person_ids: Optional[List[UUID]] = Field(
87
+ default=None, description="Filter by person IDs", alias="personIds"
88
+ )
53
89
  rating: Optional[
54
90
  Union[
55
91
  Annotated[float, Field(le=5, strict=True, ge=-1)],
56
92
  Annotated[int, Field(le=5, strict=True, ge=-1)],
57
93
  ]
58
- ] = None
59
- state: Optional[StrictStr] = None
60
- tag_ids: Optional[List[UUID]] = Field(default=None, alias="tagIds")
61
- taken_after: Optional[datetime] = Field(default=None, alias="takenAfter")
62
- taken_before: Optional[datetime] = Field(default=None, alias="takenBefore")
63
- trashed_after: Optional[datetime] = Field(default=None, alias="trashedAfter")
64
- trashed_before: Optional[datetime] = Field(default=None, alias="trashedBefore")
65
- type: Optional[AssetTypeEnum] = None
66
- updated_after: Optional[datetime] = Field(default=None, alias="updatedAfter")
67
- updated_before: Optional[datetime] = Field(default=None, alias="updatedBefore")
68
- visibility: Optional[AssetVisibility] = None
94
+ ] = Field(default=None, description="Filter by rating")
95
+ state: Optional[StrictStr] = Field(
96
+ default=None, description="Filter by state/province name"
97
+ )
98
+ tag_ids: Optional[List[UUID]] = Field(
99
+ default=None, description="Filter by tag IDs", alias="tagIds"
100
+ )
101
+ taken_after: Optional[datetime] = Field(
102
+ default=None, description="Filter by taken date (after)", alias="takenAfter"
103
+ )
104
+ taken_before: Optional[datetime] = Field(
105
+ default=None, description="Filter by taken date (before)", alias="takenBefore"
106
+ )
107
+ trashed_after: Optional[datetime] = Field(
108
+ default=None, description="Filter by trash date (after)", alias="trashedAfter"
109
+ )
110
+ trashed_before: Optional[datetime] = Field(
111
+ default=None, description="Filter by trash date (before)", alias="trashedBefore"
112
+ )
113
+ type: Optional[AssetTypeEnum] = Field(default=None, description="Asset type filter")
114
+ updated_after: Optional[datetime] = Field(
115
+ default=None, description="Filter by update date (after)", alias="updatedAfter"
116
+ )
117
+ updated_before: Optional[datetime] = Field(
118
+ default=None,
119
+ description="Filter by update date (before)",
120
+ alias="updatedBefore",
121
+ )
122
+ visibility: Optional[AssetVisibility] = Field(
123
+ default=None, description="Filter by visibility"
124
+ )
69
125
  __properties: ClassVar[List[str]] = [
70
126
  "albumIds",
71
127
  "city",
@@ -0,0 +1,38 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Immich
5
+
6
+ Immich API
7
+
8
+ The version of the OpenAPI document: 2.5.2
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ from __future__ import annotations
15
+ import json
16
+ from enum import Enum
17
+ from typing_extensions import Self
18
+
19
+
20
+ class StorageFolder(str, Enum):
21
+ """
22
+ Storage folder
23
+ """
24
+
25
+ """
26
+ allowed enum values
27
+ """
28
+ ENCODED_MINUS_VIDEO = "encoded-video"
29
+ LIBRARY = "library"
30
+ UPLOAD = "upload"
31
+ PROFILE = "profile"
32
+ THUMBS = "thumbs"
33
+ BACKUPS = "backups"
34
+
35
+ @classmethod
36
+ def from_json(cls, json_str: str) -> Self:
37
+ """Create an instance of StorageFolder from a JSON string"""
38
+ return cls(json.loads(json_str))
@@ -5,7 +5,7 @@ Immich
5
5
 
6
6
  Immich API
7
7
 
8
- The version of the OpenAPI document: 2.4.1
8
+ The version of the OpenAPI document: 2.5.2
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
10
10
 
11
11
  Do not edit the class manually.
@@ -16,7 +16,7 @@ import pprint
16
16
  import re # noqa: F401
17
17
  import json
18
18
 
19
- from pydantic import BaseModel, ConfigDict
19
+ from pydantic import BaseModel, ConfigDict, Field
20
20
  from typing import Any, ClassVar, Dict, List, Optional
21
21
  from immichpy.client.generated.models.sync_entity_type import SyncEntityType
22
22
  from typing import Set
@@ -28,7 +28,9 @@ class SyncAckDeleteDto(BaseModel):
28
28
  SyncAckDeleteDto
29
29
  """ # noqa: E501
30
30
 
31
- types: Optional[List[SyncEntityType]] = None
31
+ types: Optional[List[SyncEntityType]] = Field(
32
+ default=None, description="Sync entity types to delete acks for"
33
+ )
32
34
  __properties: ClassVar[List[str]] = ["types"]
33
35
 
34
36
  model_config = ConfigDict(