flywheel-sdk 21.2.0__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 (772) hide show
  1. flywheel/__init__.py +784 -0
  2. flywheel/api/__init__.py +46 -0
  3. flywheel/api/acquisitions_api.py +5014 -0
  4. flywheel/api/analyses_api.py +3848 -0
  5. flywheel/api/audit_trail_api.py +568 -0
  6. flywheel/api/auth_api.py +121 -0
  7. flywheel/api/batch_api.py +630 -0
  8. flywheel/api/bulk_api.py +140 -0
  9. flywheel/api/change_log_api.py +254 -0
  10. flywheel/api/collections_api.py +3913 -0
  11. flywheel/api/config_api.py +299 -0
  12. flywheel/api/container_tasks_api.py +137 -0
  13. flywheel/api/container_type_api.py +137 -0
  14. flywheel/api/containers_api.py +4784 -0
  15. flywheel/api/custom_filters_api.py +466 -0
  16. flywheel/api/data_view_executions_api.py +549 -0
  17. flywheel/api/dataexplorer_api.py +1192 -0
  18. flywheel/api/devices_api.py +1071 -0
  19. flywheel/api/dimse_api.py +814 -0
  20. flywheel/api/download_api.py +261 -0
  21. flywheel/api/files_api.py +1868 -0
  22. flywheel/api/form_responses_api.py +703 -0
  23. flywheel/api/gears_api.py +1875 -0
  24. flywheel/api/groups_api.py +2829 -0
  25. flywheel/api/jobs_api.py +2320 -0
  26. flywheel/api/jupyterlab_servers_api.py +245 -0
  27. flywheel/api/modalities_api.py +562 -0
  28. flywheel/api/packfiles_api.py +121 -0
  29. flywheel/api/projects_api.py +7820 -0
  30. flywheel/api/protocols_api.py +757 -0
  31. flywheel/api/reports_api.py +1057 -0
  32. flywheel/api/resolve_api.py +276 -0
  33. flywheel/api/roles_api.py +563 -0
  34. flywheel/api/sessions_api.py +5296 -0
  35. flywheel/api/site_api.py +1552 -0
  36. flywheel/api/staffing_pools_api.py +677 -0
  37. flywheel/api/subjects_api.py +5349 -0
  38. flywheel/api/tasks_api.py +897 -0
  39. flywheel/api/tree_api.py +266 -0
  40. flywheel/api/uids_api.py +140 -0
  41. flywheel/api/upload_api.py +842 -0
  42. flywheel/api/users_api.py +2142 -0
  43. flywheel/api/views_api.py +1089 -0
  44. flywheel/api_client.py +748 -0
  45. flywheel/client.py +291 -0
  46. flywheel/configuration.py +308 -0
  47. flywheel/drone_login.py +65 -0
  48. flywheel/file_spec.py +67 -0
  49. flywheel/finder.py +168 -0
  50. flywheel/flywheel.py +9867 -0
  51. flywheel/gear_context.py +374 -0
  52. flywheel/models/__init__.py +726 -0
  53. flywheel/models/access_level.py +30 -0
  54. flywheel/models/access_permission.py +197 -0
  55. flywheel/models/access_permission_output.py +192 -0
  56. flywheel/models/access_permission_update.py +166 -0
  57. flywheel/models/access_type.py +54 -0
  58. flywheel/models/accumulator.py +33 -0
  59. flywheel/models/acquisition.py +25 -0
  60. flywheel/models/acquisition_container_output.py +34 -0
  61. flywheel/models/acquisition_copy_input.py +223 -0
  62. flywheel/models/acquisition_input.py +297 -0
  63. flywheel/models/acquisition_list_output.py +767 -0
  64. flywheel/models/acquisition_modify_input.py +299 -0
  65. flywheel/models/acquisition_node.py +35 -0
  66. flywheel/models/acquisition_output.py +767 -0
  67. flywheel/models/acquisition_parents.py +241 -0
  68. flywheel/models/acquisition_template_options.py +275 -0
  69. flywheel/models/acquisition_upsert_input.py +383 -0
  70. flywheel/models/acquisition_upsert_output.py +243 -0
  71. flywheel/models/action.py +91 -0
  72. flywheel/models/adhoc_analysis_input.py +247 -0
  73. flywheel/models/analysis.py +25 -0
  74. flywheel/models/analysis_container_output.py +34 -0
  75. flywheel/models/analysis_files_create_ticket_output.py +241 -0
  76. flywheel/models/analysis_input.py +310 -0
  77. flywheel/models/analysis_input_legacy.py +25 -0
  78. flywheel/models/analysis_list_output.py +680 -0
  79. flywheel/models/analysis_list_output_inflated_job.py +650 -0
  80. flywheel/models/analysis_modify_input.py +191 -0
  81. flywheel/models/analysis_node.py +35 -0
  82. flywheel/models/analysis_output.py +683 -0
  83. flywheel/models/analysis_output_inflated_job.py +674 -0
  84. flywheel/models/analysis_parents.py +270 -0
  85. flywheel/models/analysis_update.py +25 -0
  86. flywheel/models/api_key_input_with_optional_label.py +191 -0
  87. flywheel/models/api_key_output.py +297 -0
  88. flywheel/models/as_storage.py +298 -0
  89. flywheel/models/assignee.py +192 -0
  90. flywheel/models/assignee_type.py +29 -0
  91. flywheel/models/audit_trail_report.py +486 -0
  92. flywheel/models/audit_trail_report_status.py +32 -0
  93. flywheel/models/auth0_auth_out.py +323 -0
  94. flywheel/models/auth0_options_out.py +319 -0
  95. flywheel/models/auth_out.py +357 -0
  96. flywheel/models/auth_session_output.py +272 -0
  97. flywheel/models/avatars.py +218 -0
  98. flywheel/models/aws_creds.py +191 -0
  99. flywheel/models/aws_storage.py +354 -0
  100. flywheel/models/azure_creds.py +190 -0
  101. flywheel/models/base_aet.py +245 -0
  102. flywheel/models/base_compute.py +426 -0
  103. flywheel/models/batch.py +360 -0
  104. flywheel/models/batch_cancel_output.py +36 -0
  105. flywheel/models/batch_create_filters.py +220 -0
  106. flywheel/models/batch_job_analysis_input.py +281 -0
  107. flywheel/models/batch_jobs_proposal_input.py +36 -0
  108. flywheel/models/batch_proposal.py +25 -0
  109. flywheel/models/batch_proposal_detail.py +36 -0
  110. flywheel/models/batch_proposal_input.py +25 -0
  111. flywheel/models/body.py +36 -0
  112. flywheel/models/body_regenerate_key_api_devices_device_id_key_post.py +25 -0
  113. flywheel/models/body_region.py +46 -0
  114. flywheel/models/bookmark.py +189 -0
  115. flywheel/models/bulk_move_input.py +272 -0
  116. flywheel/models/bulk_move_sessions.py +25 -0
  117. flywheel/models/callbacks_virus_scan_input.py +36 -0
  118. flywheel/models/cancelled_batch_output.py +163 -0
  119. flywheel/models/catalog_list_output.py +407 -0
  120. flywheel/models/central_out.py +299 -0
  121. flywheel/models/change.py +379 -0
  122. flywheel/models/change_log_container_type.py +38 -0
  123. flywheel/models/change_log_document.py +245 -0
  124. flywheel/models/change_method.py +33 -0
  125. flywheel/models/classic_batch_job_output.py +352 -0
  126. flywheel/models/classic_batch_job_output_inflated_jobs.py +379 -0
  127. flywheel/models/classic_batch_proposal_input.py +388 -0
  128. flywheel/models/classic_batch_proposal_output.py +471 -0
  129. flywheel/models/classification_add_delete.py +36 -0
  130. flywheel/models/classification_replace.py +36 -0
  131. flywheel/models/classification_update_input.py +36 -0
  132. flywheel/models/cohort.py +29 -0
  133. flywheel/models/collection.py +25 -0
  134. flywheel/models/collection_container_output.py +32 -0
  135. flywheel/models/collection_input.py +217 -0
  136. flywheel/models/collection_input_with_contents.py +248 -0
  137. flywheel/models/collection_node.py +192 -0
  138. flywheel/models/collection_node_level.py +31 -0
  139. flywheel/models/collection_operation.py +193 -0
  140. flywheel/models/collection_operation_type.py +29 -0
  141. flywheel/models/collection_output.py +639 -0
  142. flywheel/models/collection_with_stats.py +637 -0
  143. flywheel/models/column.py +286 -0
  144. flywheel/models/column_type.py +32 -0
  145. flywheel/models/common_classification.py +135 -0
  146. flywheel/models/common_deleted_count.py +25 -0
  147. flywheel/models/common_editions.py +25 -0
  148. flywheel/models/common_info.py +135 -0
  149. flywheel/models/common_join_origins.py +25 -0
  150. flywheel/models/common_key.py +36 -0
  151. flywheel/models/common_modified_count.py +25 -0
  152. flywheel/models/common_object_created.py +36 -0
  153. flywheel/models/common_project_settings.py +25 -0
  154. flywheel/models/common_settings.py +36 -0
  155. flywheel/models/complete_multipart_upload_output.py +189 -0
  156. flywheel/models/complete_s3_multipart_upload_input.py +241 -0
  157. flywheel/models/config_feature_map.py +36 -0
  158. flywheel/models/config_out.py +381 -0
  159. flywheel/models/config_output.py +36 -0
  160. flywheel/models/config_site_config_output.py +36 -0
  161. flywheel/models/config_site_settings.py +36 -0
  162. flywheel/models/config_site_settings_input.py +36 -0
  163. flywheel/models/conflict_types.py +30 -0
  164. flywheel/models/container_delete_reason.py +39 -0
  165. flywheel/models/container_filter.py +193 -0
  166. flywheel/models/container_id_view_input.py +521 -0
  167. flywheel/models/container_id_view_input_execute_and_save.py +308 -0
  168. flywheel/models/container_modify.py +536 -0
  169. flywheel/models/container_new_output.py +25 -0
  170. flywheel/models/container_node_min.py +350 -0
  171. flywheel/models/container_output.py +36 -0
  172. flywheel/models/container_output_with_files.py +283 -0
  173. flywheel/models/container_parents.py +311 -0
  174. flywheel/models/container_pipeline_input.py +536 -0
  175. flywheel/models/container_project_parents.py +25 -0
  176. flywheel/models/container_reference.py +193 -0
  177. flywheel/models/container_reference_with_label.py +219 -0
  178. flywheel/models/container_session_parents.py +25 -0
  179. flywheel/models/container_subject_parents.py +25 -0
  180. flywheel/models/container_type.py +39 -0
  181. flywheel/models/container_uidcheck.py +253 -0
  182. flywheel/models/container_update.py +135 -0
  183. flywheel/models/context_input.py +217 -0
  184. flywheel/models/copy_filter.py +299 -0
  185. flywheel/models/copy_status.py +32 -0
  186. flywheel/models/core_models_api_key_api_key_input.py +190 -0
  187. flywheel/models/core_models_audit_trail_create_report_input.py +273 -0
  188. flywheel/models/core_models_audit_trail_modify_report_input.py +167 -0
  189. flywheel/models/core_models_common_source.py +189 -0
  190. flywheel/models/core_models_jobs_api_key_input.py +191 -0
  191. flywheel/models/core_models_search_parent_type.py +33 -0
  192. flywheel/models/core_workflows_form_responses_models_form_parents.py +163 -0
  193. flywheel/models/core_workflows_form_responses_models_form_response_output.py +440 -0
  194. flywheel/models/core_workflows_reader_models_reader_task_parents.py +295 -0
  195. flywheel/models/creds.py +135 -0
  196. flywheel/models/curator.py +221 -0
  197. flywheel/models/current_user_output.py +707 -0
  198. flywheel/models/custom_field.py +437 -0
  199. flywheel/models/custom_form.py +244 -0
  200. flywheel/models/cvat_info.py +275 -0
  201. flywheel/models/cvat_settings.py +272 -0
  202. flywheel/models/cvat_settings_input.py +272 -0
  203. flywheel/models/cvat_sync_state.py +30 -0
  204. flywheel/models/daily_report_usage.py +565 -0
  205. flywheel/models/data_strategy.py +29 -0
  206. flywheel/models/data_view.py +25 -0
  207. flywheel/models/data_view_analysis_file_spec.py +221 -0
  208. flywheel/models/data_view_analysis_filter_spec.py +221 -0
  209. flywheel/models/data_view_column_alias.py +337 -0
  210. flywheel/models/data_view_column_spec.py +286 -0
  211. flywheel/models/data_view_execution.py +505 -0
  212. flywheel/models/data_view_execution_state.py +31 -0
  213. flywheel/models/data_view_file_spec.py +392 -0
  214. flywheel/models/data_view_group_by.py +166 -0
  215. flywheel/models/data_view_group_by_column.py +194 -0
  216. flywheel/models/data_view_name_filter_spec.py +194 -0
  217. flywheel/models/data_view_output.py +25 -0
  218. flywheel/models/data_view_save_data_view_input.py +25 -0
  219. flywheel/models/data_view_zip_filter_spec.py +223 -0
  220. flywheel/models/default_flywheel_role.py +30 -0
  221. flywheel/models/deid_log_skip_reason.py +29 -0
  222. flywheel/models/delete_by_search_query.py +253 -0
  223. flywheel/models/deleted_file.py +514 -0
  224. flywheel/models/deleted_result.py +194 -0
  225. flywheel/models/deprecated_action.py +29 -0
  226. flywheel/models/destination_container_type.py +30 -0
  227. flywheel/models/device.py +437 -0
  228. flywheel/models/device_admin_update.py +194 -0
  229. flywheel/models/device_create.py +219 -0
  230. flywheel/models/device_self_update.py +272 -0
  231. flywheel/models/device_status.py +36 -0
  232. flywheel/models/device_status_entry.py +221 -0
  233. flywheel/models/device_storage_strategy_update.py +193 -0
  234. flywheel/models/dimse_project_input.py +36 -0
  235. flywheel/models/dimse_project_output.py +36 -0
  236. flywheel/models/dimse_service_input.py +36 -0
  237. flywheel/models/dimse_service_output.py +36 -0
  238. flywheel/models/download.py +249 -0
  239. flywheel/models/download_container_filter.py +167 -0
  240. flywheel/models/download_container_filter_definition.py +222 -0
  241. flywheel/models/download_filter.py +221 -0
  242. flywheel/models/download_filter_definition.py +195 -0
  243. flywheel/models/download_format.py +29 -0
  244. flywheel/models/download_input.py +25 -0
  245. flywheel/models/download_node.py +189 -0
  246. flywheel/models/download_strategy.py +31 -0
  247. flywheel/models/download_ticket.py +36 -0
  248. flywheel/models/download_ticket_stub.py +249 -0
  249. flywheel/models/download_ticket_with_summary.py +36 -0
  250. flywheel/models/e_signature.py +242 -0
  251. flywheel/models/edition.py +169 -0
  252. flywheel/models/egress_device.py +597 -0
  253. flywheel/models/egress_device_page.py +219 -0
  254. flywheel/models/egress_provider.py +408 -0
  255. flywheel/models/egress_provider_id.py +164 -0
  256. flywheel/models/exchange_storage.py +243 -0
  257. flywheel/models/executor_info.py +353 -0
  258. flywheel/models/export_templates.py +195 -0
  259. flywheel/models/features.py +1838 -0
  260. flywheel/models/field_change.py +271 -0
  261. flywheel/models/field_change_log_document.py +245 -0
  262. flywheel/models/field_type.py +37 -0
  263. flywheel/models/file.py +1139 -0
  264. flywheel/models/file_classification_delta.py +245 -0
  265. flywheel/models/file_container_type.py +34 -0
  266. flywheel/models/file_entry.py +740 -0
  267. flywheel/models/file_export_templates.py +272 -0
  268. flywheel/models/file_format.py +33 -0
  269. flywheel/models/file_gear_info.py +215 -0
  270. flywheel/models/file_group.py +29 -0
  271. flywheel/models/file_list_output.py +1115 -0
  272. flywheel/models/file_modify_input.py +191 -0
  273. flywheel/models/file_move_input.py +221 -0
  274. flywheel/models/file_node.py +1138 -0
  275. flywheel/models/file_node_min.py +321 -0
  276. flywheel/models/file_origin.py +283 -0
  277. flywheel/models/file_output.py +1135 -0
  278. flywheel/models/file_parents.py +297 -0
  279. flywheel/models/file_reference.py +221 -0
  280. flywheel/models/file_suggestion.py +241 -0
  281. flywheel/models/file_template_options.py +299 -0
  282. flywheel/models/file_upsert_input.py +612 -0
  283. flywheel/models/file_upsert_origin.py +36 -0
  284. flywheel/models/file_upsert_output.py +1154 -0
  285. flywheel/models/file_version.py +190 -0
  286. flywheel/models/file_version_copy_of.py +273 -0
  287. flywheel/models/file_version_output.py +325 -0
  288. flywheel/models/file_via.py +245 -0
  289. flywheel/models/file_zip_entry.py +25 -0
  290. flywheel/models/file_zip_info.py +25 -0
  291. flywheel/models/filter.py +350 -0
  292. flywheel/models/filter_input.py +218 -0
  293. flywheel/models/filter_values.py +195 -0
  294. flywheel/models/filter_view.py +28 -0
  295. flywheel/models/fixed_file_version_input.py +216 -0
  296. flywheel/models/fixed_input.py +299 -0
  297. flywheel/models/form_definition.py +163 -0
  298. flywheel/models/form_response_base.py +311 -0
  299. flywheel/models/form_response_create.py +193 -0
  300. flywheel/models/gcp_creds.py +397 -0
  301. flywheel/models/gcp_storage.py +298 -0
  302. flywheel/models/gear.py +619 -0
  303. flywheel/models/gear_category.py +32 -0
  304. flywheel/models/gear_config.py +138 -0
  305. flywheel/models/gear_context_input.py +164 -0
  306. flywheel/models/gear_context_lookup.py +25 -0
  307. flywheel/models/gear_context_lookup_item.py +36 -0
  308. flywheel/models/gear_context_value_output.py +272 -0
  309. flywheel/models/gear_context_value_output_unfound.py +164 -0
  310. flywheel/models/gear_custom.py +135 -0
  311. flywheel/models/gear_directive.py +135 -0
  312. flywheel/models/gear_doc.py +25 -0
  313. flywheel/models/gear_document.py +332 -0
  314. flywheel/models/gear_document_input.py +303 -0
  315. flywheel/models/gear_document_legacy_input.py +302 -0
  316. flywheel/models/gear_environment.py +135 -0
  317. flywheel/models/gear_exchange.py +221 -0
  318. flywheel/models/gear_file_input.py +192 -0
  319. flywheel/models/gear_id_output.py +170 -0
  320. flywheel/models/gear_info.py +251 -0
  321. flywheel/models/gear_input_item.py +231 -0
  322. flywheel/models/gear_inputs.py +140 -0
  323. flywheel/models/gear_invocation.py +138 -0
  324. flywheel/models/gear_key_input.py +191 -0
  325. flywheel/models/gear_manifest.py +624 -0
  326. flywheel/models/gear_mixin.py +218 -0
  327. flywheel/models/gear_node.py +355 -0
  328. flywheel/models/gear_output_configuration.py +164 -0
  329. flywheel/models/gear_permissions.py +191 -0
  330. flywheel/models/gear_permissions_input.py +163 -0
  331. flywheel/models/gear_permissions_type.py +29 -0
  332. flywheel/models/gear_return_ticket.py +25 -0
  333. flywheel/models/gear_rule.py +653 -0
  334. flywheel/models/gear_rule_condition.py +219 -0
  335. flywheel/models/gear_rule_condition_type.py +37 -0
  336. flywheel/models/gear_rule_input.py +517 -0
  337. flywheel/models/gear_rule_modify_input.py +492 -0
  338. flywheel/models/gear_rule_output.py +652 -0
  339. flywheel/models/gear_save_submission.py +221 -0
  340. flywheel/models/gear_series.py +298 -0
  341. flywheel/models/gear_series_update.py +163 -0
  342. flywheel/models/gear_suggestion_output.py +301 -0
  343. flywheel/models/gear_ticket.py +245 -0
  344. flywheel/models/gear_ticket_output.py +163 -0
  345. flywheel/models/google_auth_out.py +299 -0
  346. flywheel/models/graph_filter.py +329 -0
  347. flywheel/models/group.py +25 -0
  348. flywheel/models/group_by.py +163 -0
  349. flywheel/models/group_by_column.py +36 -0
  350. flywheel/models/group_container_output.py +33 -0
  351. flywheel/models/group_input.py +248 -0
  352. flywheel/models/group_metadata_input.py +36 -0
  353. flywheel/models/group_node.py +34 -0
  354. flywheel/models/group_output.py +471 -0
  355. flywheel/models/group_report.py +218 -0
  356. flywheel/models/group_role.py +163 -0
  357. flywheel/models/group_settings_output.py +249 -0
  358. flywheel/models/group_update.py +249 -0
  359. flywheel/models/header_feature.py +37 -0
  360. flywheel/models/hierarchy_export_templates.py +272 -0
  361. flywheel/models/http_validation_error.py +167 -0
  362. flywheel/models/info.py +218 -0
  363. flywheel/models/info_add_remove.py +36 -0
  364. flywheel/models/info_container_type.py +35 -0
  365. flywheel/models/info_replace.py +36 -0
  366. flywheel/models/info_update_input.py +36 -0
  367. flywheel/models/ingress_provider.py +299 -0
  368. flywheel/models/ingress_providers.py +272 -0
  369. flywheel/models/ingress_site_settings.py +305 -0
  370. flywheel/models/ingress_update_provider.py +218 -0
  371. flywheel/models/inline_response200.py +163 -0
  372. flywheel/models/inline_response2001.py +171 -0
  373. flywheel/models/inline_response2002.py +163 -0
  374. flywheel/models/inline_response2003.py +36 -0
  375. flywheel/models/inline_response2005.py +25 -0
  376. flywheel/models/input_filter.py +221 -0
  377. flywheel/models/input_job.py +521 -0
  378. flywheel/models/input_job_profile.py +275 -0
  379. flywheel/models/inserted_id.py +163 -0
  380. flywheel/models/job.py +841 -0
  381. flywheel/models/job_analysis_input.py +273 -0
  382. flywheel/models/job_ask.py +301 -0
  383. flywheel/models/job_ask_response.py +195 -0
  384. flywheel/models/job_ask_response_job.py +978 -0
  385. flywheel/models/job_ask_return.py +25 -0
  386. flywheel/models/job_ask_return_criteria.py +245 -0
  387. flywheel/models/job_ask_state.py +25 -0
  388. flywheel/models/job_ask_state_response.py +163 -0
  389. flywheel/models/job_complete.py +220 -0
  390. flywheel/models/job_completion_input.py +25 -0
  391. flywheel/models/job_completion_ticket.py +25 -0
  392. flywheel/models/job_config.py +135 -0
  393. flywheel/models/job_config_input.py +272 -0
  394. flywheel/models/job_config_inputs.py +25 -0
  395. flywheel/models/job_config_output.py +25 -0
  396. flywheel/models/job_container_detail.py +25 -0
  397. flywheel/models/job_destination.py +189 -0
  398. flywheel/models/job_detail.py +925 -0
  399. flywheel/models/job_detail_container.py +190 -0
  400. flywheel/models/job_detail_file_entry.py +194 -0
  401. flywheel/models/job_detail_group.py +190 -0
  402. flywheel/models/job_detail_parent_info.py +303 -0
  403. flywheel/models/job_executor_info.py +369 -0
  404. flywheel/models/job_file_input.py +247 -0
  405. flywheel/models/job_file_input_list_output.py +247 -0
  406. flywheel/models/job_file_object.py +435 -0
  407. flywheel/models/job_file_object_list_output.py +407 -0
  408. flywheel/models/job_gear_match.py +25 -0
  409. flywheel/models/job_inputs_array_item.py +305 -0
  410. flywheel/models/job_inputs_item.py +242 -0
  411. flywheel/models/job_inputs_object.py +138 -0
  412. flywheel/models/job_list_entry.py +25 -0
  413. flywheel/models/job_list_output.py +979 -0
  414. flywheel/models/job_list_output_config.py +220 -0
  415. flywheel/models/job_log.py +189 -0
  416. flywheel/models/job_log_column.py +40 -0
  417. flywheel/models/job_log_record.py +192 -0
  418. flywheel/models/job_modify.py +193 -0
  419. flywheel/models/job_origin.py +190 -0
  420. flywheel/models/job_output.py +1005 -0
  421. flywheel/models/job_output_config.py +247 -0
  422. flywheel/models/job_parents.py +297 -0
  423. flywheel/models/job_priority.py +31 -0
  424. flywheel/models/job_priority_update.py +192 -0
  425. flywheel/models/job_profile.py +427 -0
  426. flywheel/models/job_profile_input.py +25 -0
  427. flywheel/models/job_request.py +221 -0
  428. flywheel/models/job_request_item.py +246 -0
  429. flywheel/models/job_request_item_type.py +31 -0
  430. flywheel/models/job_request_target.py +270 -0
  431. flywheel/models/job_state.py +32 -0
  432. flywheel/models/job_state_counts.py +25 -0
  433. flywheel/models/job_stats_by_state.py +25 -0
  434. flywheel/models/job_ticket_output.py +165 -0
  435. flywheel/models/job_transition_times.py +253 -0
  436. flywheel/models/job_version_info.py +135 -0
  437. flywheel/models/jobs_by_state.py +272 -0
  438. flywheel/models/jobs_list.py +166 -0
  439. flywheel/models/join_origin_device.py +164 -0
  440. flywheel/models/join_origin_job.py +219 -0
  441. flywheel/models/join_origin_user.py +189 -0
  442. flywheel/models/join_origins.py +223 -0
  443. flywheel/models/join_type.py +28 -0
  444. flywheel/models/jupyterhub_workspace.py +163 -0
  445. flywheel/models/jupyterlab_server_modify.py +275 -0
  446. flywheel/models/jupyterlab_server_origin.py +25 -0
  447. flywheel/models/jupyterlab_server_output.py +25 -0
  448. flywheel/models/jupyterlab_server_response.py +415 -0
  449. flywheel/models/jupyterlab_server_update.py +25 -0
  450. flywheel/models/ldap_sync.py +36 -0
  451. flywheel/models/ldap_sync_config.py +163 -0
  452. flywheel/models/ldap_sync_input.py +36 -0
  453. flywheel/models/ldap_sync_status.py +250 -0
  454. flywheel/models/legacy_api_key_output.py +271 -0
  455. flywheel/models/legacy_input.py +244 -0
  456. flywheel/models/legacy_usage_report.py +309 -0
  457. flywheel/models/legacys_usage_project_entry.py +194 -0
  458. flywheel/models/libs_workflows_models_parent_type.py +33 -0
  459. flywheel/models/libs_workflows_models_task_status.py +32 -0
  460. flywheel/models/local_storage.py +217 -0
  461. flywheel/models/location.py +189 -0
  462. flywheel/models/locked.py +219 -0
  463. flywheel/models/master_subject_code_dob_input.py +279 -0
  464. flywheel/models/master_subject_code_input.py +281 -0
  465. flywheel/models/master_subject_code_output.py +166 -0
  466. flywheel/models/matched_acquisition_output.py +518 -0
  467. flywheel/models/mfa_channel.py +30 -0
  468. flywheel/models/mfa_settings.py +167 -0
  469. flywheel/models/mixins.py +794 -0
  470. flywheel/models/ml_set_filter.py +194 -0
  471. flywheel/models/ml_type.py +30 -0
  472. flywheel/models/modality.py +250 -0
  473. flywheel/models/modality_input.py +244 -0
  474. flywheel/models/modality_modify.py +218 -0
  475. flywheel/models/modality_output.py +271 -0
  476. flywheel/models/modified_result.py +190 -0
  477. flywheel/models/modify_user_input.py +466 -0
  478. flywheel/models/move_conflict.py +300 -0
  479. flywheel/models/note.py +391 -0
  480. flywheel/models/note_input.py +165 -0
  481. flywheel/models/optional_input_policy.py +30 -0
  482. flywheel/models/order.py +29 -0
  483. flywheel/models/organ_system.py +64 -0
  484. flywheel/models/origin.py +193 -0
  485. flywheel/models/origin_type.py +35 -0
  486. flywheel/models/orphaned_count.py +163 -0
  487. flywheel/models/output_user_page.py +219 -0
  488. flywheel/models/packfile_cleanup_output.py +166 -0
  489. flywheel/models/packfile_removed_output.py +189 -0
  490. flywheel/models/page.py +216 -0
  491. flywheel/models/page_generic_file_output.py +219 -0
  492. flywheel/models/page_generic_filter.py +219 -0
  493. flywheel/models/page_generic_form_response_output.py +219 -0
  494. flywheel/models/page_generic_protocol.py +244 -0
  495. flywheel/models/page_generic_reader_task_output.py +244 -0
  496. flywheel/models/page_generic_staffing_pool.py +244 -0
  497. flywheel/models/parsed_query_response.py +194 -0
  498. flywheel/models/permission_access_permission.py +25 -0
  499. flywheel/models/premade_jobs_batch_job_output.py +298 -0
  500. flywheel/models/premade_jobs_batch_job_output_inflated_jobs.py +299 -0
  501. flywheel/models/premade_jobs_batch_proposal.py +334 -0
  502. flywheel/models/premade_jobs_batch_proposal_detail.py +166 -0
  503. flywheel/models/premade_jobs_batch_proposal_input.py +166 -0
  504. flywheel/models/project.py +25 -0
  505. flywheel/models/project_acquisition_upsert_input.py +25 -0
  506. flywheel/models/project_acquisition_upsert_output.py +25 -0
  507. flywheel/models/project_aet.py +331 -0
  508. flywheel/models/project_aet_input.py +248 -0
  509. flywheel/models/project_catalog_list_output.py +25 -0
  510. flywheel/models/project_contact.py +194 -0
  511. flywheel/models/project_container_output.py +41 -0
  512. flywheel/models/project_copy_input.py +245 -0
  513. flywheel/models/project_copy_output.py +215 -0
  514. flywheel/models/project_counters.py +346 -0
  515. flywheel/models/project_hierarchy_input.py +278 -0
  516. flywheel/models/project_hierarchy_output.py +222 -0
  517. flywheel/models/project_hierarchy_upsert_input.py +25 -0
  518. flywheel/models/project_hierarchy_upsert_output.py +25 -0
  519. flywheel/models/project_input.py +384 -0
  520. flywheel/models/project_institution.py +194 -0
  521. flywheel/models/project_list_output.py +897 -0
  522. flywheel/models/project_locking_reason.py +32 -0
  523. flywheel/models/project_modify.py +413 -0
  524. flywheel/models/project_node.py +42 -0
  525. flywheel/models/project_output.py +899 -0
  526. flywheel/models/project_parents.py +168 -0
  527. flywheel/models/project_report.py +463 -0
  528. flywheel/models/project_report_list.py +167 -0
  529. flywheel/models/project_session_upsert_input.py +25 -0
  530. flywheel/models/project_session_upsert_output.py +25 -0
  531. flywheel/models/project_settings_input.py +333 -0
  532. flywheel/models/project_settings_output.py +333 -0
  533. flywheel/models/project_settings_sharing.py +327 -0
  534. flywheel/models/project_settings_sharing_input.py +334 -0
  535. flywheel/models/project_settings_workspaces.py +167 -0
  536. flywheel/models/project_settings_workspaces_input.py +167 -0
  537. flywheel/models/project_share_level.py +29 -0
  538. flywheel/models/project_sharing_settings_project_contact.py +25 -0
  539. flywheel/models/project_sharing_settings_project_counters.py +36 -0
  540. flywheel/models/project_sharing_settings_project_institution.py +25 -0
  541. flywheel/models/project_sharing_settings_project_settings_input.py +25 -0
  542. flywheel/models/project_sharing_settings_project_settings_output.py +25 -0
  543. flywheel/models/project_sharing_settings_project_settings_sharing.py +25 -0
  544. flywheel/models/project_sharing_settings_project_settings_sharing_input.py +25 -0
  545. flywheel/models/project_sharing_settings_project_stats.py +36 -0
  546. flywheel/models/project_stats.py +270 -0
  547. flywheel/models/project_subject_upsert_input.py +25 -0
  548. flywheel/models/project_subject_upsert_output.py +25 -0
  549. flywheel/models/project_template.py +195 -0
  550. flywheel/models/project_template_input.py +195 -0
  551. flywheel/models/project_template_list_input.py +166 -0
  552. flywheel/models/project_template_requirement.py +36 -0
  553. flywheel/models/project_template_session_template.py +36 -0
  554. flywheel/models/project_upsert_origin.py +36 -0
  555. flywheel/models/protocol.py +515 -0
  556. flywheel/models/protocol_e_signature_config.py +191 -0
  557. flywheel/models/protocol_input.py +354 -0
  558. flywheel/models/protocol_modify.py +277 -0
  559. flywheel/models/protocol_status.py +30 -0
  560. flywheel/models/provider.py +461 -0
  561. flywheel/models/provider_access_type.py +29 -0
  562. flywheel/models/provider_class.py +29 -0
  563. flywheel/models/provider_deletion_status.py +189 -0
  564. flywheel/models/provider_input.py +25 -0
  565. flywheel/models/provider_links.py +282 -0
  566. flywheel/models/provider_type.py +34 -0
  567. flywheel/models/providers.py +277 -0
  568. flywheel/models/reader_batch_create.py +463 -0
  569. flywheel/models/reader_task.py +725 -0
  570. flywheel/models/reader_task_config.py +189 -0
  571. flywheel/models/reader_task_create.py +543 -0
  572. flywheel/models/reader_task_modify.py +303 -0
  573. flywheel/models/reader_task_output.py +752 -0
  574. flywheel/models/reader_task_parent_details.py +322 -0
  575. flywheel/models/report_access_log_context.py +301 -0
  576. flywheel/models/report_access_log_context_entry.py +194 -0
  577. flywheel/models/report_access_log_context_file_entry.py +165 -0
  578. flywheel/models/report_access_log_entry.py +624 -0
  579. flywheel/models/report_access_log_origin.py +194 -0
  580. flywheel/models/report_availability_list.py +167 -0
  581. flywheel/models/report_daily_usage_entry.py +501 -0
  582. flywheel/models/report_demographics_grid.py +36 -0
  583. flywheel/models/report_ethnicity_grid.py +252 -0
  584. flywheel/models/report_gender_count.py +222 -0
  585. flywheel/models/report_group_report.py +217 -0
  586. flywheel/models/report_legacy_usage_entry.py +36 -0
  587. flywheel/models/report_legacy_usage_project_entry.py +36 -0
  588. flywheel/models/report_project.py +25 -0
  589. flywheel/models/report_site.py +192 -0
  590. flywheel/models/report_time_period.py +193 -0
  591. flywheel/models/report_usage.py +630 -0
  592. flywheel/models/report_usage_entry.py +25 -0
  593. flywheel/models/resolve_input.py +163 -0
  594. flywheel/models/resolve_output.py +194 -0
  595. flywheel/models/resolver_acquisition_node.py +36 -0
  596. flywheel/models/resolver_analysis_node.py +36 -0
  597. flywheel/models/resolver_file_node.py +36 -0
  598. flywheel/models/resolver_gear_node.py +36 -0
  599. flywheel/models/resolver_group_node.py +36 -0
  600. flywheel/models/resolver_input.py +25 -0
  601. flywheel/models/resolver_node.py +182 -0
  602. flywheel/models/resolver_output.py +25 -0
  603. flywheel/models/resolver_project_node.py +36 -0
  604. flywheel/models/resolver_session_node.py +36 -0
  605. flywheel/models/resolver_subject_node.py +36 -0
  606. flywheel/models/role_input.py +192 -0
  607. flywheel/models/role_output.py +273 -0
  608. flywheel/models/role_permission.py +194 -0
  609. flywheel/models/role_permission_output.py +189 -0
  610. flywheel/models/role_permission_update.py +163 -0
  611. flywheel/models/role_type.py +32 -0
  612. flywheel/models/role_update.py +194 -0
  613. flywheel/models/roles_backwards_compatible_role_assignment.py +36 -0
  614. flywheel/models/roles_group_role_pool_input.py +36 -0
  615. flywheel/models/roles_role.py +36 -0
  616. flywheel/models/roles_role_assignment.py +195 -0
  617. flywheel/models/roles_role_input.py +36 -0
  618. flywheel/models/rule.py +467 -0
  619. flywheel/models/rule_any.py +216 -0
  620. flywheel/models/s3_addressing_style.py +29 -0
  621. flywheel/models/s3_compat_storage.py +381 -0
  622. flywheel/models/save_search.py +298 -0
  623. flywheel/models/save_search_input.py +219 -0
  624. flywheel/models/save_search_output.py +301 -0
  625. flywheel/models/save_search_page.py +219 -0
  626. flywheel/models/save_search_parent.py +192 -0
  627. flywheel/models/save_search_update.py +194 -0
  628. flywheel/models/search_acquisition_response.py +252 -0
  629. flywheel/models/search_analysis_response.py +254 -0
  630. flywheel/models/search_collection_response.py +254 -0
  631. flywheel/models/search_file_response.py +312 -0
  632. flywheel/models/search_group_response.py +196 -0
  633. flywheel/models/search_parent_acquisition.py +47 -0
  634. flywheel/models/search_parent_analysis.py +47 -0
  635. flywheel/models/search_parent_collection.py +46 -0
  636. flywheel/models/search_parent_project.py +54 -0
  637. flywheel/models/search_parent_response.py +213 -0
  638. flywheel/models/search_parent_session.py +48 -0
  639. flywheel/models/search_parent_subject.py +48 -0
  640. flywheel/models/search_parse_error.py +252 -0
  641. flywheel/models/search_parse_search_query_result.py +36 -0
  642. flywheel/models/search_project_response.py +196 -0
  643. flywheel/models/search_query.py +337 -0
  644. flywheel/models/search_query_suggestions.py +36 -0
  645. flywheel/models/search_response.py +448 -0
  646. flywheel/models/search_return_type.py +33 -0
  647. flywheel/models/search_save_search.py +36 -0
  648. flywheel/models/search_save_search_input.py +36 -0
  649. flywheel/models/search_save_search_parent.py +36 -0
  650. flywheel/models/search_save_search_update.py +36 -0
  651. flywheel/models/search_session_response.py +252 -0
  652. flywheel/models/search_status.py +166 -0
  653. flywheel/models/search_structured_search_query.py +25 -0
  654. flywheel/models/search_subject_response.py +225 -0
  655. flywheel/models/search_suggestion.py +36 -0
  656. flywheel/models/select_item.py +190 -0
  657. flywheel/models/server_state.py +303 -0
  658. flywheel/models/service_aet.py +301 -0
  659. flywheel/models/service_aet_input.py +276 -0
  660. flywheel/models/session.py +25 -0
  661. flywheel/models/session_container_output.py +35 -0
  662. flywheel/models/session_copy_input.py +253 -0
  663. flywheel/models/session_embedded_subject.py +299 -0
  664. flywheel/models/session_input.py +431 -0
  665. flywheel/models/session_list_output.py +897 -0
  666. flywheel/models/session_metadata_input.py +36 -0
  667. flywheel/models/session_modify.py +464 -0
  668. flywheel/models/session_node.py +36 -0
  669. flywheel/models/session_output.py +897 -0
  670. flywheel/models/session_parents.py +220 -0
  671. flywheel/models/session_template_options.py +221 -0
  672. flywheel/models/session_template_recalc_output.py +165 -0
  673. flywheel/models/session_upsert_input.py +464 -0
  674. flywheel/models/session_upsert_output.py +243 -0
  675. flywheel/models/sharing_filter_options.py +345 -0
  676. flywheel/models/signed_fs_upload_output.py +189 -0
  677. flywheel/models/signed_url_cleanup_input.py +189 -0
  678. flywheel/models/signed_url_upload_input.py +190 -0
  679. flywheel/models/signed_url_upload_output.py +349 -0
  680. flywheel/models/site.py +623 -0
  681. flywheel/models/site_report.py +194 -0
  682. flywheel/models/site_settings.py +385 -0
  683. flywheel/models/sort.py +192 -0
  684. flywheel/models/stable_api_key_input.py +25 -0
  685. flywheel/models/staffing_pool.py +324 -0
  686. flywheel/models/staffing_pool_create.py +216 -0
  687. flywheel/models/staffing_pool_list.py +164 -0
  688. flywheel/models/staffing_pool_modify.py +218 -0
  689. flywheel/models/state.py +32 -0
  690. flywheel/models/static_compute.py +218 -0
  691. flywheel/models/status_transitions.py +245 -0
  692. flywheel/models/status_type.py +31 -0
  693. flywheel/models/status_value.py +31 -0
  694. flywheel/models/storage_strategy.py +30 -0
  695. flywheel/models/storage_strategy_config.py +194 -0
  696. flywheel/models/structured_query.py +165 -0
  697. flywheel/models/structured_query_suggestions.py +196 -0
  698. flywheel/models/structured_query_value_suggestion.py +247 -0
  699. flywheel/models/subject.py +34 -0
  700. flywheel/models/subject_container_output.py +36 -0
  701. flywheel/models/subject_copy_input.py +223 -0
  702. flywheel/models/subject_input.py +627 -0
  703. flywheel/models/subject_modify.py +684 -0
  704. flywheel/models/subject_node.py +37 -0
  705. flywheel/models/subject_output.py +1008 -0
  706. flywheel/models/subject_output_for_list.py +1005 -0
  707. flywheel/models/subject_parents.py +194 -0
  708. flywheel/models/subject_role_permission.py +194 -0
  709. flywheel/models/subject_state.py +30 -0
  710. flywheel/models/subject_template_options.py +191 -0
  711. flywheel/models/subject_upsert_input.py +573 -0
  712. flywheel/models/subject_upsert_output.py +216 -0
  713. flywheel/models/sync_user_input.py +322 -0
  714. flywheel/models/tag.py +165 -0
  715. flywheel/models/task_assign.py +194 -0
  716. flywheel/models/task_facet.py +29 -0
  717. flywheel/models/task_parent_ref.py +245 -0
  718. flywheel/models/task_parent_ref_input.py +219 -0
  719. flywheel/models/task_priority.py +31 -0
  720. flywheel/models/task_submission.py +189 -0
  721. flywheel/models/therapeutic_area.py +60 -0
  722. flywheel/models/transitions.py +272 -0
  723. flywheel/models/tree_container_request_spec.py +281 -0
  724. flywheel/models/tree_graph.py +142 -0
  725. flywheel/models/tree_graph_connection.py +244 -0
  726. flywheel/models/tree_graph_connections.py +142 -0
  727. flywheel/models/tree_graph_node.py +166 -0
  728. flywheel/models/tree_request.py +25 -0
  729. flywheel/models/tree_response_item.py +142 -0
  730. flywheel/models/type_str.py +31 -0
  731. flywheel/models/uid_check_input_acquisitions.py +244 -0
  732. flywheel/models/uid_check_input_sessions.py +244 -0
  733. flywheel/models/uid_check_output.py +191 -0
  734. flywheel/models/upload_complete_s3_multipart_input.py +25 -0
  735. flywheel/models/upload_complete_s3_multipart_output.py +25 -0
  736. flywheel/models/upload_signed_fs_file_upload_output.py +36 -0
  737. flywheel/models/upload_signed_upload_url_input.py +36 -0
  738. flywheel/models/upload_signed_upload_url_output.py +36 -0
  739. flywheel/models/upload_ticket_output.py +215 -0
  740. flywheel/models/upload_token_output.py +163 -0
  741. flywheel/models/upsert_result.py +31 -0
  742. flywheel/models/user.py +760 -0
  743. flywheel/models/user_api_key.py +220 -0
  744. flywheel/models/user_input.py +461 -0
  745. flywheel/models/user_jobs.py +219 -0
  746. flywheel/models/user_jobs_output.py +25 -0
  747. flywheel/models/user_output.py +36 -0
  748. flywheel/models/user_output_id.py +163 -0
  749. flywheel/models/user_preferences.py +135 -0
  750. flywheel/models/user_wechat.py +135 -0
  751. flywheel/models/validation_error.py +215 -0
  752. flywheel/models/validation_rule.py +190 -0
  753. flywheel/models/version.py +363 -0
  754. flywheel/models/version_output.py +25 -0
  755. flywheel/models/view_id_output.py +164 -0
  756. flywheel/models/view_output.py +440 -0
  757. flywheel/models/viewer_app.py +381 -0
  758. flywheel/models/viewer_app_input.py +382 -0
  759. flywheel/models/viewer_app_type.py +29 -0
  760. flywheel/models/virus_scan.py +166 -0
  761. flywheel/models/virus_scan_state.py +30 -0
  762. flywheel/models/work_in_progress_features.py +135 -0
  763. flywheel/models/zipfile_info.py +192 -0
  764. flywheel/models/zipfile_member_info.py +241 -0
  765. flywheel/partial_reader.py +50 -0
  766. flywheel/rest.py +352 -0
  767. flywheel/util.py +95 -0
  768. flywheel/view_builder.py +449 -0
  769. flywheel_sdk-21.2.0.dist-info/METADATA +42 -0
  770. flywheel_sdk-21.2.0.dist-info/RECORD +772 -0
  771. flywheel_sdk-21.2.0.dist-info/WHEEL +4 -0
  772. flywheel_sdk-21.2.0.dist-info/licenses/LICENSE.txt +18 -0
@@ -0,0 +1,2142 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Flywheel
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: 0.0.1
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+ """
12
+
13
+
14
+ from __future__ import absolute_import
15
+
16
+ import re # noqa: F401
17
+
18
+ # python 2 and python 3 compatibility library
19
+ import six
20
+
21
+ from flywheel.api_client import ApiClient
22
+ import flywheel.models
23
+ from flywheel.util import check_filename_params
24
+
25
+ # NOTE: This file is auto generated by the swagger code generator program.
26
+ # Do not edit the class manually.
27
+
28
+ class UsersApi(object):
29
+ def __init__(self, api_client=None):
30
+ if api_client is None:
31
+ api_client = ApiClient()
32
+ self.api_client = api_client
33
+
34
+ def add_user(self, body, **kwargs): # noqa: E501
35
+ """Add a new user
36
+
37
+ Add a new user
38
+ This method makes a synchronous HTTP request by default.
39
+
40
+ :param UserInput body: (required)
41
+ :param bool async_: Perform the request asynchronously
42
+ :return: UserOutputId
43
+ """
44
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
45
+ kwargs['_return_http_data_only'] = True
46
+
47
+ if kwargs.get('async_'):
48
+ return self.add_user_with_http_info(body, **kwargs) # noqa: E501
49
+ else:
50
+ (data) = self.add_user_with_http_info(body, **kwargs) # noqa: E501
51
+ if (
52
+ data
53
+ and hasattr(data, 'return_value')
54
+ and not ignore_simplified_return_value
55
+ ):
56
+ return data.return_value()
57
+ return data
58
+
59
+
60
+ def add_user_with_http_info(self, body, **kwargs): # noqa: E501
61
+ """Add a new user
62
+
63
+ Add a new user
64
+ This method makes a synchronous HTTP request by default.
65
+
66
+ :param UserInput body: (required)
67
+ :param bool async_: Perform the request asynchronously
68
+ :return: UserOutputId
69
+ """
70
+
71
+ all_params = ['body',] # noqa: E501
72
+ all_params.append('async_')
73
+ all_params.append('_return_http_data_only')
74
+ all_params.append('_preload_content')
75
+ all_params.append('_request_timeout')
76
+ all_params.append('_request_out')
77
+
78
+ params = locals()
79
+ for key, val in six.iteritems(params['kwargs']):
80
+ if key not in all_params:
81
+ raise TypeError(
82
+ "Got an unexpected keyword argument '%s'"
83
+ " to method add_user" % key
84
+ )
85
+ params[key] = val
86
+ del params['kwargs']
87
+ # verify the required parameter 'body' is set
88
+ if ('body' not in params or
89
+ params['body'] is None):
90
+ raise ValueError("Missing the required parameter `body` when calling `add_user`") # noqa: E501
91
+ check_filename_params(params)
92
+
93
+ collection_formats = {}
94
+
95
+ path_params = {}
96
+
97
+ query_params = []
98
+
99
+ header_params = {}
100
+
101
+ form_params = []
102
+ local_var_files = {}
103
+
104
+ body_params = None
105
+ if 'body' in params:
106
+ if 'UserInput'.startswith('union'):
107
+ body_type = type(params['body'])
108
+ if getattr(body_type, 'positional_to_model', None):
109
+ body_params = body_type.positional_to_model(params['body'])
110
+ else:
111
+ body_params = params['body']
112
+ else:
113
+ body_params = flywheel.models.UserInput.positional_to_model(params['body'])
114
+ # HTTP header `Accept`
115
+ header_params['Accept'] = self.api_client.select_header_accept(
116
+ ['application/json']) # noqa: E501
117
+
118
+ # HTTP header `Content-Type`
119
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
120
+ ['application/json']) # noqa: E501
121
+
122
+ # Authentication setting
123
+ auth_settings = ['ApiKey'] # noqa: E501
124
+
125
+ return self.api_client.call_api(
126
+ '/users', 'POST',
127
+ path_params,
128
+ query_params,
129
+ header_params,
130
+ body=body_params,
131
+ post_params=form_params,
132
+ files=local_var_files,
133
+ response_type='UserOutputId', # noqa: E501
134
+ auth_settings=auth_settings,
135
+ async_=params.get('async_'),
136
+ _return_http_data_only=params.get('_return_http_data_only'),
137
+ _preload_content=params.get('_preload_content', True),
138
+ _request_timeout=params.get('_request_timeout'),
139
+ _request_out=params.get('_request_out'),
140
+ collection_formats=collection_formats)
141
+
142
+ def delete_user(self, user_id, **kwargs): # noqa: E501
143
+ """Delete a user
144
+
145
+ Delete a user
146
+ This method makes a synchronous HTTP request by default.
147
+
148
+ :param str user_id: (required)
149
+ :param bool async_: Perform the request asynchronously
150
+ :return: None
151
+ """
152
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
153
+ kwargs['_return_http_data_only'] = True
154
+
155
+ if kwargs.get('async_'):
156
+ return self.delete_user_with_http_info(user_id, **kwargs) # noqa: E501
157
+ else:
158
+ (data) = self.delete_user_with_http_info(user_id, **kwargs) # noqa: E501
159
+ if (
160
+ data
161
+ and hasattr(data, 'return_value')
162
+ and not ignore_simplified_return_value
163
+ ):
164
+ return data.return_value()
165
+ return data
166
+
167
+
168
+ def delete_user_with_http_info(self, user_id, **kwargs): # noqa: E501
169
+ """Delete a user
170
+
171
+ Delete a user
172
+ This method makes a synchronous HTTP request by default.
173
+
174
+ :param str user_id: (required)
175
+ :param bool async_: Perform the request asynchronously
176
+ :return: None
177
+ """
178
+
179
+ all_params = ['user_id',] # noqa: E501
180
+ all_params.append('async_')
181
+ all_params.append('_return_http_data_only')
182
+ all_params.append('_preload_content')
183
+ all_params.append('_request_timeout')
184
+ all_params.append('_request_out')
185
+
186
+ params = locals()
187
+ for key, val in six.iteritems(params['kwargs']):
188
+ if key not in all_params:
189
+ raise TypeError(
190
+ "Got an unexpected keyword argument '%s'"
191
+ " to method delete_user" % key
192
+ )
193
+ params[key] = val
194
+ del params['kwargs']
195
+ # verify the required parameter 'user_id' is set
196
+ if ('user_id' not in params or
197
+ params['user_id'] is None):
198
+ raise ValueError("Missing the required parameter `user_id` when calling `delete_user`") # noqa: E501
199
+ check_filename_params(params)
200
+
201
+ collection_formats = {}
202
+
203
+ path_params = {}
204
+ if 'user_id' in params:
205
+ path_params['UserId'] = params['user_id'] # noqa: E501
206
+
207
+ query_params = []
208
+
209
+ header_params = {}
210
+
211
+ form_params = []
212
+ local_var_files = {}
213
+
214
+ body_params = None
215
+ # HTTP header `Accept`
216
+ header_params['Accept'] = self.api_client.select_header_accept(
217
+ ['application/json']) # noqa: E501
218
+
219
+ # Authentication setting
220
+ auth_settings = ['ApiKey'] # noqa: E501
221
+
222
+ return self.api_client.call_api(
223
+ '/users/{UserId}', 'DELETE',
224
+ path_params,
225
+ query_params,
226
+ header_params,
227
+ body=body_params,
228
+ post_params=form_params,
229
+ files=local_var_files,
230
+ response_type=None, # noqa: E501
231
+ auth_settings=auth_settings,
232
+ async_=params.get('async_'),
233
+ _return_http_data_only=params.get('_return_http_data_only'),
234
+ _preload_content=params.get('_preload_content', True),
235
+ _request_timeout=params.get('_request_timeout'),
236
+ _request_out=params.get('_request_out'),
237
+ collection_formats=collection_formats)
238
+
239
+ def delete_user_key(self, id_, **kwargs): # noqa: E501
240
+ """Delete User Api Key
241
+
242
+ This method makes a synchronous HTTP request by default.
243
+
244
+ :param str id_: (required)
245
+ :param bool async_: Perform the request asynchronously
246
+ :return: None
247
+ """
248
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
249
+ kwargs['_return_http_data_only'] = True
250
+
251
+ if kwargs.get('async_'):
252
+ return self.delete_user_key_with_http_info(id_, **kwargs) # noqa: E501
253
+ else:
254
+ (data) = self.delete_user_key_with_http_info(id_, **kwargs) # noqa: E501
255
+ if (
256
+ data
257
+ and hasattr(data, 'return_value')
258
+ and not ignore_simplified_return_value
259
+ ):
260
+ return data.return_value()
261
+ return data
262
+
263
+
264
+ def delete_user_key_with_http_info(self, id_, **kwargs): # noqa: E501
265
+ """Delete User Api Key
266
+
267
+ This method makes a synchronous HTTP request by default.
268
+
269
+ :param str id_: (required)
270
+ :param bool async_: Perform the request asynchronously
271
+ :return: None
272
+ """
273
+
274
+ all_params = ['id_',] # noqa: E501
275
+ all_params.append('async_')
276
+ all_params.append('_return_http_data_only')
277
+ all_params.append('_preload_content')
278
+ all_params.append('_request_timeout')
279
+ all_params.append('_request_out')
280
+
281
+ params = locals()
282
+ for key, val in six.iteritems(params['kwargs']):
283
+ if key not in all_params:
284
+ raise TypeError(
285
+ "Got an unexpected keyword argument '%s'"
286
+ " to method delete_user_key" % key
287
+ )
288
+ params[key] = val
289
+ del params['kwargs']
290
+ # verify the required parameter 'id_' is set
291
+ if ('id_' not in params or
292
+ params['id_'] is None):
293
+ raise ValueError("Missing the required parameter `id_` when calling `delete_user_key`") # noqa: E501
294
+ check_filename_params(params)
295
+
296
+ collection_formats = {}
297
+
298
+ path_params = {}
299
+ if 'id_' in params:
300
+ path_params['id_'] = params['id_'] # noqa: E501
301
+
302
+ query_params = []
303
+
304
+ header_params = {}
305
+
306
+ form_params = []
307
+ local_var_files = {}
308
+
309
+ body_params = None
310
+ # HTTP header `Accept`
311
+ header_params['Accept'] = self.api_client.select_header_accept(
312
+ ['application/json']) # noqa: E501
313
+
314
+ # Authentication setting
315
+ auth_settings = ['ApiKey'] # noqa: E501
316
+
317
+ return self.api_client.call_api(
318
+ '/users/self/key/{id_}', 'DELETE',
319
+ path_params,
320
+ query_params,
321
+ header_params,
322
+ body=body_params,
323
+ post_params=form_params,
324
+ files=local_var_files,
325
+ response_type=None, # noqa: E501
326
+ auth_settings=auth_settings,
327
+ async_=params.get('async_'),
328
+ _return_http_data_only=params.get('_return_http_data_only'),
329
+ _preload_content=params.get('_preload_content', True),
330
+ _request_timeout=params.get('_request_timeout'),
331
+ _request_out=params.get('_request_out'),
332
+ collection_formats=collection_formats)
333
+
334
+ def generate_user_key(self, body, **kwargs): # noqa: E501
335
+ """Generates user api key
336
+
337
+ Generate user api key for the current user.
338
+ This method makes a synchronous HTTP request by default.
339
+
340
+ :param CoreModelsApiKeyApiKeyInput body: (required)
341
+ :param bool async_: Perform the request asynchronously
342
+ :return: ApiKeyOutput
343
+ """
344
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
345
+ kwargs['_return_http_data_only'] = True
346
+
347
+ if kwargs.get('async_'):
348
+ return self.generate_user_key_with_http_info(body, **kwargs) # noqa: E501
349
+ else:
350
+ (data) = self.generate_user_key_with_http_info(body, **kwargs) # noqa: E501
351
+ if (
352
+ data
353
+ and hasattr(data, 'return_value')
354
+ and not ignore_simplified_return_value
355
+ ):
356
+ return data.return_value()
357
+ return data
358
+
359
+
360
+ def generate_user_key_with_http_info(self, body, **kwargs): # noqa: E501
361
+ """Generates user api key
362
+
363
+ Generate user api key for the current user.
364
+ This method makes a synchronous HTTP request by default.
365
+
366
+ :param CoreModelsApiKeyApiKeyInput body: (required)
367
+ :param bool async_: Perform the request asynchronously
368
+ :return: ApiKeyOutput
369
+ """
370
+
371
+ all_params = ['body',] # noqa: E501
372
+ all_params.append('async_')
373
+ all_params.append('_return_http_data_only')
374
+ all_params.append('_preload_content')
375
+ all_params.append('_request_timeout')
376
+ all_params.append('_request_out')
377
+
378
+ params = locals()
379
+ for key, val in six.iteritems(params['kwargs']):
380
+ if key not in all_params:
381
+ raise TypeError(
382
+ "Got an unexpected keyword argument '%s'"
383
+ " to method generate_user_key" % key
384
+ )
385
+ params[key] = val
386
+ del params['kwargs']
387
+ # verify the required parameter 'body' is set
388
+ if ('body' not in params or
389
+ params['body'] is None):
390
+ raise ValueError("Missing the required parameter `body` when calling `generate_user_key`") # noqa: E501
391
+ check_filename_params(params)
392
+
393
+ collection_formats = {}
394
+
395
+ path_params = {}
396
+
397
+ query_params = []
398
+
399
+ header_params = {}
400
+
401
+ form_params = []
402
+ local_var_files = {}
403
+
404
+ body_params = None
405
+ if 'body' in params:
406
+ if 'CoreModelsApiKeyApiKeyInput'.startswith('union'):
407
+ body_type = type(params['body'])
408
+ if getattr(body_type, 'positional_to_model', None):
409
+ body_params = body_type.positional_to_model(params['body'])
410
+ else:
411
+ body_params = params['body']
412
+ else:
413
+ body_params = flywheel.models.CoreModelsApiKeyApiKeyInput.positional_to_model(params['body'])
414
+ # HTTP header `Accept`
415
+ header_params['Accept'] = self.api_client.select_header_accept(
416
+ ['application/json']) # noqa: E501
417
+
418
+ # HTTP header `Content-Type`
419
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
420
+ ['application/json']) # noqa: E501
421
+
422
+ # Authentication setting
423
+ auth_settings = ['ApiKey'] # noqa: E501
424
+
425
+ return self.api_client.call_api(
426
+ '/users/self/key', 'POST',
427
+ path_params,
428
+ query_params,
429
+ header_params,
430
+ body=body_params,
431
+ post_params=form_params,
432
+ files=local_var_files,
433
+ response_type='ApiKeyOutput', # noqa: E501
434
+ auth_settings=auth_settings,
435
+ async_=params.get('async_'),
436
+ _return_http_data_only=params.get('_return_http_data_only'),
437
+ _preload_content=params.get('_preload_content', True),
438
+ _request_timeout=params.get('_request_timeout'),
439
+ _request_out=params.get('_request_out'),
440
+ collection_formats=collection_formats)
441
+
442
+ def get_all_users(self, **kwargs): # noqa: E501
443
+ """Return a list of all users
444
+
445
+ Gets all users with pagination Args:
446
+ This method makes a synchronous HTTP request by default.
447
+
448
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
449
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
450
+ :param int limit: The maximum number of entries to return.
451
+ :param int skip: The number of entries to skip.
452
+ :param int page: The page number (i.e. skip limit*page entries)
453
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
454
+ :param list[str] x_accept_feature:
455
+ :param bool async_: Perform the request asynchronously
456
+ :return: union[list[UserOutput],OutputUserPage]
457
+ """
458
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
459
+ kwargs['_return_http_data_only'] = True
460
+
461
+ if kwargs.get('async_'):
462
+ return self.get_all_users_with_http_info(**kwargs) # noqa: E501
463
+ else:
464
+ (data) = self.get_all_users_with_http_info(**kwargs) # noqa: E501
465
+ if (
466
+ data
467
+ and hasattr(data, 'return_value')
468
+ and not ignore_simplified_return_value
469
+ ):
470
+ return data.return_value()
471
+ return data
472
+
473
+
474
+ def get_all_users_with_http_info(self, **kwargs): # noqa: E501
475
+ """Return a list of all users
476
+
477
+ Gets all users with pagination Args:
478
+ This method makes a synchronous HTTP request by default.
479
+
480
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
481
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
482
+ :param int limit: The maximum number of entries to return.
483
+ :param int skip: The number of entries to skip.
484
+ :param int page: The page number (i.e. skip limit*page entries)
485
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
486
+ :param list[str] x_accept_feature:
487
+ :param bool async_: Perform the request asynchronously
488
+ :return: union[list[UserOutput],OutputUserPage]
489
+ """
490
+
491
+ all_params = ['filter','sort','limit','skip','page','after_id','x_accept_feature',] # noqa: E501
492
+ all_params.append('async_')
493
+ all_params.append('_return_http_data_only')
494
+ all_params.append('_preload_content')
495
+ all_params.append('_request_timeout')
496
+ all_params.append('_request_out')
497
+
498
+ params = locals()
499
+ for key, val in six.iteritems(params['kwargs']):
500
+ if key not in all_params:
501
+ raise TypeError(
502
+ "Got an unexpected keyword argument '%s'"
503
+ " to method get_all_users" % key
504
+ )
505
+ params[key] = val
506
+ del params['kwargs']
507
+ check_filename_params(params)
508
+
509
+ collection_formats = {}
510
+
511
+ path_params = {}
512
+
513
+ query_params = []
514
+ if 'filter' in params:
515
+ query_params.append(('filter', params['filter'])) # noqa: E501
516
+ if 'sort' in params:
517
+ query_params.append(('sort', params['sort'])) # noqa: E501
518
+ if 'limit' in params:
519
+ query_params.append(('limit', params['limit'])) # noqa: E501
520
+ if 'skip' in params:
521
+ query_params.append(('skip', params['skip'])) # noqa: E501
522
+ if 'page' in params:
523
+ query_params.append(('page', params['page'])) # noqa: E501
524
+ if 'after_id' in params:
525
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
526
+
527
+ header_params = {}
528
+ if 'x_accept_feature' in params:
529
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
530
+ collection_formats['x-accept-feature'] = '' # noqa: E501
531
+
532
+ form_params = []
533
+ local_var_files = {}
534
+
535
+ body_params = None
536
+ # HTTP header `Accept`
537
+ header_params['Accept'] = self.api_client.select_header_accept(
538
+ ['application/json']) # noqa: E501
539
+
540
+ # Authentication setting
541
+ auth_settings = ['ApiKey'] # noqa: E501
542
+
543
+ return self.api_client.call_api(
544
+ '/users', 'GET',
545
+ path_params,
546
+ query_params,
547
+ header_params,
548
+ body=body_params,
549
+ post_params=form_params,
550
+ files=local_var_files,
551
+ response_type='union[list[UserOutput],OutputUserPage]', # noqa: E501
552
+ auth_settings=auth_settings,
553
+ async_=params.get('async_'),
554
+ _return_http_data_only=params.get('_return_http_data_only'),
555
+ _preload_content=params.get('_preload_content', True),
556
+ _request_timeout=params.get('_request_timeout'),
557
+ _request_out=params.get('_request_out'),
558
+ collection_formats=collection_formats)
559
+
560
+ def get_current_user(self, **kwargs): # noqa: E501
561
+ """Get information about the current user
562
+
563
+ Gets the current user Args: auth_session (AuthSession): session from incoming request Returns: CurrentUserOutput: Pydantic model for client side user data
564
+ This method makes a synchronous HTTP request by default.
565
+
566
+ :param bool async_: Perform the request asynchronously
567
+ :return: CurrentUserOutput
568
+ """
569
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
570
+ kwargs['_return_http_data_only'] = True
571
+
572
+ if kwargs.get('async_'):
573
+ return self.get_current_user_with_http_info(**kwargs) # noqa: E501
574
+ else:
575
+ (data) = self.get_current_user_with_http_info(**kwargs) # noqa: E501
576
+ if (
577
+ data
578
+ and hasattr(data, 'return_value')
579
+ and not ignore_simplified_return_value
580
+ ):
581
+ return data.return_value()
582
+ return data
583
+
584
+
585
+ def get_current_user_with_http_info(self, **kwargs): # noqa: E501
586
+ """Get information about the current user
587
+
588
+ Gets the current user Args: auth_session (AuthSession): session from incoming request Returns: CurrentUserOutput: Pydantic model for client side user data
589
+ This method makes a synchronous HTTP request by default.
590
+
591
+ :param bool async_: Perform the request asynchronously
592
+ :return: CurrentUserOutput
593
+ """
594
+
595
+ all_params = [] # noqa: E501
596
+ all_params.append('async_')
597
+ all_params.append('_return_http_data_only')
598
+ all_params.append('_preload_content')
599
+ all_params.append('_request_timeout')
600
+ all_params.append('_request_out')
601
+
602
+ params = locals()
603
+ for key, val in six.iteritems(params['kwargs']):
604
+ if key not in all_params:
605
+ raise TypeError(
606
+ "Got an unexpected keyword argument '%s'"
607
+ " to method get_current_user" % key
608
+ )
609
+ params[key] = val
610
+ del params['kwargs']
611
+ check_filename_params(params)
612
+
613
+ collection_formats = {}
614
+
615
+ path_params = {}
616
+
617
+ query_params = []
618
+
619
+ header_params = {}
620
+
621
+ form_params = []
622
+ local_var_files = {}
623
+
624
+ body_params = None
625
+ # HTTP header `Accept`
626
+ header_params['Accept'] = self.api_client.select_header_accept(
627
+ ['application/json']) # noqa: E501
628
+
629
+ # Authentication setting
630
+ auth_settings = ['ApiKey'] # noqa: E501
631
+
632
+ return self.api_client.call_api(
633
+ '/users/self', 'GET',
634
+ path_params,
635
+ query_params,
636
+ header_params,
637
+ body=body_params,
638
+ post_params=form_params,
639
+ files=local_var_files,
640
+ response_type='CurrentUserOutput', # noqa: E501
641
+ auth_settings=auth_settings,
642
+ async_=params.get('async_'),
643
+ _return_http_data_only=params.get('_return_http_data_only'),
644
+ _preload_content=params.get('_preload_content', True),
645
+ _request_timeout=params.get('_request_timeout'),
646
+ _request_out=params.get('_request_out'),
647
+ collection_formats=collection_formats)
648
+
649
+ def get_current_user_avatar(self, **kwargs): # noqa: E501
650
+ """Get the avatar of the current user
651
+
652
+ Gets avatar of current user Args: auth_session (AuthSession): session from incoming request Returns: str: url of avatar
653
+ This method makes a synchronous HTTP request by default.
654
+
655
+ :param str default:
656
+ :param bool async_: Perform the request asynchronously
657
+ :return: None
658
+ """
659
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
660
+ kwargs['_return_http_data_only'] = True
661
+
662
+ if kwargs.get('async_'):
663
+ return self.get_current_user_avatar_with_http_info(**kwargs) # noqa: E501
664
+ else:
665
+ (data) = self.get_current_user_avatar_with_http_info(**kwargs) # noqa: E501
666
+ if (
667
+ data
668
+ and hasattr(data, 'return_value')
669
+ and not ignore_simplified_return_value
670
+ ):
671
+ return data.return_value()
672
+ return data
673
+
674
+
675
+ def get_current_user_avatar_with_http_info(self, **kwargs): # noqa: E501
676
+ """Get the avatar of the current user
677
+
678
+ Gets avatar of current user Args: auth_session (AuthSession): session from incoming request Returns: str: url of avatar
679
+ This method makes a synchronous HTTP request by default.
680
+
681
+ :param str default:
682
+ :param bool async_: Perform the request asynchronously
683
+ :return: None
684
+ """
685
+
686
+ all_params = ['default',] # noqa: E501
687
+ all_params.append('async_')
688
+ all_params.append('_return_http_data_only')
689
+ all_params.append('_preload_content')
690
+ all_params.append('_request_timeout')
691
+ all_params.append('_request_out')
692
+
693
+ params = locals()
694
+ for key, val in six.iteritems(params['kwargs']):
695
+ if key not in all_params:
696
+ raise TypeError(
697
+ "Got an unexpected keyword argument '%s'"
698
+ " to method get_current_user_avatar" % key
699
+ )
700
+ params[key] = val
701
+ del params['kwargs']
702
+ check_filename_params(params)
703
+
704
+ collection_formats = {}
705
+
706
+ path_params = {}
707
+
708
+ query_params = []
709
+ if 'default' in params:
710
+ query_params.append(('default', params['default'])) # noqa: E501
711
+
712
+ header_params = {}
713
+
714
+ form_params = []
715
+ local_var_files = {}
716
+
717
+ body_params = None
718
+ # HTTP header `Accept`
719
+ header_params['Accept'] = self.api_client.select_header_accept(
720
+ ['application/json']) # noqa: E501
721
+
722
+ # Authentication setting
723
+ auth_settings = ['ApiKey'] # noqa: E501
724
+
725
+ return self.api_client.call_api(
726
+ '/users/self/avatar', 'GET',
727
+ path_params,
728
+ query_params,
729
+ header_params,
730
+ body=body_params,
731
+ post_params=form_params,
732
+ files=local_var_files,
733
+ response_type=None, # noqa: E501
734
+ auth_settings=auth_settings,
735
+ async_=params.get('async_'),
736
+ _return_http_data_only=params.get('_return_http_data_only'),
737
+ _preload_content=params.get('_preload_content', True),
738
+ _request_timeout=params.get('_request_timeout'),
739
+ _request_out=params.get('_request_out'),
740
+ collection_formats=collection_formats)
741
+
742
+ def get_current_user_info(self, **kwargs): # noqa: E501
743
+ """Get info of the current user
744
+
745
+ Gets user info fields. Args: fields (str): csv of arbitrary keys to look for in user info auth_session (AuthSession): session from incoming request Returns: dict: arbitrary data matching the provided csv values
746
+ This method makes a synchronous HTTP request by default.
747
+
748
+ :param str fields: Get only the specified fields from user's info. Accept multiple fields separated by comma.
749
+ :param bool async_: Perform the request asynchronously
750
+ :return: object
751
+ """
752
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
753
+ kwargs['_return_http_data_only'] = True
754
+
755
+ if kwargs.get('async_'):
756
+ return self.get_current_user_info_with_http_info(**kwargs) # noqa: E501
757
+ else:
758
+ (data) = self.get_current_user_info_with_http_info(**kwargs) # noqa: E501
759
+ if (
760
+ data
761
+ and hasattr(data, 'return_value')
762
+ and not ignore_simplified_return_value
763
+ ):
764
+ return data.return_value()
765
+ return data
766
+
767
+
768
+ def get_current_user_info_with_http_info(self, **kwargs): # noqa: E501
769
+ """Get info of the current user
770
+
771
+ Gets user info fields. Args: fields (str): csv of arbitrary keys to look for in user info auth_session (AuthSession): session from incoming request Returns: dict: arbitrary data matching the provided csv values
772
+ This method makes a synchronous HTTP request by default.
773
+
774
+ :param str fields: Get only the specified fields from user's info. Accept multiple fields separated by comma.
775
+ :param bool async_: Perform the request asynchronously
776
+ :return: object
777
+ """
778
+
779
+ all_params = ['fields',] # noqa: E501
780
+ all_params.append('async_')
781
+ all_params.append('_return_http_data_only')
782
+ all_params.append('_preload_content')
783
+ all_params.append('_request_timeout')
784
+ all_params.append('_request_out')
785
+
786
+ params = locals()
787
+ for key, val in six.iteritems(params['kwargs']):
788
+ if key not in all_params:
789
+ raise TypeError(
790
+ "Got an unexpected keyword argument '%s'"
791
+ " to method get_current_user_info" % key
792
+ )
793
+ params[key] = val
794
+ del params['kwargs']
795
+ check_filename_params(params)
796
+
797
+ collection_formats = {}
798
+
799
+ path_params = {}
800
+
801
+ query_params = []
802
+ if 'fields' in params:
803
+ query_params.append(('fields', params['fields'])) # noqa: E501
804
+
805
+ header_params = {}
806
+
807
+ form_params = []
808
+ local_var_files = {}
809
+
810
+ body_params = None
811
+ # HTTP header `Accept`
812
+ header_params['Accept'] = self.api_client.select_header_accept(
813
+ ['application/json']) # noqa: E501
814
+
815
+ # Authentication setting
816
+ auth_settings = ['ApiKey'] # noqa: E501
817
+
818
+ return self.api_client.call_api(
819
+ '/users/self/info', 'GET',
820
+ path_params,
821
+ query_params,
822
+ header_params,
823
+ body=body_params,
824
+ post_params=form_params,
825
+ files=local_var_files,
826
+ response_type='object', # noqa: E501
827
+ auth_settings=auth_settings,
828
+ async_=params.get('async_'),
829
+ _return_http_data_only=params.get('_return_http_data_only'),
830
+ _preload_content=params.get('_preload_content', True),
831
+ _request_timeout=params.get('_request_timeout'),
832
+ _request_out=params.get('_request_out'),
833
+ collection_formats=collection_formats)
834
+
835
+ def get_current_user_jobs(self, **kwargs): # noqa: E501
836
+ """Return list of jobs created by the current user
837
+
838
+ Gets jobs assigned to user with optional gear name regex Args: gear_name (str): name of gear to filter by auth_session (AuthSession): session from incoming request Returns: list: List of jobs linked to the user
839
+ This method makes a synchronous HTTP request by default.
840
+
841
+ :param str gear: Gear name. Get only the jobs which are related to a specific gear.
842
+ :param bool exhaustive:
843
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
844
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
845
+ :param int limit: The maximum number of entries to return.
846
+ :param int skip: The number of entries to skip.
847
+ :param int page: The page number (i.e. skip limit*page entries)
848
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
849
+ :param list[str] x_accept_feature:
850
+ :param bool async_: Perform the request asynchronously
851
+ :return: UserJobs
852
+ """
853
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
854
+ kwargs['_return_http_data_only'] = True
855
+
856
+ if kwargs.get('async_'):
857
+ return self.get_current_user_jobs_with_http_info(**kwargs) # noqa: E501
858
+ else:
859
+ (data) = self.get_current_user_jobs_with_http_info(**kwargs) # noqa: E501
860
+ if (
861
+ data
862
+ and hasattr(data, 'return_value')
863
+ and not ignore_simplified_return_value
864
+ ):
865
+ return data.return_value()
866
+ return data
867
+
868
+
869
+ def get_current_user_jobs_with_http_info(self, **kwargs): # noqa: E501
870
+ """Return list of jobs created by the current user
871
+
872
+ Gets jobs assigned to user with optional gear name regex Args: gear_name (str): name of gear to filter by auth_session (AuthSession): session from incoming request Returns: list: List of jobs linked to the user
873
+ This method makes a synchronous HTTP request by default.
874
+
875
+ :param str gear: Gear name. Get only the jobs which are related to a specific gear.
876
+ :param bool exhaustive:
877
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
878
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
879
+ :param int limit: The maximum number of entries to return.
880
+ :param int skip: The number of entries to skip.
881
+ :param int page: The page number (i.e. skip limit*page entries)
882
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
883
+ :param list[str] x_accept_feature:
884
+ :param bool async_: Perform the request asynchronously
885
+ :return: UserJobs
886
+ """
887
+
888
+ all_params = ['gear','exhaustive','filter','sort','limit','skip','page','after_id','x_accept_feature',] # noqa: E501
889
+ all_params.append('async_')
890
+ all_params.append('_return_http_data_only')
891
+ all_params.append('_preload_content')
892
+ all_params.append('_request_timeout')
893
+ all_params.append('_request_out')
894
+
895
+ params = locals()
896
+ for key, val in six.iteritems(params['kwargs']):
897
+ if key not in all_params:
898
+ raise TypeError(
899
+ "Got an unexpected keyword argument '%s'"
900
+ " to method get_current_user_jobs" % key
901
+ )
902
+ params[key] = val
903
+ del params['kwargs']
904
+ check_filename_params(params)
905
+
906
+ collection_formats = {}
907
+
908
+ path_params = {}
909
+
910
+ query_params = []
911
+ if 'gear' in params:
912
+ query_params.append(('gear', params['gear'])) # noqa: E501
913
+ if 'exhaustive' in params:
914
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
915
+ if 'filter' in params:
916
+ query_params.append(('filter', params['filter'])) # noqa: E501
917
+ if 'sort' in params:
918
+ query_params.append(('sort', params['sort'])) # noqa: E501
919
+ if 'limit' in params:
920
+ query_params.append(('limit', params['limit'])) # noqa: E501
921
+ if 'skip' in params:
922
+ query_params.append(('skip', params['skip'])) # noqa: E501
923
+ if 'page' in params:
924
+ query_params.append(('page', params['page'])) # noqa: E501
925
+ if 'after_id' in params:
926
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
927
+
928
+ header_params = {}
929
+ if 'x_accept_feature' in params:
930
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
931
+ collection_formats['x-accept-feature'] = '' # noqa: E501
932
+
933
+ form_params = []
934
+ local_var_files = {}
935
+
936
+ body_params = None
937
+ # HTTP header `Accept`
938
+ header_params['Accept'] = self.api_client.select_header_accept(
939
+ ['application/json']) # noqa: E501
940
+
941
+ # Authentication setting
942
+ auth_settings = ['ApiKey'] # noqa: E501
943
+
944
+ return self.api_client.call_api(
945
+ '/users/self/jobs', 'GET',
946
+ path_params,
947
+ query_params,
948
+ header_params,
949
+ body=body_params,
950
+ post_params=form_params,
951
+ files=local_var_files,
952
+ response_type='UserJobs', # noqa: E501
953
+ auth_settings=auth_settings,
954
+ async_=params.get('async_'),
955
+ _return_http_data_only=params.get('_return_http_data_only'),
956
+ _preload_content=params.get('_preload_content', True),
957
+ _request_timeout=params.get('_request_timeout'),
958
+ _request_out=params.get('_request_out'),
959
+ collection_formats=collection_formats)
960
+
961
+ def get_user(self, user_id, **kwargs): # noqa: E501
962
+ """Get information about the specified user
963
+
964
+ Get user by id Args: uid (str): string matching uid pattern Returns: UserOutput: Pydantic model for sending data to client
965
+ This method makes a synchronous HTTP request by default.
966
+
967
+ :param str user_id: (required)
968
+ :param bool include_deleted:
969
+ :param bool async_: Perform the request asynchronously
970
+ :return: UserOutput
971
+ """
972
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
973
+ kwargs['_return_http_data_only'] = True
974
+
975
+ if kwargs.get('async_'):
976
+ return self.get_user_with_http_info(user_id, **kwargs) # noqa: E501
977
+ else:
978
+ (data) = self.get_user_with_http_info(user_id, **kwargs) # noqa: E501
979
+ if (
980
+ data
981
+ and hasattr(data, 'return_value')
982
+ and not ignore_simplified_return_value
983
+ ):
984
+ return data.return_value()
985
+ return data
986
+
987
+
988
+ def get_user_with_http_info(self, user_id, **kwargs): # noqa: E501
989
+ """Get information about the specified user
990
+
991
+ Get user by id Args: uid (str): string matching uid pattern Returns: UserOutput: Pydantic model for sending data to client
992
+ This method makes a synchronous HTTP request by default.
993
+
994
+ :param str user_id: (required)
995
+ :param bool include_deleted:
996
+ :param bool async_: Perform the request asynchronously
997
+ :return: UserOutput
998
+ """
999
+
1000
+ all_params = ['user_id','include_deleted',] # noqa: E501
1001
+ all_params.append('async_')
1002
+ all_params.append('_return_http_data_only')
1003
+ all_params.append('_preload_content')
1004
+ all_params.append('_request_timeout')
1005
+ all_params.append('_request_out')
1006
+
1007
+ params = locals()
1008
+ for key, val in six.iteritems(params['kwargs']):
1009
+ if key not in all_params:
1010
+ raise TypeError(
1011
+ "Got an unexpected keyword argument '%s'"
1012
+ " to method get_user" % key
1013
+ )
1014
+ params[key] = val
1015
+ del params['kwargs']
1016
+ # verify the required parameter 'user_id' is set
1017
+ if ('user_id' not in params or
1018
+ params['user_id'] is None):
1019
+ raise ValueError("Missing the required parameter `user_id` when calling `get_user`") # noqa: E501
1020
+ check_filename_params(params)
1021
+
1022
+ collection_formats = {}
1023
+
1024
+ path_params = {}
1025
+ if 'user_id' in params:
1026
+ path_params['user_id'] = params['user_id'] # noqa: E501
1027
+
1028
+ query_params = []
1029
+ if 'include_deleted' in params:
1030
+ query_params.append(('include_deleted', params['include_deleted'])) # noqa: E501
1031
+
1032
+ header_params = {}
1033
+
1034
+ form_params = []
1035
+ local_var_files = {}
1036
+
1037
+ body_params = None
1038
+ # HTTP header `Accept`
1039
+ header_params['Accept'] = self.api_client.select_header_accept(
1040
+ ['application/json']) # noqa: E501
1041
+
1042
+ # Authentication setting
1043
+ auth_settings = ['ApiKey'] # noqa: E501
1044
+
1045
+ return self.api_client.call_api(
1046
+ '/users/{user_id}', 'GET',
1047
+ path_params,
1048
+ query_params,
1049
+ header_params,
1050
+ body=body_params,
1051
+ post_params=form_params,
1052
+ files=local_var_files,
1053
+ response_type='UserOutput', # noqa: E501
1054
+ auth_settings=auth_settings,
1055
+ async_=params.get('async_'),
1056
+ _return_http_data_only=params.get('_return_http_data_only'),
1057
+ _preload_content=params.get('_preload_content', True),
1058
+ _request_timeout=params.get('_request_timeout'),
1059
+ _request_out=params.get('_request_out'),
1060
+ collection_formats=collection_formats)
1061
+
1062
+ def get_user_acquisitions(self, uid, **kwargs): # noqa: E501
1063
+ """Get all acquisitions that belong to the given user.
1064
+
1065
+ Get all acquisitions that belong to the given user.
1066
+ This method makes a synchronous HTTP request by default.
1067
+
1068
+ :param str uid: (required)
1069
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1070
+ :param bool include_all_info: Include all info in returned objects
1071
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1072
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1073
+ :param int limit: The maximum number of entries to return.
1074
+ :param int skip: The number of entries to skip.
1075
+ :param int page: The page number (i.e. skip limit*page entries)
1076
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1077
+ :param bool async_: Perform the request asynchronously
1078
+ :return: list[AcquisitionListOutput]
1079
+ """
1080
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1081
+ kwargs['_return_http_data_only'] = True
1082
+
1083
+ if kwargs.get('async_'):
1084
+ return self.get_user_acquisitions_with_http_info(uid, **kwargs) # noqa: E501
1085
+ else:
1086
+ (data) = self.get_user_acquisitions_with_http_info(uid, **kwargs) # noqa: E501
1087
+ if (
1088
+ data
1089
+ and hasattr(data, 'return_value')
1090
+ and not ignore_simplified_return_value
1091
+ ):
1092
+ return data.return_value()
1093
+ return data
1094
+
1095
+
1096
+ def get_user_acquisitions_with_http_info(self, uid, **kwargs): # noqa: E501
1097
+ """Get all acquisitions that belong to the given user.
1098
+
1099
+ Get all acquisitions that belong to the given user.
1100
+ This method makes a synchronous HTTP request by default.
1101
+
1102
+ :param str uid: (required)
1103
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1104
+ :param bool include_all_info: Include all info in returned objects
1105
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1106
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1107
+ :param int limit: The maximum number of entries to return.
1108
+ :param int skip: The number of entries to skip.
1109
+ :param int page: The page number (i.e. skip limit*page entries)
1110
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1111
+ :param bool async_: Perform the request asynchronously
1112
+ :return: list[AcquisitionListOutput]
1113
+ """
1114
+
1115
+ all_params = ['uid','exhaustive','include_all_info','filter','sort','limit','skip','page','after_id',] # noqa: E501
1116
+ all_params.append('async_')
1117
+ all_params.append('_return_http_data_only')
1118
+ all_params.append('_preload_content')
1119
+ all_params.append('_request_timeout')
1120
+ all_params.append('_request_out')
1121
+
1122
+ params = locals()
1123
+ for key, val in six.iteritems(params['kwargs']):
1124
+ if key not in all_params:
1125
+ raise TypeError(
1126
+ "Got an unexpected keyword argument '%s'"
1127
+ " to method get_user_acquisitions" % key
1128
+ )
1129
+ params[key] = val
1130
+ del params['kwargs']
1131
+ # verify the required parameter 'uid' is set
1132
+ if ('uid' not in params or
1133
+ params['uid'] is None):
1134
+ raise ValueError("Missing the required parameter `uid` when calling `get_user_acquisitions`") # noqa: E501
1135
+ check_filename_params(params)
1136
+
1137
+ collection_formats = {}
1138
+
1139
+ path_params = {}
1140
+ if 'uid' in params:
1141
+ path_params['uid'] = params['uid'] # noqa: E501
1142
+
1143
+ query_params = []
1144
+ if 'exhaustive' in params:
1145
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
1146
+ if 'include_all_info' in params:
1147
+ query_params.append(('include_all_info', params['include_all_info'])) # noqa: E501
1148
+ if 'filter' in params:
1149
+ query_params.append(('filter', params['filter'])) # noqa: E501
1150
+ if 'sort' in params:
1151
+ query_params.append(('sort', params['sort'])) # noqa: E501
1152
+ if 'limit' in params:
1153
+ query_params.append(('limit', params['limit'])) # noqa: E501
1154
+ if 'skip' in params:
1155
+ query_params.append(('skip', params['skip'])) # noqa: E501
1156
+ if 'page' in params:
1157
+ query_params.append(('page', params['page'])) # noqa: E501
1158
+ if 'after_id' in params:
1159
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1160
+
1161
+ header_params = {}
1162
+
1163
+ form_params = []
1164
+ local_var_files = {}
1165
+
1166
+ body_params = None
1167
+ # HTTP header `Accept`
1168
+ header_params['Accept'] = self.api_client.select_header_accept(
1169
+ ['application/json']) # noqa: E501
1170
+
1171
+ # Authentication setting
1172
+ auth_settings = ['ApiKey'] # noqa: E501
1173
+
1174
+ return self.api_client.call_api(
1175
+ '/users/{uid}/acquisitions', 'GET',
1176
+ path_params,
1177
+ query_params,
1178
+ header_params,
1179
+ body=body_params,
1180
+ post_params=form_params,
1181
+ files=local_var_files,
1182
+ response_type='list[AcquisitionListOutput]', # noqa: E501
1183
+ auth_settings=auth_settings,
1184
+ async_=params.get('async_'),
1185
+ _return_http_data_only=params.get('_return_http_data_only'),
1186
+ _preload_content=params.get('_preload_content', True),
1187
+ _request_timeout=params.get('_request_timeout'),
1188
+ _request_out=params.get('_request_out'),
1189
+ collection_formats=collection_formats)
1190
+
1191
+ def get_user_avatar(self, user_id, **kwargs): # noqa: E501
1192
+ """Get the avatar of the specified user
1193
+
1194
+ gets avatar of user and redirects to it Args: user_id (str): user id matching user_id regex Returns: RedirectResponse: redirects user to avatar Raises (ResourceNotFound): Raises 404 if no user avatar
1195
+ This method makes a synchronous HTTP request by default.
1196
+
1197
+ :param str user_id: (required)
1198
+ :param str default:
1199
+ :param bool async_: Perform the request asynchronously
1200
+ :return: None
1201
+ """
1202
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1203
+ kwargs['_return_http_data_only'] = True
1204
+
1205
+ if kwargs.get('async_'):
1206
+ return self.get_user_avatar_with_http_info(user_id, **kwargs) # noqa: E501
1207
+ else:
1208
+ (data) = self.get_user_avatar_with_http_info(user_id, **kwargs) # noqa: E501
1209
+ if (
1210
+ data
1211
+ and hasattr(data, 'return_value')
1212
+ and not ignore_simplified_return_value
1213
+ ):
1214
+ return data.return_value()
1215
+ return data
1216
+
1217
+
1218
+ def get_user_avatar_with_http_info(self, user_id, **kwargs): # noqa: E501
1219
+ """Get the avatar of the specified user
1220
+
1221
+ gets avatar of user and redirects to it Args: user_id (str): user id matching user_id regex Returns: RedirectResponse: redirects user to avatar Raises (ResourceNotFound): Raises 404 if no user avatar
1222
+ This method makes a synchronous HTTP request by default.
1223
+
1224
+ :param str user_id: (required)
1225
+ :param str default:
1226
+ :param bool async_: Perform the request asynchronously
1227
+ :return: None
1228
+ """
1229
+
1230
+ all_params = ['user_id','default',] # noqa: E501
1231
+ all_params.append('async_')
1232
+ all_params.append('_return_http_data_only')
1233
+ all_params.append('_preload_content')
1234
+ all_params.append('_request_timeout')
1235
+ all_params.append('_request_out')
1236
+
1237
+ params = locals()
1238
+ for key, val in six.iteritems(params['kwargs']):
1239
+ if key not in all_params:
1240
+ raise TypeError(
1241
+ "Got an unexpected keyword argument '%s'"
1242
+ " to method get_user_avatar" % key
1243
+ )
1244
+ params[key] = val
1245
+ del params['kwargs']
1246
+ # verify the required parameter 'user_id' is set
1247
+ if ('user_id' not in params or
1248
+ params['user_id'] is None):
1249
+ raise ValueError("Missing the required parameter `user_id` when calling `get_user_avatar`") # noqa: E501
1250
+ check_filename_params(params)
1251
+
1252
+ collection_formats = {}
1253
+
1254
+ path_params = {}
1255
+ if 'user_id' in params:
1256
+ path_params['user_id'] = params['user_id'] # noqa: E501
1257
+
1258
+ query_params = []
1259
+ if 'default' in params:
1260
+ query_params.append(('default', params['default'])) # noqa: E501
1261
+
1262
+ header_params = {}
1263
+
1264
+ form_params = []
1265
+ local_var_files = {}
1266
+
1267
+ body_params = None
1268
+ # HTTP header `Accept`
1269
+ header_params['Accept'] = self.api_client.select_header_accept(
1270
+ ['application/json']) # noqa: E501
1271
+
1272
+ # Authentication setting
1273
+ auth_settings = ['ApiKey'] # noqa: E501
1274
+
1275
+ return self.api_client.call_api(
1276
+ '/users/{user_id}/avatar', 'GET',
1277
+ path_params,
1278
+ query_params,
1279
+ header_params,
1280
+ body=body_params,
1281
+ post_params=form_params,
1282
+ files=local_var_files,
1283
+ response_type=None, # noqa: E501
1284
+ auth_settings=auth_settings,
1285
+ async_=params.get('async_'),
1286
+ _return_http_data_only=params.get('_return_http_data_only'),
1287
+ _preload_content=params.get('_preload_content', True),
1288
+ _request_timeout=params.get('_request_timeout'),
1289
+ _request_out=params.get('_request_out'),
1290
+ collection_formats=collection_formats)
1291
+
1292
+ def get_user_collections(self, user_id, **kwargs): # noqa: E501
1293
+ """Get all collections that belong to the given user.
1294
+
1295
+ This method makes a synchronous HTTP request by default.
1296
+
1297
+ :param str user_id: (required)
1298
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1299
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1300
+ :param int limit: The maximum number of entries to return.
1301
+ :param int skip: The number of entries to skip.
1302
+ :param int page: The page number (i.e. skip limit*page entries)
1303
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1304
+ :param list[str] x_accept_feature:
1305
+ :param bool async_: Perform the request asynchronously
1306
+ :return: union[list[CollectionWithStats],list[CollectionOutput],Page]
1307
+ """
1308
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1309
+ kwargs['_return_http_data_only'] = True
1310
+
1311
+ if kwargs.get('async_'):
1312
+ return self.get_user_collections_with_http_info(user_id, **kwargs) # noqa: E501
1313
+ else:
1314
+ (data) = self.get_user_collections_with_http_info(user_id, **kwargs) # noqa: E501
1315
+ if (
1316
+ data
1317
+ and hasattr(data, 'return_value')
1318
+ and not ignore_simplified_return_value
1319
+ ):
1320
+ return data.return_value()
1321
+ return data
1322
+
1323
+
1324
+ def get_user_collections_with_http_info(self, user_id, **kwargs): # noqa: E501
1325
+ """Get all collections that belong to the given user.
1326
+
1327
+ This method makes a synchronous HTTP request by default.
1328
+
1329
+ :param str user_id: (required)
1330
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1331
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1332
+ :param int limit: The maximum number of entries to return.
1333
+ :param int skip: The number of entries to skip.
1334
+ :param int page: The page number (i.e. skip limit*page entries)
1335
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1336
+ :param list[str] x_accept_feature:
1337
+ :param bool async_: Perform the request asynchronously
1338
+ :return: union[list[CollectionWithStats],list[CollectionOutput],Page]
1339
+ """
1340
+
1341
+ all_params = ['user_id','filter','sort','limit','skip','page','after_id','x_accept_feature',] # noqa: E501
1342
+ all_params.append('async_')
1343
+ all_params.append('_return_http_data_only')
1344
+ all_params.append('_preload_content')
1345
+ all_params.append('_request_timeout')
1346
+ all_params.append('_request_out')
1347
+
1348
+ params = locals()
1349
+ for key, val in six.iteritems(params['kwargs']):
1350
+ if key not in all_params:
1351
+ raise TypeError(
1352
+ "Got an unexpected keyword argument '%s'"
1353
+ " to method get_user_collections" % key
1354
+ )
1355
+ params[key] = val
1356
+ del params['kwargs']
1357
+ # verify the required parameter 'user_id' is set
1358
+ if ('user_id' not in params or
1359
+ params['user_id'] is None):
1360
+ raise ValueError("Missing the required parameter `user_id` when calling `get_user_collections`") # noqa: E501
1361
+ check_filename_params(params)
1362
+
1363
+ collection_formats = {}
1364
+
1365
+ path_params = {}
1366
+ if 'user_id' in params:
1367
+ path_params['user_id'] = params['user_id'] # noqa: E501
1368
+
1369
+ query_params = []
1370
+ if 'filter' in params:
1371
+ query_params.append(('filter', params['filter'])) # noqa: E501
1372
+ if 'sort' in params:
1373
+ query_params.append(('sort', params['sort'])) # noqa: E501
1374
+ if 'limit' in params:
1375
+ query_params.append(('limit', params['limit'])) # noqa: E501
1376
+ if 'skip' in params:
1377
+ query_params.append(('skip', params['skip'])) # noqa: E501
1378
+ if 'page' in params:
1379
+ query_params.append(('page', params['page'])) # noqa: E501
1380
+ if 'after_id' in params:
1381
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1382
+
1383
+ header_params = {}
1384
+ if 'x_accept_feature' in params:
1385
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
1386
+ collection_formats['x-accept-feature'] = '' # noqa: E501
1387
+
1388
+ form_params = []
1389
+ local_var_files = {}
1390
+
1391
+ body_params = None
1392
+ # HTTP header `Accept`
1393
+ header_params['Accept'] = self.api_client.select_header_accept(
1394
+ ['application/json']) # noqa: E501
1395
+
1396
+ # Authentication setting
1397
+ auth_settings = ['ApiKey'] # noqa: E501
1398
+
1399
+ return self.api_client.call_api(
1400
+ '/users/{user_id}/collections', 'GET',
1401
+ path_params,
1402
+ query_params,
1403
+ header_params,
1404
+ body=body_params,
1405
+ post_params=form_params,
1406
+ files=local_var_files,
1407
+ response_type='union[list[CollectionWithStats],list[CollectionOutput],Page]', # noqa: E501
1408
+ auth_settings=auth_settings,
1409
+ async_=params.get('async_'),
1410
+ _return_http_data_only=params.get('_return_http_data_only'),
1411
+ _preload_content=params.get('_preload_content', True),
1412
+ _request_timeout=params.get('_request_timeout'),
1413
+ _request_out=params.get('_request_out'),
1414
+ collection_formats=collection_formats)
1415
+
1416
+ def get_user_groups(self, uid, **kwargs): # noqa: E501
1417
+ """List all groups the specified user is a member of
1418
+
1419
+ This method makes a synchronous HTTP request by default.
1420
+
1421
+ :param str uid: (required)
1422
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1423
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1424
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1425
+ :param int limit: The maximum number of entries to return.
1426
+ :param int skip: The number of entries to skip.
1427
+ :param int page: The page number (i.e. skip limit*page entries)
1428
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1429
+ :param list[str] x_accept_feature: redirect header
1430
+ :param bool async_: Perform the request asynchronously
1431
+ :return: list[GroupOutput]
1432
+ """
1433
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1434
+ kwargs['_return_http_data_only'] = True
1435
+
1436
+ if kwargs.get('async_'):
1437
+ return self.get_user_groups_with_http_info(uid, **kwargs) # noqa: E501
1438
+ else:
1439
+ (data) = self.get_user_groups_with_http_info(uid, **kwargs) # noqa: E501
1440
+ if (
1441
+ data
1442
+ and hasattr(data, 'return_value')
1443
+ and not ignore_simplified_return_value
1444
+ ):
1445
+ return data.return_value()
1446
+ return data
1447
+
1448
+
1449
+ def get_user_groups_with_http_info(self, uid, **kwargs): # noqa: E501
1450
+ """List all groups the specified user is a member of
1451
+
1452
+ This method makes a synchronous HTTP request by default.
1453
+
1454
+ :param str uid: (required)
1455
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1456
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1457
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1458
+ :param int limit: The maximum number of entries to return.
1459
+ :param int skip: The number of entries to skip.
1460
+ :param int page: The page number (i.e. skip limit*page entries)
1461
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1462
+ :param list[str] x_accept_feature: redirect header
1463
+ :param bool async_: Perform the request asynchronously
1464
+ :return: list[GroupOutput]
1465
+ """
1466
+
1467
+ all_params = ['uid','exhaustive','filter','sort','limit','skip','page','after_id','x_accept_feature',] # noqa: E501
1468
+ all_params.append('async_')
1469
+ all_params.append('_return_http_data_only')
1470
+ all_params.append('_preload_content')
1471
+ all_params.append('_request_timeout')
1472
+ all_params.append('_request_out')
1473
+
1474
+ params = locals()
1475
+ for key, val in six.iteritems(params['kwargs']):
1476
+ if key not in all_params:
1477
+ raise TypeError(
1478
+ "Got an unexpected keyword argument '%s'"
1479
+ " to method get_user_groups" % key
1480
+ )
1481
+ params[key] = val
1482
+ del params['kwargs']
1483
+ # verify the required parameter 'uid' is set
1484
+ if ('uid' not in params or
1485
+ params['uid'] is None):
1486
+ raise ValueError("Missing the required parameter `uid` when calling `get_user_groups`") # noqa: E501
1487
+ check_filename_params(params)
1488
+
1489
+ collection_formats = {}
1490
+
1491
+ path_params = {}
1492
+ if 'uid' in params:
1493
+ path_params['uid'] = params['uid'] # noqa: E501
1494
+
1495
+ query_params = []
1496
+ if 'exhaustive' in params:
1497
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
1498
+ if 'filter' in params:
1499
+ query_params.append(('filter', params['filter'])) # noqa: E501
1500
+ if 'sort' in params:
1501
+ query_params.append(('sort', params['sort'])) # noqa: E501
1502
+ if 'limit' in params:
1503
+ query_params.append(('limit', params['limit'])) # noqa: E501
1504
+ if 'skip' in params:
1505
+ query_params.append(('skip', params['skip'])) # noqa: E501
1506
+ if 'page' in params:
1507
+ query_params.append(('page', params['page'])) # noqa: E501
1508
+ if 'after_id' in params:
1509
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1510
+
1511
+ header_params = {}
1512
+ if 'x_accept_feature' in params:
1513
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
1514
+ collection_formats['x-accept-feature'] = '' # noqa: E501
1515
+
1516
+ form_params = []
1517
+ local_var_files = {}
1518
+
1519
+ body_params = None
1520
+ # HTTP header `Accept`
1521
+ header_params['Accept'] = self.api_client.select_header_accept(
1522
+ ['application/json']) # noqa: E501
1523
+
1524
+ # Authentication setting
1525
+ auth_settings = ['ApiKey'] # noqa: E501
1526
+
1527
+ return self.api_client.call_api(
1528
+ '/users/{uid}/groups', 'GET',
1529
+ path_params,
1530
+ query_params,
1531
+ header_params,
1532
+ body=body_params,
1533
+ post_params=form_params,
1534
+ files=local_var_files,
1535
+ response_type='list[GroupOutput]', # noqa: E501
1536
+ auth_settings=auth_settings,
1537
+ async_=params.get('async_'),
1538
+ _return_http_data_only=params.get('_return_http_data_only'),
1539
+ _preload_content=params.get('_preload_content', True),
1540
+ _request_timeout=params.get('_request_timeout'),
1541
+ _request_out=params.get('_request_out'),
1542
+ collection_formats=collection_formats)
1543
+
1544
+ def get_user_projects(self, uid, **kwargs): # noqa: E501
1545
+ """Get all projects that belong to the given user.
1546
+
1547
+ Get all projects that belong to the given user.
1548
+ This method makes a synchronous HTTP request by default.
1549
+
1550
+ :param str uid: (required)
1551
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1552
+ :param bool include_all_info: Include all info in returned objects
1553
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1554
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1555
+ :param int limit: The maximum number of entries to return.
1556
+ :param int skip: The number of entries to skip.
1557
+ :param int page: The page number (i.e. skip limit*page entries)
1558
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1559
+ :param bool async_: Perform the request asynchronously
1560
+ :return: list[ProjectListOutput]
1561
+ """
1562
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1563
+ kwargs['_return_http_data_only'] = True
1564
+
1565
+ if kwargs.get('async_'):
1566
+ return self.get_user_projects_with_http_info(uid, **kwargs) # noqa: E501
1567
+ else:
1568
+ (data) = self.get_user_projects_with_http_info(uid, **kwargs) # noqa: E501
1569
+ if (
1570
+ data
1571
+ and hasattr(data, 'return_value')
1572
+ and not ignore_simplified_return_value
1573
+ ):
1574
+ return data.return_value()
1575
+ return data
1576
+
1577
+
1578
+ def get_user_projects_with_http_info(self, uid, **kwargs): # noqa: E501
1579
+ """Get all projects that belong to the given user.
1580
+
1581
+ Get all projects that belong to the given user.
1582
+ This method makes a synchronous HTTP request by default.
1583
+
1584
+ :param str uid: (required)
1585
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1586
+ :param bool include_all_info: Include all info in returned objects
1587
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1588
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1589
+ :param int limit: The maximum number of entries to return.
1590
+ :param int skip: The number of entries to skip.
1591
+ :param int page: The page number (i.e. skip limit*page entries)
1592
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1593
+ :param bool async_: Perform the request asynchronously
1594
+ :return: list[ProjectListOutput]
1595
+ """
1596
+
1597
+ all_params = ['uid','exhaustive','include_all_info','filter','sort','limit','skip','page','after_id',] # noqa: E501
1598
+ all_params.append('async_')
1599
+ all_params.append('_return_http_data_only')
1600
+ all_params.append('_preload_content')
1601
+ all_params.append('_request_timeout')
1602
+ all_params.append('_request_out')
1603
+
1604
+ params = locals()
1605
+ for key, val in six.iteritems(params['kwargs']):
1606
+ if key not in all_params:
1607
+ raise TypeError(
1608
+ "Got an unexpected keyword argument '%s'"
1609
+ " to method get_user_projects" % key
1610
+ )
1611
+ params[key] = val
1612
+ del params['kwargs']
1613
+ # verify the required parameter 'uid' is set
1614
+ if ('uid' not in params or
1615
+ params['uid'] is None):
1616
+ raise ValueError("Missing the required parameter `uid` when calling `get_user_projects`") # noqa: E501
1617
+ check_filename_params(params)
1618
+
1619
+ collection_formats = {}
1620
+
1621
+ path_params = {}
1622
+ if 'uid' in params:
1623
+ path_params['uid'] = params['uid'] # noqa: E501
1624
+
1625
+ query_params = []
1626
+ if 'exhaustive' in params:
1627
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
1628
+ if 'include_all_info' in params:
1629
+ query_params.append(('include_all_info', params['include_all_info'])) # noqa: E501
1630
+ if 'filter' in params:
1631
+ query_params.append(('filter', params['filter'])) # noqa: E501
1632
+ if 'sort' in params:
1633
+ query_params.append(('sort', params['sort'])) # noqa: E501
1634
+ if 'limit' in params:
1635
+ query_params.append(('limit', params['limit'])) # noqa: E501
1636
+ if 'skip' in params:
1637
+ query_params.append(('skip', params['skip'])) # noqa: E501
1638
+ if 'page' in params:
1639
+ query_params.append(('page', params['page'])) # noqa: E501
1640
+ if 'after_id' in params:
1641
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1642
+
1643
+ header_params = {}
1644
+
1645
+ form_params = []
1646
+ local_var_files = {}
1647
+
1648
+ body_params = None
1649
+ # HTTP header `Accept`
1650
+ header_params['Accept'] = self.api_client.select_header_accept(
1651
+ ['application/json']) # noqa: E501
1652
+
1653
+ # Authentication setting
1654
+ auth_settings = ['ApiKey'] # noqa: E501
1655
+
1656
+ return self.api_client.call_api(
1657
+ '/users/{uid}/projects', 'GET',
1658
+ path_params,
1659
+ query_params,
1660
+ header_params,
1661
+ body=body_params,
1662
+ post_params=form_params,
1663
+ files=local_var_files,
1664
+ response_type='list[ProjectListOutput]', # noqa: E501
1665
+ auth_settings=auth_settings,
1666
+ async_=params.get('async_'),
1667
+ _return_http_data_only=params.get('_return_http_data_only'),
1668
+ _preload_content=params.get('_preload_content', True),
1669
+ _request_timeout=params.get('_request_timeout'),
1670
+ _request_out=params.get('_request_out'),
1671
+ collection_formats=collection_formats)
1672
+
1673
+ def get_user_sessions(self, uid, **kwargs): # noqa: E501
1674
+ """Get all sessions that belong to the given user.
1675
+
1676
+ Get all sessions that belong to the given user.
1677
+ This method makes a synchronous HTTP request by default.
1678
+
1679
+ :param str uid: (required)
1680
+ :param bool exhaustive:
1681
+ :param bool include_all_info: Include all info in returned objects
1682
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1683
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1684
+ :param int limit: The maximum number of entries to return.
1685
+ :param int skip: The number of entries to skip.
1686
+ :param int page: The page number (i.e. skip limit*page entries)
1687
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1688
+ :param bool async_: Perform the request asynchronously
1689
+ :return: list[SessionListOutput]
1690
+ """
1691
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1692
+ kwargs['_return_http_data_only'] = True
1693
+
1694
+ if kwargs.get('async_'):
1695
+ return self.get_user_sessions_with_http_info(uid, **kwargs) # noqa: E501
1696
+ else:
1697
+ (data) = self.get_user_sessions_with_http_info(uid, **kwargs) # noqa: E501
1698
+ if (
1699
+ data
1700
+ and hasattr(data, 'return_value')
1701
+ and not ignore_simplified_return_value
1702
+ ):
1703
+ return data.return_value()
1704
+ return data
1705
+
1706
+
1707
+ def get_user_sessions_with_http_info(self, uid, **kwargs): # noqa: E501
1708
+ """Get all sessions that belong to the given user.
1709
+
1710
+ Get all sessions that belong to the given user.
1711
+ This method makes a synchronous HTTP request by default.
1712
+
1713
+ :param str uid: (required)
1714
+ :param bool exhaustive:
1715
+ :param bool include_all_info: Include all info in returned objects
1716
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1717
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1718
+ :param int limit: The maximum number of entries to return.
1719
+ :param int skip: The number of entries to skip.
1720
+ :param int page: The page number (i.e. skip limit*page entries)
1721
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1722
+ :param bool async_: Perform the request asynchronously
1723
+ :return: list[SessionListOutput]
1724
+ """
1725
+
1726
+ all_params = ['uid','exhaustive','include_all_info','filter','sort','limit','skip','page','after_id',] # noqa: E501
1727
+ all_params.append('async_')
1728
+ all_params.append('_return_http_data_only')
1729
+ all_params.append('_preload_content')
1730
+ all_params.append('_request_timeout')
1731
+ all_params.append('_request_out')
1732
+
1733
+ params = locals()
1734
+ for key, val in six.iteritems(params['kwargs']):
1735
+ if key not in all_params:
1736
+ raise TypeError(
1737
+ "Got an unexpected keyword argument '%s'"
1738
+ " to method get_user_sessions" % key
1739
+ )
1740
+ params[key] = val
1741
+ del params['kwargs']
1742
+ # verify the required parameter 'uid' is set
1743
+ if ('uid' not in params or
1744
+ params['uid'] is None):
1745
+ raise ValueError("Missing the required parameter `uid` when calling `get_user_sessions`") # noqa: E501
1746
+ check_filename_params(params)
1747
+
1748
+ collection_formats = {}
1749
+
1750
+ path_params = {}
1751
+ if 'uid' in params:
1752
+ path_params['uid'] = params['uid'] # noqa: E501
1753
+
1754
+ query_params = []
1755
+ if 'exhaustive' in params:
1756
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
1757
+ if 'include_all_info' in params:
1758
+ query_params.append(('include_all_info', params['include_all_info'])) # noqa: E501
1759
+ if 'filter' in params:
1760
+ query_params.append(('filter', params['filter'])) # noqa: E501
1761
+ if 'sort' in params:
1762
+ query_params.append(('sort', params['sort'])) # noqa: E501
1763
+ if 'limit' in params:
1764
+ query_params.append(('limit', params['limit'])) # noqa: E501
1765
+ if 'skip' in params:
1766
+ query_params.append(('skip', params['skip'])) # noqa: E501
1767
+ if 'page' in params:
1768
+ query_params.append(('page', params['page'])) # noqa: E501
1769
+ if 'after_id' in params:
1770
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1771
+
1772
+ header_params = {}
1773
+
1774
+ form_params = []
1775
+ local_var_files = {}
1776
+
1777
+ body_params = None
1778
+ # HTTP header `Accept`
1779
+ header_params['Accept'] = self.api_client.select_header_accept(
1780
+ ['application/json']) # noqa: E501
1781
+
1782
+ # Authentication setting
1783
+ auth_settings = ['ApiKey'] # noqa: E501
1784
+
1785
+ return self.api_client.call_api(
1786
+ '/users/{uid}/sessions', 'GET',
1787
+ path_params,
1788
+ query_params,
1789
+ header_params,
1790
+ body=body_params,
1791
+ post_params=form_params,
1792
+ files=local_var_files,
1793
+ response_type='list[SessionListOutput]', # noqa: E501
1794
+ auth_settings=auth_settings,
1795
+ async_=params.get('async_'),
1796
+ _return_http_data_only=params.get('_return_http_data_only'),
1797
+ _preload_content=params.get('_preload_content', True),
1798
+ _request_timeout=params.get('_request_timeout'),
1799
+ _request_out=params.get('_request_out'),
1800
+ collection_formats=collection_formats)
1801
+
1802
+ def modify_current_user_info(self, body, **kwargs): # noqa: E501
1803
+ """Update or replace info for the current user.
1804
+
1805
+ Modifies user info fields Args: info (Info): Model representing arbitrary data auth_session (AuthSession): session from incoming request Returns: None
1806
+ This method makes a synchronous HTTP request by default.
1807
+
1808
+ :param Info body: (required)
1809
+ :param bool async_: Perform the request asynchronously
1810
+ :return: None
1811
+ """
1812
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1813
+ kwargs['_return_http_data_only'] = True
1814
+
1815
+ if kwargs.get('async_'):
1816
+ return self.modify_current_user_info_with_http_info(body, **kwargs) # noqa: E501
1817
+ else:
1818
+ (data) = self.modify_current_user_info_with_http_info(body, **kwargs) # noqa: E501
1819
+ if (
1820
+ data
1821
+ and hasattr(data, 'return_value')
1822
+ and not ignore_simplified_return_value
1823
+ ):
1824
+ return data.return_value()
1825
+ return data
1826
+
1827
+
1828
+ def modify_current_user_info_with_http_info(self, body, **kwargs): # noqa: E501
1829
+ """Update or replace info for the current user.
1830
+
1831
+ Modifies user info fields Args: info (Info): Model representing arbitrary data auth_session (AuthSession): session from incoming request Returns: None
1832
+ This method makes a synchronous HTTP request by default.
1833
+
1834
+ :param Info body: (required)
1835
+ :param bool async_: Perform the request asynchronously
1836
+ :return: None
1837
+ """
1838
+
1839
+ all_params = ['body',] # noqa: E501
1840
+ all_params.append('async_')
1841
+ all_params.append('_return_http_data_only')
1842
+ all_params.append('_preload_content')
1843
+ all_params.append('_request_timeout')
1844
+ all_params.append('_request_out')
1845
+
1846
+ params = locals()
1847
+ for key, val in six.iteritems(params['kwargs']):
1848
+ if key not in all_params:
1849
+ raise TypeError(
1850
+ "Got an unexpected keyword argument '%s'"
1851
+ " to method modify_current_user_info" % key
1852
+ )
1853
+ params[key] = val
1854
+ del params['kwargs']
1855
+ # verify the required parameter 'body' is set
1856
+ if ('body' not in params or
1857
+ params['body'] is None):
1858
+ raise ValueError("Missing the required parameter `body` when calling `modify_current_user_info`") # noqa: E501
1859
+ check_filename_params(params)
1860
+
1861
+ collection_formats = {}
1862
+
1863
+ path_params = {}
1864
+
1865
+ query_params = []
1866
+
1867
+ header_params = {}
1868
+
1869
+ form_params = []
1870
+ local_var_files = {}
1871
+
1872
+ body_params = None
1873
+ if 'body' in params:
1874
+ if 'Info'.startswith('union'):
1875
+ body_type = type(params['body'])
1876
+ if getattr(body_type, 'positional_to_model', None):
1877
+ body_params = body_type.positional_to_model(params['body'])
1878
+ else:
1879
+ body_params = params['body']
1880
+ else:
1881
+ body_params = flywheel.models.Info.positional_to_model(params['body'])
1882
+ # HTTP header `Accept`
1883
+ header_params['Accept'] = self.api_client.select_header_accept(
1884
+ ['application/json']) # noqa: E501
1885
+
1886
+ # HTTP header `Content-Type`
1887
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
1888
+ ['application/json']) # noqa: E501
1889
+
1890
+ # Authentication setting
1891
+ auth_settings = ['ApiKey'] # noqa: E501
1892
+
1893
+ return self.api_client.call_api(
1894
+ '/users/self/info', 'PATCH',
1895
+ path_params,
1896
+ query_params,
1897
+ header_params,
1898
+ body=body_params,
1899
+ post_params=form_params,
1900
+ files=local_var_files,
1901
+ response_type=None, # noqa: E501
1902
+ auth_settings=auth_settings,
1903
+ async_=params.get('async_'),
1904
+ _return_http_data_only=params.get('_return_http_data_only'),
1905
+ _preload_content=params.get('_preload_content', True),
1906
+ _request_timeout=params.get('_request_timeout'),
1907
+ _request_out=params.get('_request_out'),
1908
+ collection_formats=collection_formats)
1909
+
1910
+ def modify_user(self, uid, body, **kwargs): # noqa: E501
1911
+ """Update the specified user
1912
+
1913
+ Update the specified user
1914
+ This method makes a synchronous HTTP request by default.
1915
+
1916
+ :param str uid: (required)
1917
+ :param ModifyUserInput body: (required)
1918
+ :param bool clear_permissions:
1919
+ :param bool async_: Perform the request asynchronously
1920
+ :return: ModifiedResult
1921
+ """
1922
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1923
+ kwargs['_return_http_data_only'] = True
1924
+
1925
+ if kwargs.get('async_'):
1926
+ return self.modify_user_with_http_info(uid, body, **kwargs) # noqa: E501
1927
+ else:
1928
+ (data) = self.modify_user_with_http_info(uid, body, **kwargs) # noqa: E501
1929
+ if (
1930
+ data
1931
+ and hasattr(data, 'return_value')
1932
+ and not ignore_simplified_return_value
1933
+ ):
1934
+ return data.return_value()
1935
+ return data
1936
+
1937
+
1938
+ def modify_user_with_http_info(self, uid, body, **kwargs): # noqa: E501
1939
+ """Update the specified user
1940
+
1941
+ Update the specified user
1942
+ This method makes a synchronous HTTP request by default.
1943
+
1944
+ :param str uid: (required)
1945
+ :param ModifyUserInput body: (required)
1946
+ :param bool clear_permissions:
1947
+ :param bool async_: Perform the request asynchronously
1948
+ :return: ModifiedResult
1949
+ """
1950
+
1951
+ all_params = ['uid','body','clear_permissions',] # noqa: E501
1952
+ all_params.append('async_')
1953
+ all_params.append('_return_http_data_only')
1954
+ all_params.append('_preload_content')
1955
+ all_params.append('_request_timeout')
1956
+ all_params.append('_request_out')
1957
+
1958
+ params = locals()
1959
+ for key, val in six.iteritems(params['kwargs']):
1960
+ if key not in all_params:
1961
+ raise TypeError(
1962
+ "Got an unexpected keyword argument '%s'"
1963
+ " to method modify_user" % key
1964
+ )
1965
+ params[key] = val
1966
+ del params['kwargs']
1967
+ # verify the required parameter 'uid' is set
1968
+ if ('uid' not in params or
1969
+ params['uid'] is None):
1970
+ raise ValueError("Missing the required parameter `uid` when calling `modify_user`") # noqa: E501
1971
+ # verify the required parameter 'body' is set
1972
+ if ('body' not in params or
1973
+ params['body'] is None):
1974
+ raise ValueError("Missing the required parameter `body` when calling `modify_user`") # noqa: E501
1975
+ check_filename_params(params)
1976
+
1977
+ collection_formats = {}
1978
+
1979
+ path_params = {}
1980
+ if 'uid' in params:
1981
+ path_params['uid'] = params['uid'] # noqa: E501
1982
+
1983
+ query_params = []
1984
+ if 'clear_permissions' in params:
1985
+ query_params.append(('clear_permissions', params['clear_permissions'])) # noqa: E501
1986
+
1987
+ header_params = {}
1988
+
1989
+ form_params = []
1990
+ local_var_files = {}
1991
+
1992
+ body_params = None
1993
+ if 'body' in params:
1994
+ if 'ModifyUserInput'.startswith('union'):
1995
+ body_type = type(params['body'])
1996
+ if getattr(body_type, 'positional_to_model', None):
1997
+ body_params = body_type.positional_to_model(params['body'])
1998
+ else:
1999
+ body_params = params['body']
2000
+ else:
2001
+ body_params = flywheel.models.ModifyUserInput.positional_to_model(params['body'])
2002
+ # HTTP header `Accept`
2003
+ header_params['Accept'] = self.api_client.select_header_accept(
2004
+ ['application/json']) # noqa: E501
2005
+
2006
+ # HTTP header `Content-Type`
2007
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
2008
+ ['application/json']) # noqa: E501
2009
+
2010
+ # Authentication setting
2011
+ auth_settings = ['ApiKey'] # noqa: E501
2012
+
2013
+ return self.api_client.call_api(
2014
+ '/users/{uid}', 'PUT',
2015
+ path_params,
2016
+ query_params,
2017
+ header_params,
2018
+ body=body_params,
2019
+ post_params=form_params,
2020
+ files=local_var_files,
2021
+ response_type='ModifiedResult', # noqa: E501
2022
+ auth_settings=auth_settings,
2023
+ async_=params.get('async_'),
2024
+ _return_http_data_only=params.get('_return_http_data_only'),
2025
+ _preload_content=params.get('_preload_content', True),
2026
+ _request_timeout=params.get('_request_timeout'),
2027
+ _request_out=params.get('_request_out'),
2028
+ collection_formats=collection_formats)
2029
+
2030
+ def sync_user(self, cid, body, **kwargs): # noqa: E501
2031
+ """Sync a center user to enterprise (Sync service use ONLY)
2032
+
2033
+ This method makes a synchronous HTTP request by default.
2034
+
2035
+ :param str cid: (required)
2036
+ :param SyncUserInput body: (required)
2037
+ :param bool async_: Perform the request asynchronously
2038
+ :return: None
2039
+ """
2040
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2041
+ kwargs['_return_http_data_only'] = True
2042
+
2043
+ if kwargs.get('async_'):
2044
+ return self.sync_user_with_http_info(cid, body, **kwargs) # noqa: E501
2045
+ else:
2046
+ (data) = self.sync_user_with_http_info(cid, body, **kwargs) # noqa: E501
2047
+ if (
2048
+ data
2049
+ and hasattr(data, 'return_value')
2050
+ and not ignore_simplified_return_value
2051
+ ):
2052
+ return data.return_value()
2053
+ return data
2054
+
2055
+
2056
+ def sync_user_with_http_info(self, cid, body, **kwargs): # noqa: E501
2057
+ """Sync a center user to enterprise (Sync service use ONLY)
2058
+
2059
+ This method makes a synchronous HTTP request by default.
2060
+
2061
+ :param str cid: (required)
2062
+ :param SyncUserInput body: (required)
2063
+ :param bool async_: Perform the request asynchronously
2064
+ :return: None
2065
+ """
2066
+
2067
+ all_params = ['cid','body',] # noqa: E501
2068
+ all_params.append('async_')
2069
+ all_params.append('_return_http_data_only')
2070
+ all_params.append('_preload_content')
2071
+ all_params.append('_request_timeout')
2072
+ all_params.append('_request_out')
2073
+
2074
+ params = locals()
2075
+ for key, val in six.iteritems(params['kwargs']):
2076
+ if key not in all_params:
2077
+ raise TypeError(
2078
+ "Got an unexpected keyword argument '%s'"
2079
+ " to method sync_user" % key
2080
+ )
2081
+ params[key] = val
2082
+ del params['kwargs']
2083
+ # verify the required parameter 'cid' is set
2084
+ if ('cid' not in params or
2085
+ params['cid'] is None):
2086
+ raise ValueError("Missing the required parameter `cid` when calling `sync_user`") # noqa: E501
2087
+ # verify the required parameter 'body' is set
2088
+ if ('body' not in params or
2089
+ params['body'] is None):
2090
+ raise ValueError("Missing the required parameter `body` when calling `sync_user`") # noqa: E501
2091
+ check_filename_params(params)
2092
+
2093
+ collection_formats = {}
2094
+
2095
+ path_params = {}
2096
+ if 'cid' in params:
2097
+ path_params['cid'] = params['cid'] # noqa: E501
2098
+
2099
+ query_params = []
2100
+
2101
+ header_params = {}
2102
+
2103
+ form_params = []
2104
+ local_var_files = {}
2105
+
2106
+ body_params = None
2107
+ if 'body' in params:
2108
+ if 'SyncUserInput'.startswith('union'):
2109
+ body_type = type(params['body'])
2110
+ if getattr(body_type, 'positional_to_model', None):
2111
+ body_params = body_type.positional_to_model(params['body'])
2112
+ else:
2113
+ body_params = params['body']
2114
+ else:
2115
+ body_params = flywheel.models.SyncUserInput.positional_to_model(params['body'])
2116
+ # HTTP header `Accept`
2117
+ header_params['Accept'] = self.api_client.select_header_accept(
2118
+ ['application/json']) # noqa: E501
2119
+
2120
+ # HTTP header `Content-Type`
2121
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
2122
+ ['application/json']) # noqa: E501
2123
+
2124
+ # Authentication setting
2125
+ auth_settings = ['ApiKey'] # noqa: E501
2126
+
2127
+ return self.api_client.call_api(
2128
+ '/users/sync/{cid}', 'PUT',
2129
+ path_params,
2130
+ query_params,
2131
+ header_params,
2132
+ body=body_params,
2133
+ post_params=form_params,
2134
+ files=local_var_files,
2135
+ response_type=None, # noqa: E501
2136
+ auth_settings=auth_settings,
2137
+ async_=params.get('async_'),
2138
+ _return_http_data_only=params.get('_return_http_data_only'),
2139
+ _preload_content=params.get('_preload_content', True),
2140
+ _request_timeout=params.get('_request_timeout'),
2141
+ _request_out=params.get('_request_out'),
2142
+ collection_formats=collection_formats)