immich 1.2.1__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 (387) hide show
  1. immich/.openapi-generator/FILES +372 -0
  2. immich/.openapi-generator/VERSION +1 -0
  3. immich/.openapi-generator-ignore +48 -0
  4. immich/__init__.py +3 -0
  5. immich/client/__init__.py +1162 -0
  6. immich/client/api/__init__.py +39 -0
  7. immich/client/api/activities_api.py +1092 -0
  8. immich/client/api/albums_api.py +3228 -0
  9. immich/client/api/api_keys_api.py +1484 -0
  10. immich/client/api/assets_api.py +5834 -0
  11. immich/client/api/authentication_admin_api.py +254 -0
  12. immich/client/api/authentication_api.py +3881 -0
  13. immich/client/api/deprecated_api.py +2199 -0
  14. immich/client/api/download_api.py +603 -0
  15. immich/client/api/duplicates_api.py +743 -0
  16. immich/client/api/faces_api.py +1053 -0
  17. immich/client/api/jobs_api.py +783 -0
  18. immich/client/api/libraries_api.py +2004 -0
  19. immich/client/api/maintenance_admin_api.py +533 -0
  20. immich/client/api/map_api.py +640 -0
  21. immich/client/api/memories_api.py +2250 -0
  22. immich/client/api/notifications_admin_api.py +808 -0
  23. immich/client/api/notifications_api.py +1564 -0
  24. immich/client/api/partners_api.py +1278 -0
  25. immich/client/api/people_api.py +2905 -0
  26. immich/client/api/plugins_api.py +730 -0
  27. immich/client/api/queues_api.py +1292 -0
  28. immich/client/api/search_api.py +3198 -0
  29. immich/client/api/server_api.py +3466 -0
  30. immich/client/api/sessions_api.py +1472 -0
  31. immich/client/api/shared_links_api.py +2177 -0
  32. immich/client/api/stacks_api.py +1769 -0
  33. immich/client/api/sync_api.py +1512 -0
  34. immich/client/api/system_config_api.py +967 -0
  35. immich/client/api/system_metadata_api.py +964 -0
  36. immich/client/api/tags_api.py +2296 -0
  37. immich/client/api/timeline_api.py +1193 -0
  38. immich/client/api/trash_api.py +739 -0
  39. immich/client/api/users_admin_api.py +2607 -0
  40. immich/client/api/users_api.py +3577 -0
  41. immich/client/api/views_api.py +503 -0
  42. immich/client/api/workflows_api.py +1257 -0
  43. immich/client/api_client.py +756 -0
  44. immich/client/api_response.py +20 -0
  45. immich/client/configuration.py +638 -0
  46. immich/client/exceptions.py +222 -0
  47. immich/client/models/__init__.py +424 -0
  48. immich/client/models/activity_create_dto.py +94 -0
  49. immich/client/models/activity_response_dto.py +121 -0
  50. immich/client/models/activity_statistics_response_dto.py +85 -0
  51. immich/client/models/add_users_dto.py +101 -0
  52. immich/client/models/admin_onboarding_update_dto.py +82 -0
  53. immich/client/models/album_response_dto.py +199 -0
  54. immich/client/models/album_statistics_response_dto.py +90 -0
  55. immich/client/models/album_user_add_dto.py +87 -0
  56. immich/client/models/album_user_create_dto.py +87 -0
  57. immich/client/models/album_user_response_dto.py +95 -0
  58. immich/client/models/album_user_role.py +34 -0
  59. immich/client/models/albums_add_assets_dto.py +86 -0
  60. immich/client/models/albums_add_assets_response_dto.py +86 -0
  61. immich/client/models/albums_response.py +83 -0
  62. immich/client/models/albums_update.py +85 -0
  63. immich/client/models/api_key_create_dto.py +87 -0
  64. immich/client/models/api_key_create_response_dto.py +94 -0
  65. immich/client/models/api_key_response_dto.py +102 -0
  66. immich/client/models/api_key_update_dto.py +87 -0
  67. immich/client/models/asset_bulk_delete_dto.py +84 -0
  68. immich/client/models/asset_bulk_update_dto.py +143 -0
  69. immich/client/models/asset_bulk_upload_check_dto.py +98 -0
  70. immich/client/models/asset_bulk_upload_check_item.py +85 -0
  71. immich/client/models/asset_bulk_upload_check_response_dto.py +101 -0
  72. immich/client/models/asset_bulk_upload_check_result.py +126 -0
  73. immich/client/models/asset_copy_dto.py +113 -0
  74. immich/client/models/asset_delta_sync_dto.py +87 -0
  75. immich/client/models/asset_delta_sync_response_dto.py +102 -0
  76. immich/client/models/asset_face_create_dto.py +110 -0
  77. immich/client/models/asset_face_delete_dto.py +82 -0
  78. immich/client/models/asset_face_response_dto.py +125 -0
  79. immich/client/models/asset_face_update_dto.py +96 -0
  80. immich/client/models/asset_face_update_item.py +86 -0
  81. immich/client/models/asset_face_without_person_response_dto.py +111 -0
  82. immich/client/models/asset_full_sync_dto.py +95 -0
  83. immich/client/models/asset_ids_dto.py +83 -0
  84. immich/client/models/asset_ids_response_dto.py +109 -0
  85. immich/client/models/asset_job_name.py +36 -0
  86. immich/client/models/asset_jobs_dto.py +87 -0
  87. immich/client/models/asset_media_response_dto.py +84 -0
  88. immich/client/models/asset_media_size.py +35 -0
  89. immich/client/models/asset_media_status.py +35 -0
  90. immich/client/models/asset_metadata_key.py +33 -0
  91. immich/client/models/asset_metadata_response_dto.py +92 -0
  92. immich/client/models/asset_metadata_upsert_dto.py +101 -0
  93. immich/client/models/asset_metadata_upsert_item_dto.py +84 -0
  94. immich/client/models/asset_ocr_response_dto.py +145 -0
  95. immich/client/models/asset_order.py +34 -0
  96. immich/client/models/asset_response_dto.py +291 -0
  97. immich/client/models/asset_stack_response_dto.py +90 -0
  98. immich/client/models/asset_stats_response_dto.py +90 -0
  99. immich/client/models/asset_type_enum.py +36 -0
  100. immich/client/models/asset_visibility.py +36 -0
  101. immich/client/models/audio_codec.py +36 -0
  102. immich/client/models/auth_status_response_dto.py +100 -0
  103. immich/client/models/avatar_update.py +83 -0
  104. immich/client/models/bulk_id_error_reason.py +36 -0
  105. immich/client/models/bulk_id_response_dto.py +102 -0
  106. immich/client/models/bulk_ids_dto.py +83 -0
  107. immich/client/models/cast_response.py +88 -0
  108. immich/client/models/cast_update.py +82 -0
  109. immich/client/models/change_password_dto.py +101 -0
  110. immich/client/models/check_existing_assets_dto.py +91 -0
  111. immich/client/models/check_existing_assets_response_dto.py +82 -0
  112. immich/client/models/clip_config.py +85 -0
  113. immich/client/models/colorspace.py +34 -0
  114. immich/client/models/contributor_count_response_dto.py +85 -0
  115. immich/client/models/cq_mode.py +35 -0
  116. immich/client/models/create_album_dto.py +112 -0
  117. immich/client/models/create_library_dto.py +103 -0
  118. immich/client/models/create_profile_image_response_dto.py +95 -0
  119. immich/client/models/database_backup_config.py +94 -0
  120. immich/client/models/download_archive_info.py +85 -0
  121. immich/client/models/download_info_dto.py +96 -0
  122. immich/client/models/download_response.py +90 -0
  123. immich/client/models/download_response_dto.py +100 -0
  124. immich/client/models/download_update.py +93 -0
  125. immich/client/models/duplicate_detection_config.py +89 -0
  126. immich/client/models/duplicate_response_dto.py +98 -0
  127. immich/client/models/email_notifications_response.py +90 -0
  128. immich/client/models/email_notifications_update.py +90 -0
  129. immich/client/models/exif_response_dto.py +284 -0
  130. immich/client/models/face_dto.py +83 -0
  131. immich/client/models/facial_recognition_config.py +107 -0
  132. immich/client/models/folders_response.py +92 -0
  133. immich/client/models/folders_update.py +85 -0
  134. immich/client/models/image_format.py +34 -0
  135. immich/client/models/job_create_dto.py +83 -0
  136. immich/client/models/job_name.py +87 -0
  137. immich/client/models/job_settings_dto.py +83 -0
  138. immich/client/models/library_response_dto.py +118 -0
  139. immich/client/models/library_stats_response_dto.py +92 -0
  140. immich/client/models/license_key_dto.py +98 -0
  141. immich/client/models/license_response_dto.py +101 -0
  142. immich/client/models/log_level.py +38 -0
  143. immich/client/models/login_credential_dto.py +85 -0
  144. immich/client/models/login_response_dto.py +109 -0
  145. immich/client/models/logout_response_dto.py +85 -0
  146. immich/client/models/machine_learning_availability_checks_dto.py +90 -0
  147. immich/client/models/maintenance_action.py +34 -0
  148. immich/client/models/maintenance_auth_dto.py +82 -0
  149. immich/client/models/maintenance_login_dto.py +82 -0
  150. immich/client/models/manual_job_name.py +38 -0
  151. immich/client/models/map_marker_response_dto.py +111 -0
  152. immich/client/models/map_reverse_geocode_response_dto.py +105 -0
  153. immich/client/models/memories_response.py +92 -0
  154. immich/client/models/memories_update.py +86 -0
  155. immich/client/models/memory_create_dto.py +112 -0
  156. immich/client/models/memory_response_dto.py +142 -0
  157. immich/client/models/memory_search_order.py +35 -0
  158. immich/client/models/memory_statistics_response_dto.py +82 -0
  159. immich/client/models/memory_type.py +33 -0
  160. immich/client/models/memory_update_dto.py +91 -0
  161. immich/client/models/merge_person_dto.py +83 -0
  162. immich/client/models/metadata_search_dto.py +277 -0
  163. immich/client/models/notification_create_dto.py +120 -0
  164. immich/client/models/notification_delete_all_dto.py +83 -0
  165. immich/client/models/notification_dto.py +112 -0
  166. immich/client/models/notification_level.py +36 -0
  167. immich/client/models/notification_type.py +38 -0
  168. immich/client/models/notification_update_all_dto.py +90 -0
  169. immich/client/models/notification_update_dto.py +88 -0
  170. immich/client/models/o_auth_authorize_response_dto.py +82 -0
  171. immich/client/models/o_auth_callback_dto.py +90 -0
  172. immich/client/models/o_auth_config_dto.py +90 -0
  173. immich/client/models/o_auth_token_endpoint_auth_method.py +34 -0
  174. immich/client/models/ocr_config.py +109 -0
  175. immich/client/models/on_this_day_dto.py +86 -0
  176. immich/client/models/onboarding_dto.py +82 -0
  177. immich/client/models/onboarding_response_dto.py +82 -0
  178. immich/client/models/partner_create_dto.py +83 -0
  179. immich/client/models/partner_direction.py +34 -0
  180. immich/client/models/partner_response_dto.py +108 -0
  181. immich/client/models/partner_update_dto.py +82 -0
  182. immich/client/models/people_response.py +92 -0
  183. immich/client/models/people_response_dto.py +104 -0
  184. immich/client/models/people_update.py +85 -0
  185. immich/client/models/people_update_dto.py +96 -0
  186. immich/client/models/people_update_item.py +128 -0
  187. immich/client/models/permission.py +177 -0
  188. immich/client/models/person_create_dto.py +117 -0
  189. immich/client/models/person_response_dto.py +115 -0
  190. immich/client/models/person_statistics_response_dto.py +82 -0
  191. immich/client/models/person_update_dto.py +125 -0
  192. immich/client/models/person_with_faces_response_dto.py +133 -0
  193. immich/client/models/pin_code_change_dto.py +90 -0
  194. immich/client/models/pin_code_reset_dto.py +85 -0
  195. immich/client/models/pin_code_setup_dto.py +82 -0
  196. immich/client/models/places_response_dto.py +100 -0
  197. immich/client/models/plugin_action_response_dto.py +112 -0
  198. immich/client/models/plugin_context_type.py +35 -0
  199. immich/client/models/plugin_filter_response_dto.py +112 -0
  200. immich/client/models/plugin_response_dto.py +139 -0
  201. immich/client/models/plugin_trigger_response_dto.py +87 -0
  202. immich/client/models/plugin_trigger_type.py +34 -0
  203. immich/client/models/purchase_response.py +88 -0
  204. immich/client/models/purchase_update.py +92 -0
  205. immich/client/models/queue_command.py +37 -0
  206. immich/client/models/queue_command_dto.py +86 -0
  207. immich/client/models/queue_delete_dto.py +85 -0
  208. immich/client/models/queue_job_response_dto.py +93 -0
  209. immich/client/models/queue_job_status.py +38 -0
  210. immich/client/models/queue_name.py +49 -0
  211. immich/client/models/queue_response_dto.py +97 -0
  212. immich/client/models/queue_response_legacy_dto.py +100 -0
  213. immich/client/models/queue_statistics_dto.py +103 -0
  214. immich/client/models/queue_status_legacy_dto.py +85 -0
  215. immich/client/models/queue_update_dto.py +82 -0
  216. immich/client/models/queues_response_legacy_dto.py +242 -0
  217. immich/client/models/random_search_dto.py +234 -0
  218. immich/client/models/ratings_response.py +84 -0
  219. immich/client/models/ratings_update.py +82 -0
  220. immich/client/models/reaction_level.py +34 -0
  221. immich/client/models/reaction_type.py +34 -0
  222. immich/client/models/reverse_geocoding_state_response_dto.py +101 -0
  223. immich/client/models/search_album_response_dto.py +114 -0
  224. immich/client/models/search_asset_response_dto.py +127 -0
  225. immich/client/models/search_explore_item.py +94 -0
  226. immich/client/models/search_explore_response_dto.py +98 -0
  227. immich/client/models/search_facet_count_response_dto.py +85 -0
  228. immich/client/models/search_facet_response_dto.py +103 -0
  229. immich/client/models/search_response_dto.py +100 -0
  230. immich/client/models/search_statistics_response_dto.py +82 -0
  231. immich/client/models/search_suggestion_type.py +38 -0
  232. immich/client/models/server_about_response_dto.py +156 -0
  233. immich/client/models/server_apk_links_dto.py +97 -0
  234. immich/client/models/server_config_dto.py +118 -0
  235. immich/client/models/server_features_dto.py +130 -0
  236. immich/client/models/server_media_types_response_dto.py +90 -0
  237. immich/client/models/server_ping_response.py +87 -0
  238. immich/client/models/server_stats_response_dto.py +119 -0
  239. immich/client/models/server_storage_response_dto.py +108 -0
  240. immich/client/models/server_theme_dto.py +82 -0
  241. immich/client/models/server_version_history_response_dto.py +91 -0
  242. immich/client/models/server_version_response_dto.py +90 -0
  243. immich/client/models/session_create_dto.py +96 -0
  244. immich/client/models/session_create_response_dto.py +120 -0
  245. immich/client/models/session_response_dto.py +117 -0
  246. immich/client/models/session_unlock_dto.py +85 -0
  247. immich/client/models/session_update_dto.py +84 -0
  248. immich/client/models/set_maintenance_mode_dto.py +83 -0
  249. immich/client/models/shared_link_create_dto.py +142 -0
  250. immich/client/models/shared_link_edit_dto.py +134 -0
  251. immich/client/models/shared_link_response_dto.py +173 -0
  252. immich/client/models/shared_link_type.py +34 -0
  253. immich/client/models/shared_links_response.py +92 -0
  254. immich/client/models/shared_links_update.py +85 -0
  255. immich/client/models/sign_up_dto.py +90 -0
  256. immich/client/models/smart_search_dto.py +245 -0
  257. immich/client/models/source_type.py +35 -0
  258. immich/client/models/stack_create_dto.py +86 -0
  259. immich/client/models/stack_response_dto.py +100 -0
  260. immich/client/models/stack_update_dto.py +83 -0
  261. immich/client/models/statistics_search_dto.py +217 -0
  262. immich/client/models/sync_ack_delete_dto.py +83 -0
  263. immich/client/models/sync_ack_dto.py +84 -0
  264. immich/client/models/sync_ack_set_dto.py +83 -0
  265. immich/client/models/sync_album_delete_v1.py +82 -0
  266. immich/client/models/sync_album_to_asset_delete_v1.py +85 -0
  267. immich/client/models/sync_album_to_asset_v1.py +85 -0
  268. immich/client/models/sync_album_user_delete_v1.py +85 -0
  269. immich/client/models/sync_album_user_v1.py +91 -0
  270. immich/client/models/sync_album_v1.py +122 -0
  271. immich/client/models/sync_asset_delete_v1.py +82 -0
  272. immich/client/models/sync_asset_exif_v1.py +296 -0
  273. immich/client/models/sync_asset_face_delete_v1.py +82 -0
  274. immich/client/models/sync_asset_face_v1.py +120 -0
  275. immich/client/models/sync_asset_metadata_delete_v1.py +86 -0
  276. immich/client/models/sync_asset_metadata_v1.py +91 -0
  277. immich/client/models/sync_asset_v1.py +187 -0
  278. immich/client/models/sync_auth_user_v1.py +154 -0
  279. immich/client/models/sync_entity_type.py +79 -0
  280. immich/client/models/sync_memory_asset_delete_v1.py +85 -0
  281. immich/client/models/sync_memory_asset_v1.py +85 -0
  282. immich/client/models/sync_memory_delete_v1.py +82 -0
  283. immich/client/models/sync_memory_v1.py +143 -0
  284. immich/client/models/sync_partner_delete_v1.py +88 -0
  285. immich/client/models/sync_partner_v1.py +90 -0
  286. immich/client/models/sync_person_delete_v1.py +82 -0
  287. immich/client/models/sync_person_v1.py +131 -0
  288. immich/client/models/sync_request_type.py +52 -0
  289. immich/client/models/sync_stack_delete_v1.py +82 -0
  290. immich/client/models/sync_stack_v1.py +101 -0
  291. immich/client/models/sync_stream_dto.py +86 -0
  292. immich/client/models/sync_user_delete_v1.py +82 -0
  293. immich/client/models/sync_user_metadata_delete_v1.py +84 -0
  294. immich/client/models/sync_user_metadata_v1.py +91 -0
  295. immich/client/models/sync_user_v1.py +118 -0
  296. immich/client/models/system_config_backups_dto.py +92 -0
  297. immich/client/models/system_config_dto.py +302 -0
  298. immich/client/models/system_config_f_fmpeg_dto.py +156 -0
  299. immich/client/models/system_config_faces_dto.py +82 -0
  300. immich/client/models/system_config_generated_fullsize_image_dto.py +92 -0
  301. immich/client/models/system_config_generated_image_dto.py +92 -0
  302. immich/client/models/system_config_image_dto.py +124 -0
  303. immich/client/models/system_config_job_dto.py +194 -0
  304. immich/client/models/system_config_library_dto.py +104 -0
  305. immich/client/models/system_config_library_scan_dto.py +85 -0
  306. immich/client/models/system_config_library_watch_dto.py +82 -0
  307. immich/client/models/system_config_logging_dto.py +86 -0
  308. immich/client/models/system_config_machine_learning_dto.py +147 -0
  309. immich/client/models/system_config_map_dto.py +90 -0
  310. immich/client/models/system_config_metadata_dto.py +92 -0
  311. immich/client/models/system_config_new_version_check_dto.py +82 -0
  312. immich/client/models/system_config_nightly_tasks_dto.py +103 -0
  313. immich/client/models/system_config_notifications_dto.py +92 -0
  314. immich/client/models/system_config_o_auth_dto.py +155 -0
  315. immich/client/models/system_config_password_login_dto.py +82 -0
  316. immich/client/models/system_config_reverse_geocoding_dto.py +82 -0
  317. immich/client/models/system_config_server_dto.py +94 -0
  318. immich/client/models/system_config_smtp_dto.py +100 -0
  319. immich/client/models/system_config_smtp_transport_dto.py +107 -0
  320. immich/client/models/system_config_storage_template_dto.py +94 -0
  321. immich/client/models/system_config_template_emails_dto.py +94 -0
  322. immich/client/models/system_config_template_storage_option_dto.py +109 -0
  323. immich/client/models/system_config_templates_dto.py +94 -0
  324. immich/client/models/system_config_theme_dto.py +82 -0
  325. immich/client/models/system_config_trash_dto.py +86 -0
  326. immich/client/models/system_config_user_dto.py +83 -0
  327. immich/client/models/tag_bulk_assets_dto.py +86 -0
  328. immich/client/models/tag_bulk_assets_response_dto.py +82 -0
  329. immich/client/models/tag_create_dto.py +111 -0
  330. immich/client/models/tag_response_dto.py +107 -0
  331. immich/client/models/tag_update_dto.py +87 -0
  332. immich/client/models/tag_upsert_dto.py +82 -0
  333. immich/client/models/tags_response.py +92 -0
  334. immich/client/models/tags_update.py +85 -0
  335. immich/client/models/template_dto.py +82 -0
  336. immich/client/models/template_response_dto.py +83 -0
  337. immich/client/models/test_email_response_dto.py +82 -0
  338. immich/client/models/time_bucket_asset_response_dto.py +195 -0
  339. immich/client/models/time_buckets_response_dto.py +88 -0
  340. immich/client/models/tone_mapping.py +36 -0
  341. immich/client/models/transcode_hw_accel.py +37 -0
  342. immich/client/models/transcode_policy.py +37 -0
  343. immich/client/models/trash_response_dto.py +82 -0
  344. immich/client/models/update_album_dto.py +106 -0
  345. immich/client/models/update_album_user_dto.py +83 -0
  346. immich/client/models/update_asset_dto.py +135 -0
  347. immich/client/models/update_library_dto.py +95 -0
  348. immich/client/models/usage_by_user_dto.py +117 -0
  349. immich/client/models/user_admin_create_dto.py +136 -0
  350. immich/client/models/user_admin_delete_dto.py +82 -0
  351. immich/client/models/user_admin_response_dto.py +176 -0
  352. immich/client/models/user_admin_update_dto.py +141 -0
  353. immich/client/models/user_avatar_color.py +42 -0
  354. immich/client/models/user_license.py +91 -0
  355. immich/client/models/user_metadata_key.py +35 -0
  356. immich/client/models/user_preferences_response_dto.py +186 -0
  357. immich/client/models/user_preferences_update_dto.py +197 -0
  358. immich/client/models/user_response_dto.py +105 -0
  359. immich/client/models/user_status.py +35 -0
  360. immich/client/models/user_update_me_dto.py +98 -0
  361. immich/client/models/validate_access_token_response_dto.py +82 -0
  362. immich/client/models/validate_library_dto.py +93 -0
  363. immich/client/models/validate_library_import_path_response_dto.py +92 -0
  364. immich/client/models/validate_library_response_dto.py +103 -0
  365. immich/client/models/version_check_state_response_dto.py +98 -0
  366. immich/client/models/video_codec.py +36 -0
  367. immich/client/models/video_container.py +36 -0
  368. immich/client/models/workflow_action_item_dto.py +89 -0
  369. immich/client/models/workflow_action_response_dto.py +105 -0
  370. immich/client/models/workflow_create_dto.py +128 -0
  371. immich/client/models/workflow_filter_item_dto.py +89 -0
  372. immich/client/models/workflow_filter_response_dto.py +105 -0
  373. immich/client/models/workflow_response_dto.py +144 -0
  374. immich/client/models/workflow_update_dto.py +128 -0
  375. immich/client/py.typed +0 -0
  376. immich/client/rest.py +199 -0
  377. immich/client_wrapper/__init__.py +15 -0
  378. immich/client_wrapper/assets_api_wrapped.py +87 -0
  379. immich/client_wrapper/download_api_wrapped.py +111 -0
  380. immich/client_wrapper/users_api_wrapped.py +41 -0
  381. immich/py.typed +0 -0
  382. immich/sdk.py +365 -0
  383. immich/utils.py +100 -0
  384. immich-1.2.1.dist-info/METADATA +166 -0
  385. immich-1.2.1.dist-info/RECORD +387 -0
  386. immich-1.2.1.dist-info/WHEEL +4 -0
  387. immich-1.2.1.dist-info/licenses/LICENSE +9 -0
@@ -0,0 +1,1512 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Immich
5
+
6
+ Immich API
7
+
8
+ The version of the OpenAPI document: 2.4.1
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from immich.client.models.asset_delta_sync_dto import AssetDeltaSyncDto
20
+ from immich.client.models.asset_delta_sync_response_dto import AssetDeltaSyncResponseDto
21
+ from immich.client.models.asset_full_sync_dto import AssetFullSyncDto
22
+ from immich.client.models.asset_response_dto import AssetResponseDto
23
+ from immich.client.models.sync_ack_delete_dto import SyncAckDeleteDto
24
+ from immich.client.models.sync_ack_dto import SyncAckDto
25
+ from immich.client.models.sync_ack_set_dto import SyncAckSetDto
26
+ from immich.client.models.sync_stream_dto import SyncStreamDto
27
+
28
+ from immich.client.api_client import ApiClient, RequestSerialized
29
+ from immich.client.api_response import ApiResponse
30
+ from immich.client.rest import RESTResponseType
31
+
32
+
33
+ class SyncApi:
34
+ """NOTE: This class is auto generated by OpenAPI Generator
35
+ Ref: https://openapi-generator.tech
36
+
37
+ Do not edit the class manually.
38
+ """
39
+
40
+ def __init__(self, api_client=None) -> None:
41
+ if api_client is None:
42
+ api_client = ApiClient.get_default()
43
+ self.api_client = api_client
44
+
45
+ @validate_call
46
+ async def delete_sync_ack(
47
+ self,
48
+ sync_ack_delete_dto: SyncAckDeleteDto,
49
+ _request_timeout: Union[
50
+ None,
51
+ Annotated[StrictFloat, Field(gt=0)],
52
+ Tuple[
53
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
54
+ ],
55
+ ] = None,
56
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
57
+ _content_type: Optional[StrictStr] = None,
58
+ _headers: Optional[Dict[StrictStr, Any]] = None,
59
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
60
+ ) -> None:
61
+ """Delete acknowledgements
62
+
63
+ Delete specific synchronization acknowledgments.
64
+
65
+ :param sync_ack_delete_dto: (required)
66
+ :type sync_ack_delete_dto: SyncAckDeleteDto
67
+ :param _request_timeout: timeout setting for this request. If one
68
+ number provided, it will be total request
69
+ timeout. It can also be a pair (tuple) of
70
+ (connection, read) timeouts.
71
+ :type _request_timeout: int, tuple(int, int), optional
72
+ :param _request_auth: set to override the auth_settings for an a single
73
+ request; this effectively ignores the
74
+ authentication in the spec for a single request.
75
+ :type _request_auth: dict, optional
76
+ :param _content_type: force content-type for the request.
77
+ :type _content_type: str, Optional
78
+ :param _headers: set to override the headers for a single
79
+ request; this effectively ignores the headers
80
+ in the spec for a single request.
81
+ :type _headers: dict, optional
82
+ :param _host_index: set to override the host_index for a single
83
+ request; this effectively ignores the host_index
84
+ in the spec for a single request.
85
+ :type _host_index: int, optional
86
+ :return: Returns the result object.
87
+ """ # noqa: E501
88
+
89
+ _param = self._delete_sync_ack_serialize(
90
+ sync_ack_delete_dto=sync_ack_delete_dto,
91
+ _request_auth=_request_auth,
92
+ _content_type=_content_type,
93
+ _headers=_headers,
94
+ _host_index=_host_index,
95
+ )
96
+
97
+ _response_types_map: Dict[str, Optional[str]] = {
98
+ "204": None,
99
+ }
100
+ response_data = await self.api_client.call_api(
101
+ *_param, _request_timeout=_request_timeout
102
+ )
103
+ await response_data.read()
104
+ return self.api_client.response_deserialize(
105
+ response_data=response_data,
106
+ response_types_map=_response_types_map,
107
+ ).data
108
+
109
+ @validate_call
110
+ async def delete_sync_ack_with_http_info(
111
+ self,
112
+ sync_ack_delete_dto: SyncAckDeleteDto,
113
+ _request_timeout: Union[
114
+ None,
115
+ Annotated[StrictFloat, Field(gt=0)],
116
+ Tuple[
117
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
118
+ ],
119
+ ] = None,
120
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
121
+ _content_type: Optional[StrictStr] = None,
122
+ _headers: Optional[Dict[StrictStr, Any]] = None,
123
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
124
+ ) -> ApiResponse[None]:
125
+ """Delete acknowledgements
126
+
127
+ Delete specific synchronization acknowledgments.
128
+
129
+ :param sync_ack_delete_dto: (required)
130
+ :type sync_ack_delete_dto: SyncAckDeleteDto
131
+ :param _request_timeout: timeout setting for this request. If one
132
+ number provided, it will be total request
133
+ timeout. It can also be a pair (tuple) of
134
+ (connection, read) timeouts.
135
+ :type _request_timeout: int, tuple(int, int), optional
136
+ :param _request_auth: set to override the auth_settings for an a single
137
+ request; this effectively ignores the
138
+ authentication in the spec for a single request.
139
+ :type _request_auth: dict, optional
140
+ :param _content_type: force content-type for the request.
141
+ :type _content_type: str, Optional
142
+ :param _headers: set to override the headers for a single
143
+ request; this effectively ignores the headers
144
+ in the spec for a single request.
145
+ :type _headers: dict, optional
146
+ :param _host_index: set to override the host_index for a single
147
+ request; this effectively ignores the host_index
148
+ in the spec for a single request.
149
+ :type _host_index: int, optional
150
+ :return: Returns the result object.
151
+ """ # noqa: E501
152
+
153
+ _param = self._delete_sync_ack_serialize(
154
+ sync_ack_delete_dto=sync_ack_delete_dto,
155
+ _request_auth=_request_auth,
156
+ _content_type=_content_type,
157
+ _headers=_headers,
158
+ _host_index=_host_index,
159
+ )
160
+
161
+ _response_types_map: Dict[str, Optional[str]] = {
162
+ "204": None,
163
+ }
164
+ response_data = await self.api_client.call_api(
165
+ *_param, _request_timeout=_request_timeout
166
+ )
167
+ await response_data.read()
168
+ return self.api_client.response_deserialize(
169
+ response_data=response_data,
170
+ response_types_map=_response_types_map,
171
+ )
172
+
173
+ @validate_call
174
+ async def delete_sync_ack_without_preload_content(
175
+ self,
176
+ sync_ack_delete_dto: SyncAckDeleteDto,
177
+ _request_timeout: Union[
178
+ None,
179
+ Annotated[StrictFloat, Field(gt=0)],
180
+ Tuple[
181
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
182
+ ],
183
+ ] = None,
184
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
185
+ _content_type: Optional[StrictStr] = None,
186
+ _headers: Optional[Dict[StrictStr, Any]] = None,
187
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
188
+ ) -> RESTResponseType:
189
+ """Delete acknowledgements
190
+
191
+ Delete specific synchronization acknowledgments.
192
+
193
+ :param sync_ack_delete_dto: (required)
194
+ :type sync_ack_delete_dto: SyncAckDeleteDto
195
+ :param _request_timeout: timeout setting for this request. If one
196
+ number provided, it will be total request
197
+ timeout. It can also be a pair (tuple) of
198
+ (connection, read) timeouts.
199
+ :type _request_timeout: int, tuple(int, int), optional
200
+ :param _request_auth: set to override the auth_settings for an a single
201
+ request; this effectively ignores the
202
+ authentication in the spec for a single request.
203
+ :type _request_auth: dict, optional
204
+ :param _content_type: force content-type for the request.
205
+ :type _content_type: str, Optional
206
+ :param _headers: set to override the headers for a single
207
+ request; this effectively ignores the headers
208
+ in the spec for a single request.
209
+ :type _headers: dict, optional
210
+ :param _host_index: set to override the host_index for a single
211
+ request; this effectively ignores the host_index
212
+ in the spec for a single request.
213
+ :type _host_index: int, optional
214
+ :return: Returns the result object.
215
+ """ # noqa: E501
216
+
217
+ _param = self._delete_sync_ack_serialize(
218
+ sync_ack_delete_dto=sync_ack_delete_dto,
219
+ _request_auth=_request_auth,
220
+ _content_type=_content_type,
221
+ _headers=_headers,
222
+ _host_index=_host_index,
223
+ )
224
+
225
+ _response_types_map: Dict[str, Optional[str]] = {
226
+ "204": None,
227
+ }
228
+ response_data = await self.api_client.call_api(
229
+ *_param, _request_timeout=_request_timeout
230
+ )
231
+ return response_data.response
232
+
233
+ def _delete_sync_ack_serialize(
234
+ self,
235
+ sync_ack_delete_dto,
236
+ _request_auth,
237
+ _content_type,
238
+ _headers,
239
+ _host_index,
240
+ ) -> RequestSerialized:
241
+ _host = None
242
+
243
+ _collection_formats: Dict[str, str] = {}
244
+
245
+ _path_params: Dict[str, str] = {}
246
+ _query_params: List[Tuple[str, str]] = []
247
+ _header_params: Dict[str, Optional[str]] = _headers or {}
248
+ _form_params: List[Tuple[str, str]] = []
249
+ _files: Dict[
250
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
251
+ ] = {}
252
+ _body_params: Optional[bytes] = None
253
+
254
+ # process the path parameters
255
+ # process the query parameters
256
+ # process the header parameters
257
+ # process the form parameters
258
+ # process the body parameter
259
+ if sync_ack_delete_dto is not None:
260
+ _body_params = sync_ack_delete_dto
261
+
262
+ # set the HTTP header `Content-Type`
263
+ if _content_type:
264
+ _header_params["Content-Type"] = _content_type
265
+ else:
266
+ _default_content_type = self.api_client.select_header_content_type(
267
+ ["application/json"]
268
+ )
269
+ if _default_content_type is not None:
270
+ _header_params["Content-Type"] = _default_content_type
271
+
272
+ # authentication setting
273
+ _auth_settings: List[str] = ["cookie", "api_key", "bearer"]
274
+
275
+ return self.api_client.param_serialize(
276
+ method="DELETE",
277
+ resource_path="/sync/ack",
278
+ path_params=_path_params,
279
+ query_params=_query_params,
280
+ header_params=_header_params,
281
+ body=_body_params,
282
+ post_params=_form_params,
283
+ files=_files,
284
+ auth_settings=_auth_settings,
285
+ collection_formats=_collection_formats,
286
+ _host=_host,
287
+ _request_auth=_request_auth,
288
+ )
289
+
290
+ @validate_call
291
+ async def get_delta_sync(
292
+ self,
293
+ asset_delta_sync_dto: AssetDeltaSyncDto,
294
+ _request_timeout: Union[
295
+ None,
296
+ Annotated[StrictFloat, Field(gt=0)],
297
+ Tuple[
298
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
299
+ ],
300
+ ] = None,
301
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
302
+ _content_type: Optional[StrictStr] = None,
303
+ _headers: Optional[Dict[StrictStr, Any]] = None,
304
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
305
+ ) -> AssetDeltaSyncResponseDto:
306
+ """(Deprecated) Get delta sync for user
307
+
308
+ Retrieve changed assets since the last sync for the authenticated user.
309
+
310
+ :param asset_delta_sync_dto: (required)
311
+ :type asset_delta_sync_dto: AssetDeltaSyncDto
312
+ :param _request_timeout: timeout setting for this request. If one
313
+ number provided, it will be total request
314
+ timeout. It can also be a pair (tuple) of
315
+ (connection, read) timeouts.
316
+ :type _request_timeout: int, tuple(int, int), optional
317
+ :param _request_auth: set to override the auth_settings for an a single
318
+ request; this effectively ignores the
319
+ authentication in the spec for a single request.
320
+ :type _request_auth: dict, optional
321
+ :param _content_type: force content-type for the request.
322
+ :type _content_type: str, Optional
323
+ :param _headers: set to override the headers for a single
324
+ request; this effectively ignores the headers
325
+ in the spec for a single request.
326
+ :type _headers: dict, optional
327
+ :param _host_index: set to override the host_index for a single
328
+ request; this effectively ignores the host_index
329
+ in the spec for a single request.
330
+ :type _host_index: int, optional
331
+ :return: Returns the result object.
332
+ """ # noqa: E501
333
+ warnings.warn("POST /sync/delta-sync is deprecated.", DeprecationWarning)
334
+
335
+ _param = self._get_delta_sync_serialize(
336
+ asset_delta_sync_dto=asset_delta_sync_dto,
337
+ _request_auth=_request_auth,
338
+ _content_type=_content_type,
339
+ _headers=_headers,
340
+ _host_index=_host_index,
341
+ )
342
+
343
+ _response_types_map: Dict[str, Optional[str]] = {
344
+ "200": "AssetDeltaSyncResponseDto",
345
+ }
346
+ response_data = await self.api_client.call_api(
347
+ *_param, _request_timeout=_request_timeout
348
+ )
349
+ await response_data.read()
350
+ return self.api_client.response_deserialize(
351
+ response_data=response_data,
352
+ response_types_map=_response_types_map,
353
+ ).data
354
+
355
+ @validate_call
356
+ async def get_delta_sync_with_http_info(
357
+ self,
358
+ asset_delta_sync_dto: AssetDeltaSyncDto,
359
+ _request_timeout: Union[
360
+ None,
361
+ Annotated[StrictFloat, Field(gt=0)],
362
+ Tuple[
363
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
364
+ ],
365
+ ] = None,
366
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
367
+ _content_type: Optional[StrictStr] = None,
368
+ _headers: Optional[Dict[StrictStr, Any]] = None,
369
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
370
+ ) -> ApiResponse[AssetDeltaSyncResponseDto]:
371
+ """(Deprecated) Get delta sync for user
372
+
373
+ Retrieve changed assets since the last sync for the authenticated user.
374
+
375
+ :param asset_delta_sync_dto: (required)
376
+ :type asset_delta_sync_dto: AssetDeltaSyncDto
377
+ :param _request_timeout: timeout setting for this request. If one
378
+ number provided, it will be total request
379
+ timeout. It can also be a pair (tuple) of
380
+ (connection, read) timeouts.
381
+ :type _request_timeout: int, tuple(int, int), optional
382
+ :param _request_auth: set to override the auth_settings for an a single
383
+ request; this effectively ignores the
384
+ authentication in the spec for a single request.
385
+ :type _request_auth: dict, optional
386
+ :param _content_type: force content-type for the request.
387
+ :type _content_type: str, Optional
388
+ :param _headers: set to override the headers for a single
389
+ request; this effectively ignores the headers
390
+ in the spec for a single request.
391
+ :type _headers: dict, optional
392
+ :param _host_index: set to override the host_index for a single
393
+ request; this effectively ignores the host_index
394
+ in the spec for a single request.
395
+ :type _host_index: int, optional
396
+ :return: Returns the result object.
397
+ """ # noqa: E501
398
+ warnings.warn("POST /sync/delta-sync is deprecated.", DeprecationWarning)
399
+
400
+ _param = self._get_delta_sync_serialize(
401
+ asset_delta_sync_dto=asset_delta_sync_dto,
402
+ _request_auth=_request_auth,
403
+ _content_type=_content_type,
404
+ _headers=_headers,
405
+ _host_index=_host_index,
406
+ )
407
+
408
+ _response_types_map: Dict[str, Optional[str]] = {
409
+ "200": "AssetDeltaSyncResponseDto",
410
+ }
411
+ response_data = await self.api_client.call_api(
412
+ *_param, _request_timeout=_request_timeout
413
+ )
414
+ await response_data.read()
415
+ return self.api_client.response_deserialize(
416
+ response_data=response_data,
417
+ response_types_map=_response_types_map,
418
+ )
419
+
420
+ @validate_call
421
+ async def get_delta_sync_without_preload_content(
422
+ self,
423
+ asset_delta_sync_dto: AssetDeltaSyncDto,
424
+ _request_timeout: Union[
425
+ None,
426
+ Annotated[StrictFloat, Field(gt=0)],
427
+ Tuple[
428
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
429
+ ],
430
+ ] = None,
431
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
432
+ _content_type: Optional[StrictStr] = None,
433
+ _headers: Optional[Dict[StrictStr, Any]] = None,
434
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
435
+ ) -> RESTResponseType:
436
+ """(Deprecated) Get delta sync for user
437
+
438
+ Retrieve changed assets since the last sync for the authenticated user.
439
+
440
+ :param asset_delta_sync_dto: (required)
441
+ :type asset_delta_sync_dto: AssetDeltaSyncDto
442
+ :param _request_timeout: timeout setting for this request. If one
443
+ number provided, it will be total request
444
+ timeout. It can also be a pair (tuple) of
445
+ (connection, read) timeouts.
446
+ :type _request_timeout: int, tuple(int, int), optional
447
+ :param _request_auth: set to override the auth_settings for an a single
448
+ request; this effectively ignores the
449
+ authentication in the spec for a single request.
450
+ :type _request_auth: dict, optional
451
+ :param _content_type: force content-type for the request.
452
+ :type _content_type: str, Optional
453
+ :param _headers: set to override the headers for a single
454
+ request; this effectively ignores the headers
455
+ in the spec for a single request.
456
+ :type _headers: dict, optional
457
+ :param _host_index: set to override the host_index for a single
458
+ request; this effectively ignores the host_index
459
+ in the spec for a single request.
460
+ :type _host_index: int, optional
461
+ :return: Returns the result object.
462
+ """ # noqa: E501
463
+ warnings.warn("POST /sync/delta-sync is deprecated.", DeprecationWarning)
464
+
465
+ _param = self._get_delta_sync_serialize(
466
+ asset_delta_sync_dto=asset_delta_sync_dto,
467
+ _request_auth=_request_auth,
468
+ _content_type=_content_type,
469
+ _headers=_headers,
470
+ _host_index=_host_index,
471
+ )
472
+
473
+ _response_types_map: Dict[str, Optional[str]] = {
474
+ "200": "AssetDeltaSyncResponseDto",
475
+ }
476
+ response_data = await self.api_client.call_api(
477
+ *_param, _request_timeout=_request_timeout
478
+ )
479
+ return response_data.response
480
+
481
+ def _get_delta_sync_serialize(
482
+ self,
483
+ asset_delta_sync_dto,
484
+ _request_auth,
485
+ _content_type,
486
+ _headers,
487
+ _host_index,
488
+ ) -> RequestSerialized:
489
+ _host = None
490
+
491
+ _collection_formats: Dict[str, str] = {}
492
+
493
+ _path_params: Dict[str, str] = {}
494
+ _query_params: List[Tuple[str, str]] = []
495
+ _header_params: Dict[str, Optional[str]] = _headers or {}
496
+ _form_params: List[Tuple[str, str]] = []
497
+ _files: Dict[
498
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
499
+ ] = {}
500
+ _body_params: Optional[bytes] = None
501
+
502
+ # process the path parameters
503
+ # process the query parameters
504
+ # process the header parameters
505
+ # process the form parameters
506
+ # process the body parameter
507
+ if asset_delta_sync_dto is not None:
508
+ _body_params = asset_delta_sync_dto
509
+
510
+ # set the HTTP header `Accept`
511
+ if "Accept" not in _header_params:
512
+ _header_params["Accept"] = self.api_client.select_header_accept(
513
+ ["application/json"]
514
+ )
515
+
516
+ # set the HTTP header `Content-Type`
517
+ if _content_type:
518
+ _header_params["Content-Type"] = _content_type
519
+ else:
520
+ _default_content_type = self.api_client.select_header_content_type(
521
+ ["application/json"]
522
+ )
523
+ if _default_content_type is not None:
524
+ _header_params["Content-Type"] = _default_content_type
525
+
526
+ # authentication setting
527
+ _auth_settings: List[str] = ["cookie", "api_key", "bearer"]
528
+
529
+ return self.api_client.param_serialize(
530
+ method="POST",
531
+ resource_path="/sync/delta-sync",
532
+ path_params=_path_params,
533
+ query_params=_query_params,
534
+ header_params=_header_params,
535
+ body=_body_params,
536
+ post_params=_form_params,
537
+ files=_files,
538
+ auth_settings=_auth_settings,
539
+ collection_formats=_collection_formats,
540
+ _host=_host,
541
+ _request_auth=_request_auth,
542
+ )
543
+
544
+ @validate_call
545
+ async def get_full_sync_for_user(
546
+ self,
547
+ asset_full_sync_dto: AssetFullSyncDto,
548
+ _request_timeout: Union[
549
+ None,
550
+ Annotated[StrictFloat, Field(gt=0)],
551
+ Tuple[
552
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
553
+ ],
554
+ ] = None,
555
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
556
+ _content_type: Optional[StrictStr] = None,
557
+ _headers: Optional[Dict[StrictStr, Any]] = None,
558
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
559
+ ) -> List[AssetResponseDto]:
560
+ """(Deprecated) Get full sync for user
561
+
562
+ Retrieve all assets for a full synchronization for the authenticated user.
563
+
564
+ :param asset_full_sync_dto: (required)
565
+ :type asset_full_sync_dto: AssetFullSyncDto
566
+ :param _request_timeout: timeout setting for this request. If one
567
+ number provided, it will be total request
568
+ timeout. It can also be a pair (tuple) of
569
+ (connection, read) timeouts.
570
+ :type _request_timeout: int, tuple(int, int), optional
571
+ :param _request_auth: set to override the auth_settings for an a single
572
+ request; this effectively ignores the
573
+ authentication in the spec for a single request.
574
+ :type _request_auth: dict, optional
575
+ :param _content_type: force content-type for the request.
576
+ :type _content_type: str, Optional
577
+ :param _headers: set to override the headers for a single
578
+ request; this effectively ignores the headers
579
+ in the spec for a single request.
580
+ :type _headers: dict, optional
581
+ :param _host_index: set to override the host_index for a single
582
+ request; this effectively ignores the host_index
583
+ in the spec for a single request.
584
+ :type _host_index: int, optional
585
+ :return: Returns the result object.
586
+ """ # noqa: E501
587
+ warnings.warn("POST /sync/full-sync is deprecated.", DeprecationWarning)
588
+
589
+ _param = self._get_full_sync_for_user_serialize(
590
+ asset_full_sync_dto=asset_full_sync_dto,
591
+ _request_auth=_request_auth,
592
+ _content_type=_content_type,
593
+ _headers=_headers,
594
+ _host_index=_host_index,
595
+ )
596
+
597
+ _response_types_map: Dict[str, Optional[str]] = {
598
+ "200": "List[AssetResponseDto]",
599
+ }
600
+ response_data = await self.api_client.call_api(
601
+ *_param, _request_timeout=_request_timeout
602
+ )
603
+ await response_data.read()
604
+ return self.api_client.response_deserialize(
605
+ response_data=response_data,
606
+ response_types_map=_response_types_map,
607
+ ).data
608
+
609
+ @validate_call
610
+ async def get_full_sync_for_user_with_http_info(
611
+ self,
612
+ asset_full_sync_dto: AssetFullSyncDto,
613
+ _request_timeout: Union[
614
+ None,
615
+ Annotated[StrictFloat, Field(gt=0)],
616
+ Tuple[
617
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
618
+ ],
619
+ ] = None,
620
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
621
+ _content_type: Optional[StrictStr] = None,
622
+ _headers: Optional[Dict[StrictStr, Any]] = None,
623
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
624
+ ) -> ApiResponse[List[AssetResponseDto]]:
625
+ """(Deprecated) Get full sync for user
626
+
627
+ Retrieve all assets for a full synchronization for the authenticated user.
628
+
629
+ :param asset_full_sync_dto: (required)
630
+ :type asset_full_sync_dto: AssetFullSyncDto
631
+ :param _request_timeout: timeout setting for this request. If one
632
+ number provided, it will be total request
633
+ timeout. It can also be a pair (tuple) of
634
+ (connection, read) timeouts.
635
+ :type _request_timeout: int, tuple(int, int), optional
636
+ :param _request_auth: set to override the auth_settings for an a single
637
+ request; this effectively ignores the
638
+ authentication in the spec for a single request.
639
+ :type _request_auth: dict, optional
640
+ :param _content_type: force content-type for the request.
641
+ :type _content_type: str, Optional
642
+ :param _headers: set to override the headers for a single
643
+ request; this effectively ignores the headers
644
+ in the spec for a single request.
645
+ :type _headers: dict, optional
646
+ :param _host_index: set to override the host_index for a single
647
+ request; this effectively ignores the host_index
648
+ in the spec for a single request.
649
+ :type _host_index: int, optional
650
+ :return: Returns the result object.
651
+ """ # noqa: E501
652
+ warnings.warn("POST /sync/full-sync is deprecated.", DeprecationWarning)
653
+
654
+ _param = self._get_full_sync_for_user_serialize(
655
+ asset_full_sync_dto=asset_full_sync_dto,
656
+ _request_auth=_request_auth,
657
+ _content_type=_content_type,
658
+ _headers=_headers,
659
+ _host_index=_host_index,
660
+ )
661
+
662
+ _response_types_map: Dict[str, Optional[str]] = {
663
+ "200": "List[AssetResponseDto]",
664
+ }
665
+ response_data = await self.api_client.call_api(
666
+ *_param, _request_timeout=_request_timeout
667
+ )
668
+ await response_data.read()
669
+ return self.api_client.response_deserialize(
670
+ response_data=response_data,
671
+ response_types_map=_response_types_map,
672
+ )
673
+
674
+ @validate_call
675
+ async def get_full_sync_for_user_without_preload_content(
676
+ self,
677
+ asset_full_sync_dto: AssetFullSyncDto,
678
+ _request_timeout: Union[
679
+ None,
680
+ Annotated[StrictFloat, Field(gt=0)],
681
+ Tuple[
682
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
683
+ ],
684
+ ] = None,
685
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
686
+ _content_type: Optional[StrictStr] = None,
687
+ _headers: Optional[Dict[StrictStr, Any]] = None,
688
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
689
+ ) -> RESTResponseType:
690
+ """(Deprecated) Get full sync for user
691
+
692
+ Retrieve all assets for a full synchronization for the authenticated user.
693
+
694
+ :param asset_full_sync_dto: (required)
695
+ :type asset_full_sync_dto: AssetFullSyncDto
696
+ :param _request_timeout: timeout setting for this request. If one
697
+ number provided, it will be total request
698
+ timeout. It can also be a pair (tuple) of
699
+ (connection, read) timeouts.
700
+ :type _request_timeout: int, tuple(int, int), optional
701
+ :param _request_auth: set to override the auth_settings for an a single
702
+ request; this effectively ignores the
703
+ authentication in the spec for a single request.
704
+ :type _request_auth: dict, optional
705
+ :param _content_type: force content-type for the request.
706
+ :type _content_type: str, Optional
707
+ :param _headers: set to override the headers for a single
708
+ request; this effectively ignores the headers
709
+ in the spec for a single request.
710
+ :type _headers: dict, optional
711
+ :param _host_index: set to override the host_index for a single
712
+ request; this effectively ignores the host_index
713
+ in the spec for a single request.
714
+ :type _host_index: int, optional
715
+ :return: Returns the result object.
716
+ """ # noqa: E501
717
+ warnings.warn("POST /sync/full-sync is deprecated.", DeprecationWarning)
718
+
719
+ _param = self._get_full_sync_for_user_serialize(
720
+ asset_full_sync_dto=asset_full_sync_dto,
721
+ _request_auth=_request_auth,
722
+ _content_type=_content_type,
723
+ _headers=_headers,
724
+ _host_index=_host_index,
725
+ )
726
+
727
+ _response_types_map: Dict[str, Optional[str]] = {
728
+ "200": "List[AssetResponseDto]",
729
+ }
730
+ response_data = await self.api_client.call_api(
731
+ *_param, _request_timeout=_request_timeout
732
+ )
733
+ return response_data.response
734
+
735
+ def _get_full_sync_for_user_serialize(
736
+ self,
737
+ asset_full_sync_dto,
738
+ _request_auth,
739
+ _content_type,
740
+ _headers,
741
+ _host_index,
742
+ ) -> RequestSerialized:
743
+ _host = None
744
+
745
+ _collection_formats: Dict[str, str] = {}
746
+
747
+ _path_params: Dict[str, str] = {}
748
+ _query_params: List[Tuple[str, str]] = []
749
+ _header_params: Dict[str, Optional[str]] = _headers or {}
750
+ _form_params: List[Tuple[str, str]] = []
751
+ _files: Dict[
752
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
753
+ ] = {}
754
+ _body_params: Optional[bytes] = None
755
+
756
+ # process the path parameters
757
+ # process the query parameters
758
+ # process the header parameters
759
+ # process the form parameters
760
+ # process the body parameter
761
+ if asset_full_sync_dto is not None:
762
+ _body_params = asset_full_sync_dto
763
+
764
+ # set the HTTP header `Accept`
765
+ if "Accept" not in _header_params:
766
+ _header_params["Accept"] = self.api_client.select_header_accept(
767
+ ["application/json"]
768
+ )
769
+
770
+ # set the HTTP header `Content-Type`
771
+ if _content_type:
772
+ _header_params["Content-Type"] = _content_type
773
+ else:
774
+ _default_content_type = self.api_client.select_header_content_type(
775
+ ["application/json"]
776
+ )
777
+ if _default_content_type is not None:
778
+ _header_params["Content-Type"] = _default_content_type
779
+
780
+ # authentication setting
781
+ _auth_settings: List[str] = ["cookie", "api_key", "bearer"]
782
+
783
+ return self.api_client.param_serialize(
784
+ method="POST",
785
+ resource_path="/sync/full-sync",
786
+ path_params=_path_params,
787
+ query_params=_query_params,
788
+ header_params=_header_params,
789
+ body=_body_params,
790
+ post_params=_form_params,
791
+ files=_files,
792
+ auth_settings=_auth_settings,
793
+ collection_formats=_collection_formats,
794
+ _host=_host,
795
+ _request_auth=_request_auth,
796
+ )
797
+
798
+ @validate_call
799
+ async def get_sync_ack(
800
+ self,
801
+ _request_timeout: Union[
802
+ None,
803
+ Annotated[StrictFloat, Field(gt=0)],
804
+ Tuple[
805
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
806
+ ],
807
+ ] = None,
808
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
809
+ _content_type: Optional[StrictStr] = None,
810
+ _headers: Optional[Dict[StrictStr, Any]] = None,
811
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
812
+ ) -> List[SyncAckDto]:
813
+ """Retrieve acknowledgements
814
+
815
+ Retrieve the synchronization acknowledgments for the current session.
816
+
817
+ :param _request_timeout: timeout setting for this request. If one
818
+ number provided, it will be total request
819
+ timeout. It can also be a pair (tuple) of
820
+ (connection, read) timeouts.
821
+ :type _request_timeout: int, tuple(int, int), optional
822
+ :param _request_auth: set to override the auth_settings for an a single
823
+ request; this effectively ignores the
824
+ authentication in the spec for a single request.
825
+ :type _request_auth: dict, optional
826
+ :param _content_type: force content-type for the request.
827
+ :type _content_type: str, Optional
828
+ :param _headers: set to override the headers for a single
829
+ request; this effectively ignores the headers
830
+ in the spec for a single request.
831
+ :type _headers: dict, optional
832
+ :param _host_index: set to override the host_index for a single
833
+ request; this effectively ignores the host_index
834
+ in the spec for a single request.
835
+ :type _host_index: int, optional
836
+ :return: Returns the result object.
837
+ """ # noqa: E501
838
+
839
+ _param = self._get_sync_ack_serialize(
840
+ _request_auth=_request_auth,
841
+ _content_type=_content_type,
842
+ _headers=_headers,
843
+ _host_index=_host_index,
844
+ )
845
+
846
+ _response_types_map: Dict[str, Optional[str]] = {
847
+ "200": "List[SyncAckDto]",
848
+ }
849
+ response_data = await self.api_client.call_api(
850
+ *_param, _request_timeout=_request_timeout
851
+ )
852
+ await response_data.read()
853
+ return self.api_client.response_deserialize(
854
+ response_data=response_data,
855
+ response_types_map=_response_types_map,
856
+ ).data
857
+
858
+ @validate_call
859
+ async def get_sync_ack_with_http_info(
860
+ self,
861
+ _request_timeout: Union[
862
+ None,
863
+ Annotated[StrictFloat, Field(gt=0)],
864
+ Tuple[
865
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
866
+ ],
867
+ ] = None,
868
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
869
+ _content_type: Optional[StrictStr] = None,
870
+ _headers: Optional[Dict[StrictStr, Any]] = None,
871
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
872
+ ) -> ApiResponse[List[SyncAckDto]]:
873
+ """Retrieve acknowledgements
874
+
875
+ Retrieve the synchronization acknowledgments for the current session.
876
+
877
+ :param _request_timeout: timeout setting for this request. If one
878
+ number provided, it will be total request
879
+ timeout. It can also be a pair (tuple) of
880
+ (connection, read) timeouts.
881
+ :type _request_timeout: int, tuple(int, int), optional
882
+ :param _request_auth: set to override the auth_settings for an a single
883
+ request; this effectively ignores the
884
+ authentication in the spec for a single request.
885
+ :type _request_auth: dict, optional
886
+ :param _content_type: force content-type for the request.
887
+ :type _content_type: str, Optional
888
+ :param _headers: set to override the headers for a single
889
+ request; this effectively ignores the headers
890
+ in the spec for a single request.
891
+ :type _headers: dict, optional
892
+ :param _host_index: set to override the host_index for a single
893
+ request; this effectively ignores the host_index
894
+ in the spec for a single request.
895
+ :type _host_index: int, optional
896
+ :return: Returns the result object.
897
+ """ # noqa: E501
898
+
899
+ _param = self._get_sync_ack_serialize(
900
+ _request_auth=_request_auth,
901
+ _content_type=_content_type,
902
+ _headers=_headers,
903
+ _host_index=_host_index,
904
+ )
905
+
906
+ _response_types_map: Dict[str, Optional[str]] = {
907
+ "200": "List[SyncAckDto]",
908
+ }
909
+ response_data = await self.api_client.call_api(
910
+ *_param, _request_timeout=_request_timeout
911
+ )
912
+ await response_data.read()
913
+ return self.api_client.response_deserialize(
914
+ response_data=response_data,
915
+ response_types_map=_response_types_map,
916
+ )
917
+
918
+ @validate_call
919
+ async def get_sync_ack_without_preload_content(
920
+ self,
921
+ _request_timeout: Union[
922
+ None,
923
+ Annotated[StrictFloat, Field(gt=0)],
924
+ Tuple[
925
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
926
+ ],
927
+ ] = None,
928
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
929
+ _content_type: Optional[StrictStr] = None,
930
+ _headers: Optional[Dict[StrictStr, Any]] = None,
931
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
932
+ ) -> RESTResponseType:
933
+ """Retrieve acknowledgements
934
+
935
+ Retrieve the synchronization acknowledgments for the current session.
936
+
937
+ :param _request_timeout: timeout setting for this request. If one
938
+ number provided, it will be total request
939
+ timeout. It can also be a pair (tuple) of
940
+ (connection, read) timeouts.
941
+ :type _request_timeout: int, tuple(int, int), optional
942
+ :param _request_auth: set to override the auth_settings for an a single
943
+ request; this effectively ignores the
944
+ authentication in the spec for a single request.
945
+ :type _request_auth: dict, optional
946
+ :param _content_type: force content-type for the request.
947
+ :type _content_type: str, Optional
948
+ :param _headers: set to override the headers for a single
949
+ request; this effectively ignores the headers
950
+ in the spec for a single request.
951
+ :type _headers: dict, optional
952
+ :param _host_index: set to override the host_index for a single
953
+ request; this effectively ignores the host_index
954
+ in the spec for a single request.
955
+ :type _host_index: int, optional
956
+ :return: Returns the result object.
957
+ """ # noqa: E501
958
+
959
+ _param = self._get_sync_ack_serialize(
960
+ _request_auth=_request_auth,
961
+ _content_type=_content_type,
962
+ _headers=_headers,
963
+ _host_index=_host_index,
964
+ )
965
+
966
+ _response_types_map: Dict[str, Optional[str]] = {
967
+ "200": "List[SyncAckDto]",
968
+ }
969
+ response_data = await self.api_client.call_api(
970
+ *_param, _request_timeout=_request_timeout
971
+ )
972
+ return response_data.response
973
+
974
+ def _get_sync_ack_serialize(
975
+ self,
976
+ _request_auth,
977
+ _content_type,
978
+ _headers,
979
+ _host_index,
980
+ ) -> RequestSerialized:
981
+ _host = None
982
+
983
+ _collection_formats: Dict[str, str] = {}
984
+
985
+ _path_params: Dict[str, str] = {}
986
+ _query_params: List[Tuple[str, str]] = []
987
+ _header_params: Dict[str, Optional[str]] = _headers or {}
988
+ _form_params: List[Tuple[str, str]] = []
989
+ _files: Dict[
990
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
991
+ ] = {}
992
+ _body_params: Optional[bytes] = None
993
+
994
+ # process the path parameters
995
+ # process the query parameters
996
+ # process the header parameters
997
+ # process the form parameters
998
+ # process the body parameter
999
+
1000
+ # set the HTTP header `Accept`
1001
+ if "Accept" not in _header_params:
1002
+ _header_params["Accept"] = self.api_client.select_header_accept(
1003
+ ["application/json"]
1004
+ )
1005
+
1006
+ # authentication setting
1007
+ _auth_settings: List[str] = ["cookie", "api_key", "bearer"]
1008
+
1009
+ return self.api_client.param_serialize(
1010
+ method="GET",
1011
+ resource_path="/sync/ack",
1012
+ path_params=_path_params,
1013
+ query_params=_query_params,
1014
+ header_params=_header_params,
1015
+ body=_body_params,
1016
+ post_params=_form_params,
1017
+ files=_files,
1018
+ auth_settings=_auth_settings,
1019
+ collection_formats=_collection_formats,
1020
+ _host=_host,
1021
+ _request_auth=_request_auth,
1022
+ )
1023
+
1024
+ @validate_call
1025
+ async def get_sync_stream(
1026
+ self,
1027
+ sync_stream_dto: SyncStreamDto,
1028
+ _request_timeout: Union[
1029
+ None,
1030
+ Annotated[StrictFloat, Field(gt=0)],
1031
+ Tuple[
1032
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1033
+ ],
1034
+ ] = None,
1035
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1036
+ _content_type: Optional[StrictStr] = None,
1037
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1038
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1039
+ ) -> None:
1040
+ """Stream sync changes
1041
+
1042
+ Retrieve a JSON lines streamed response of changes for synchronization. This endpoint is used by the mobile app to efficiently stay up to date with changes.
1043
+
1044
+ :param sync_stream_dto: (required)
1045
+ :type sync_stream_dto: SyncStreamDto
1046
+ :param _request_timeout: timeout setting for this request. If one
1047
+ number provided, it will be total request
1048
+ timeout. It can also be a pair (tuple) of
1049
+ (connection, read) timeouts.
1050
+ :type _request_timeout: int, tuple(int, int), optional
1051
+ :param _request_auth: set to override the auth_settings for an a single
1052
+ request; this effectively ignores the
1053
+ authentication in the spec for a single request.
1054
+ :type _request_auth: dict, optional
1055
+ :param _content_type: force content-type for the request.
1056
+ :type _content_type: str, Optional
1057
+ :param _headers: set to override the headers for a single
1058
+ request; this effectively ignores the headers
1059
+ in the spec for a single request.
1060
+ :type _headers: dict, optional
1061
+ :param _host_index: set to override the host_index for a single
1062
+ request; this effectively ignores the host_index
1063
+ in the spec for a single request.
1064
+ :type _host_index: int, optional
1065
+ :return: Returns the result object.
1066
+ """ # noqa: E501
1067
+
1068
+ _param = self._get_sync_stream_serialize(
1069
+ sync_stream_dto=sync_stream_dto,
1070
+ _request_auth=_request_auth,
1071
+ _content_type=_content_type,
1072
+ _headers=_headers,
1073
+ _host_index=_host_index,
1074
+ )
1075
+
1076
+ _response_types_map: Dict[str, Optional[str]] = {
1077
+ "200": None,
1078
+ }
1079
+ response_data = await self.api_client.call_api(
1080
+ *_param, _request_timeout=_request_timeout
1081
+ )
1082
+ await response_data.read()
1083
+ return self.api_client.response_deserialize(
1084
+ response_data=response_data,
1085
+ response_types_map=_response_types_map,
1086
+ ).data
1087
+
1088
+ @validate_call
1089
+ async def get_sync_stream_with_http_info(
1090
+ self,
1091
+ sync_stream_dto: SyncStreamDto,
1092
+ _request_timeout: Union[
1093
+ None,
1094
+ Annotated[StrictFloat, Field(gt=0)],
1095
+ Tuple[
1096
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1097
+ ],
1098
+ ] = None,
1099
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1100
+ _content_type: Optional[StrictStr] = None,
1101
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1102
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1103
+ ) -> ApiResponse[None]:
1104
+ """Stream sync changes
1105
+
1106
+ Retrieve a JSON lines streamed response of changes for synchronization. This endpoint is used by the mobile app to efficiently stay up to date with changes.
1107
+
1108
+ :param sync_stream_dto: (required)
1109
+ :type sync_stream_dto: SyncStreamDto
1110
+ :param _request_timeout: timeout setting for this request. If one
1111
+ number provided, it will be total request
1112
+ timeout. It can also be a pair (tuple) of
1113
+ (connection, read) timeouts.
1114
+ :type _request_timeout: int, tuple(int, int), optional
1115
+ :param _request_auth: set to override the auth_settings for an a single
1116
+ request; this effectively ignores the
1117
+ authentication in the spec for a single request.
1118
+ :type _request_auth: dict, optional
1119
+ :param _content_type: force content-type for the request.
1120
+ :type _content_type: str, Optional
1121
+ :param _headers: set to override the headers for a single
1122
+ request; this effectively ignores the headers
1123
+ in the spec for a single request.
1124
+ :type _headers: dict, optional
1125
+ :param _host_index: set to override the host_index for a single
1126
+ request; this effectively ignores the host_index
1127
+ in the spec for a single request.
1128
+ :type _host_index: int, optional
1129
+ :return: Returns the result object.
1130
+ """ # noqa: E501
1131
+
1132
+ _param = self._get_sync_stream_serialize(
1133
+ sync_stream_dto=sync_stream_dto,
1134
+ _request_auth=_request_auth,
1135
+ _content_type=_content_type,
1136
+ _headers=_headers,
1137
+ _host_index=_host_index,
1138
+ )
1139
+
1140
+ _response_types_map: Dict[str, Optional[str]] = {
1141
+ "200": None,
1142
+ }
1143
+ response_data = await self.api_client.call_api(
1144
+ *_param, _request_timeout=_request_timeout
1145
+ )
1146
+ await response_data.read()
1147
+ return self.api_client.response_deserialize(
1148
+ response_data=response_data,
1149
+ response_types_map=_response_types_map,
1150
+ )
1151
+
1152
+ @validate_call
1153
+ async def get_sync_stream_without_preload_content(
1154
+ self,
1155
+ sync_stream_dto: SyncStreamDto,
1156
+ _request_timeout: Union[
1157
+ None,
1158
+ Annotated[StrictFloat, Field(gt=0)],
1159
+ Tuple[
1160
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1161
+ ],
1162
+ ] = None,
1163
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1164
+ _content_type: Optional[StrictStr] = None,
1165
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1166
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1167
+ ) -> RESTResponseType:
1168
+ """Stream sync changes
1169
+
1170
+ Retrieve a JSON lines streamed response of changes for synchronization. This endpoint is used by the mobile app to efficiently stay up to date with changes.
1171
+
1172
+ :param sync_stream_dto: (required)
1173
+ :type sync_stream_dto: SyncStreamDto
1174
+ :param _request_timeout: timeout setting for this request. If one
1175
+ number provided, it will be total request
1176
+ timeout. It can also be a pair (tuple) of
1177
+ (connection, read) timeouts.
1178
+ :type _request_timeout: int, tuple(int, int), optional
1179
+ :param _request_auth: set to override the auth_settings for an a single
1180
+ request; this effectively ignores the
1181
+ authentication in the spec for a single request.
1182
+ :type _request_auth: dict, optional
1183
+ :param _content_type: force content-type for the request.
1184
+ :type _content_type: str, Optional
1185
+ :param _headers: set to override the headers for a single
1186
+ request; this effectively ignores the headers
1187
+ in the spec for a single request.
1188
+ :type _headers: dict, optional
1189
+ :param _host_index: set to override the host_index for a single
1190
+ request; this effectively ignores the host_index
1191
+ in the spec for a single request.
1192
+ :type _host_index: int, optional
1193
+ :return: Returns the result object.
1194
+ """ # noqa: E501
1195
+
1196
+ _param = self._get_sync_stream_serialize(
1197
+ sync_stream_dto=sync_stream_dto,
1198
+ _request_auth=_request_auth,
1199
+ _content_type=_content_type,
1200
+ _headers=_headers,
1201
+ _host_index=_host_index,
1202
+ )
1203
+
1204
+ _response_types_map: Dict[str, Optional[str]] = {
1205
+ "200": None,
1206
+ }
1207
+ response_data = await self.api_client.call_api(
1208
+ *_param, _request_timeout=_request_timeout
1209
+ )
1210
+ return response_data.response
1211
+
1212
+ def _get_sync_stream_serialize(
1213
+ self,
1214
+ sync_stream_dto,
1215
+ _request_auth,
1216
+ _content_type,
1217
+ _headers,
1218
+ _host_index,
1219
+ ) -> RequestSerialized:
1220
+ _host = None
1221
+
1222
+ _collection_formats: Dict[str, str] = {}
1223
+
1224
+ _path_params: Dict[str, str] = {}
1225
+ _query_params: List[Tuple[str, str]] = []
1226
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1227
+ _form_params: List[Tuple[str, str]] = []
1228
+ _files: Dict[
1229
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1230
+ ] = {}
1231
+ _body_params: Optional[bytes] = None
1232
+
1233
+ # process the path parameters
1234
+ # process the query parameters
1235
+ # process the header parameters
1236
+ # process the form parameters
1237
+ # process the body parameter
1238
+ if sync_stream_dto is not None:
1239
+ _body_params = sync_stream_dto
1240
+
1241
+ # set the HTTP header `Content-Type`
1242
+ if _content_type:
1243
+ _header_params["Content-Type"] = _content_type
1244
+ else:
1245
+ _default_content_type = self.api_client.select_header_content_type(
1246
+ ["application/json"]
1247
+ )
1248
+ if _default_content_type is not None:
1249
+ _header_params["Content-Type"] = _default_content_type
1250
+
1251
+ # authentication setting
1252
+ _auth_settings: List[str] = ["cookie", "api_key", "bearer"]
1253
+
1254
+ return self.api_client.param_serialize(
1255
+ method="POST",
1256
+ resource_path="/sync/stream",
1257
+ path_params=_path_params,
1258
+ query_params=_query_params,
1259
+ header_params=_header_params,
1260
+ body=_body_params,
1261
+ post_params=_form_params,
1262
+ files=_files,
1263
+ auth_settings=_auth_settings,
1264
+ collection_formats=_collection_formats,
1265
+ _host=_host,
1266
+ _request_auth=_request_auth,
1267
+ )
1268
+
1269
+ @validate_call
1270
+ async def send_sync_ack(
1271
+ self,
1272
+ sync_ack_set_dto: SyncAckSetDto,
1273
+ _request_timeout: Union[
1274
+ None,
1275
+ Annotated[StrictFloat, Field(gt=0)],
1276
+ Tuple[
1277
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1278
+ ],
1279
+ ] = None,
1280
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1281
+ _content_type: Optional[StrictStr] = None,
1282
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1283
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1284
+ ) -> None:
1285
+ """Acknowledge changes
1286
+
1287
+ Send a list of synchronization acknowledgements to confirm that the latest changes have been received.
1288
+
1289
+ :param sync_ack_set_dto: (required)
1290
+ :type sync_ack_set_dto: SyncAckSetDto
1291
+ :param _request_timeout: timeout setting for this request. If one
1292
+ number provided, it will be total request
1293
+ timeout. It can also be a pair (tuple) of
1294
+ (connection, read) timeouts.
1295
+ :type _request_timeout: int, tuple(int, int), optional
1296
+ :param _request_auth: set to override the auth_settings for an a single
1297
+ request; this effectively ignores the
1298
+ authentication in the spec for a single request.
1299
+ :type _request_auth: dict, optional
1300
+ :param _content_type: force content-type for the request.
1301
+ :type _content_type: str, Optional
1302
+ :param _headers: set to override the headers for a single
1303
+ request; this effectively ignores the headers
1304
+ in the spec for a single request.
1305
+ :type _headers: dict, optional
1306
+ :param _host_index: set to override the host_index for a single
1307
+ request; this effectively ignores the host_index
1308
+ in the spec for a single request.
1309
+ :type _host_index: int, optional
1310
+ :return: Returns the result object.
1311
+ """ # noqa: E501
1312
+
1313
+ _param = self._send_sync_ack_serialize(
1314
+ sync_ack_set_dto=sync_ack_set_dto,
1315
+ _request_auth=_request_auth,
1316
+ _content_type=_content_type,
1317
+ _headers=_headers,
1318
+ _host_index=_host_index,
1319
+ )
1320
+
1321
+ _response_types_map: Dict[str, Optional[str]] = {
1322
+ "204": None,
1323
+ }
1324
+ response_data = await self.api_client.call_api(
1325
+ *_param, _request_timeout=_request_timeout
1326
+ )
1327
+ await response_data.read()
1328
+ return self.api_client.response_deserialize(
1329
+ response_data=response_data,
1330
+ response_types_map=_response_types_map,
1331
+ ).data
1332
+
1333
+ @validate_call
1334
+ async def send_sync_ack_with_http_info(
1335
+ self,
1336
+ sync_ack_set_dto: SyncAckSetDto,
1337
+ _request_timeout: Union[
1338
+ None,
1339
+ Annotated[StrictFloat, Field(gt=0)],
1340
+ Tuple[
1341
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1342
+ ],
1343
+ ] = None,
1344
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1345
+ _content_type: Optional[StrictStr] = None,
1346
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1347
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1348
+ ) -> ApiResponse[None]:
1349
+ """Acknowledge changes
1350
+
1351
+ Send a list of synchronization acknowledgements to confirm that the latest changes have been received.
1352
+
1353
+ :param sync_ack_set_dto: (required)
1354
+ :type sync_ack_set_dto: SyncAckSetDto
1355
+ :param _request_timeout: timeout setting for this request. If one
1356
+ number provided, it will be total request
1357
+ timeout. It can also be a pair (tuple) of
1358
+ (connection, read) timeouts.
1359
+ :type _request_timeout: int, tuple(int, int), optional
1360
+ :param _request_auth: set to override the auth_settings for an a single
1361
+ request; this effectively ignores the
1362
+ authentication in the spec for a single request.
1363
+ :type _request_auth: dict, optional
1364
+ :param _content_type: force content-type for the request.
1365
+ :type _content_type: str, Optional
1366
+ :param _headers: set to override the headers for a single
1367
+ request; this effectively ignores the headers
1368
+ in the spec for a single request.
1369
+ :type _headers: dict, optional
1370
+ :param _host_index: set to override the host_index for a single
1371
+ request; this effectively ignores the host_index
1372
+ in the spec for a single request.
1373
+ :type _host_index: int, optional
1374
+ :return: Returns the result object.
1375
+ """ # noqa: E501
1376
+
1377
+ _param = self._send_sync_ack_serialize(
1378
+ sync_ack_set_dto=sync_ack_set_dto,
1379
+ _request_auth=_request_auth,
1380
+ _content_type=_content_type,
1381
+ _headers=_headers,
1382
+ _host_index=_host_index,
1383
+ )
1384
+
1385
+ _response_types_map: Dict[str, Optional[str]] = {
1386
+ "204": None,
1387
+ }
1388
+ response_data = await self.api_client.call_api(
1389
+ *_param, _request_timeout=_request_timeout
1390
+ )
1391
+ await response_data.read()
1392
+ return self.api_client.response_deserialize(
1393
+ response_data=response_data,
1394
+ response_types_map=_response_types_map,
1395
+ )
1396
+
1397
+ @validate_call
1398
+ async def send_sync_ack_without_preload_content(
1399
+ self,
1400
+ sync_ack_set_dto: SyncAckSetDto,
1401
+ _request_timeout: Union[
1402
+ None,
1403
+ Annotated[StrictFloat, Field(gt=0)],
1404
+ Tuple[
1405
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1406
+ ],
1407
+ ] = None,
1408
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1409
+ _content_type: Optional[StrictStr] = None,
1410
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1411
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1412
+ ) -> RESTResponseType:
1413
+ """Acknowledge changes
1414
+
1415
+ Send a list of synchronization acknowledgements to confirm that the latest changes have been received.
1416
+
1417
+ :param sync_ack_set_dto: (required)
1418
+ :type sync_ack_set_dto: SyncAckSetDto
1419
+ :param _request_timeout: timeout setting for this request. If one
1420
+ number provided, it will be total request
1421
+ timeout. It can also be a pair (tuple) of
1422
+ (connection, read) timeouts.
1423
+ :type _request_timeout: int, tuple(int, int), optional
1424
+ :param _request_auth: set to override the auth_settings for an a single
1425
+ request; this effectively ignores the
1426
+ authentication in the spec for a single request.
1427
+ :type _request_auth: dict, optional
1428
+ :param _content_type: force content-type for the request.
1429
+ :type _content_type: str, Optional
1430
+ :param _headers: set to override the headers for a single
1431
+ request; this effectively ignores the headers
1432
+ in the spec for a single request.
1433
+ :type _headers: dict, optional
1434
+ :param _host_index: set to override the host_index for a single
1435
+ request; this effectively ignores the host_index
1436
+ in the spec for a single request.
1437
+ :type _host_index: int, optional
1438
+ :return: Returns the result object.
1439
+ """ # noqa: E501
1440
+
1441
+ _param = self._send_sync_ack_serialize(
1442
+ sync_ack_set_dto=sync_ack_set_dto,
1443
+ _request_auth=_request_auth,
1444
+ _content_type=_content_type,
1445
+ _headers=_headers,
1446
+ _host_index=_host_index,
1447
+ )
1448
+
1449
+ _response_types_map: Dict[str, Optional[str]] = {
1450
+ "204": None,
1451
+ }
1452
+ response_data = await self.api_client.call_api(
1453
+ *_param, _request_timeout=_request_timeout
1454
+ )
1455
+ return response_data.response
1456
+
1457
+ def _send_sync_ack_serialize(
1458
+ self,
1459
+ sync_ack_set_dto,
1460
+ _request_auth,
1461
+ _content_type,
1462
+ _headers,
1463
+ _host_index,
1464
+ ) -> RequestSerialized:
1465
+ _host = None
1466
+
1467
+ _collection_formats: Dict[str, str] = {}
1468
+
1469
+ _path_params: Dict[str, str] = {}
1470
+ _query_params: List[Tuple[str, str]] = []
1471
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1472
+ _form_params: List[Tuple[str, str]] = []
1473
+ _files: Dict[
1474
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1475
+ ] = {}
1476
+ _body_params: Optional[bytes] = None
1477
+
1478
+ # process the path parameters
1479
+ # process the query parameters
1480
+ # process the header parameters
1481
+ # process the form parameters
1482
+ # process the body parameter
1483
+ if sync_ack_set_dto is not None:
1484
+ _body_params = sync_ack_set_dto
1485
+
1486
+ # set the HTTP header `Content-Type`
1487
+ if _content_type:
1488
+ _header_params["Content-Type"] = _content_type
1489
+ else:
1490
+ _default_content_type = self.api_client.select_header_content_type(
1491
+ ["application/json"]
1492
+ )
1493
+ if _default_content_type is not None:
1494
+ _header_params["Content-Type"] = _default_content_type
1495
+
1496
+ # authentication setting
1497
+ _auth_settings: List[str] = ["cookie", "api_key", "bearer"]
1498
+
1499
+ return self.api_client.param_serialize(
1500
+ method="POST",
1501
+ resource_path="/sync/ack",
1502
+ path_params=_path_params,
1503
+ query_params=_query_params,
1504
+ header_params=_header_params,
1505
+ body=_body_params,
1506
+ post_params=_form_params,
1507
+ files=_files,
1508
+ auth_settings=_auth_settings,
1509
+ collection_formats=_collection_formats,
1510
+ _host=_host,
1511
+ _request_auth=_request_auth,
1512
+ )