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,2829 @@
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 GroupsApi(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_group(self, body, **kwargs): # noqa: E501
35
+ """Add a group
36
+
37
+ Create a new group.
38
+ This method makes a synchronous HTTP request by default.
39
+
40
+ :param GroupInput body: (required)
41
+ :param bool async_: Perform the request asynchronously
42
+ :return: InsertedId
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_group_with_http_info(body, **kwargs) # noqa: E501
49
+ else:
50
+ (data) = self.add_group_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_group_with_http_info(self, body, **kwargs): # noqa: E501
61
+ """Add a group
62
+
63
+ Create a new group.
64
+ This method makes a synchronous HTTP request by default.
65
+
66
+ :param GroupInput body: (required)
67
+ :param bool async_: Perform the request asynchronously
68
+ :return: InsertedId
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_group" % 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_group`") # 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 'GroupInput'.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.GroupInput.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
+ '/groups', '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='InsertedId', # 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 add_group_permission(self, group_id, body, **kwargs): # noqa: E501
143
+ """Add a permission
144
+
145
+ Adds permission to the group Args: group_id: the id of the group permission: The access permission auth_session: The auth session of the user Returns AccessPermissionOutput: The added permission
146
+ This method makes a synchronous HTTP request by default.
147
+
148
+ :param str group_id: (required)
149
+ :param AccessPermission body: (required)
150
+ :param bool async_: Perform the request asynchronously
151
+ :return: AccessPermissionOutput
152
+ """
153
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
154
+ kwargs['_return_http_data_only'] = True
155
+
156
+ if kwargs.get('async_'):
157
+ return self.add_group_permission_with_http_info(group_id, body, **kwargs) # noqa: E501
158
+ else:
159
+ (data) = self.add_group_permission_with_http_info(group_id, body, **kwargs) # noqa: E501
160
+ if (
161
+ data
162
+ and hasattr(data, 'return_value')
163
+ and not ignore_simplified_return_value
164
+ ):
165
+ return data.return_value()
166
+ return data
167
+
168
+
169
+ def add_group_permission_with_http_info(self, group_id, body, **kwargs): # noqa: E501
170
+ """Add a permission
171
+
172
+ Adds permission to the group Args: group_id: the id of the group permission: The access permission auth_session: The auth session of the user Returns AccessPermissionOutput: The added permission
173
+ This method makes a synchronous HTTP request by default.
174
+
175
+ :param str group_id: (required)
176
+ :param AccessPermission body: (required)
177
+ :param bool async_: Perform the request asynchronously
178
+ :return: AccessPermissionOutput
179
+ """
180
+
181
+ all_params = ['group_id','body',] # noqa: E501
182
+ all_params.append('async_')
183
+ all_params.append('_return_http_data_only')
184
+ all_params.append('_preload_content')
185
+ all_params.append('_request_timeout')
186
+ all_params.append('_request_out')
187
+
188
+ params = locals()
189
+ for key, val in six.iteritems(params['kwargs']):
190
+ if key not in all_params:
191
+ raise TypeError(
192
+ "Got an unexpected keyword argument '%s'"
193
+ " to method add_group_permission" % key
194
+ )
195
+ params[key] = val
196
+ del params['kwargs']
197
+ # verify the required parameter 'group_id' is set
198
+ if ('group_id' not in params or
199
+ params['group_id'] is None):
200
+ raise ValueError("Missing the required parameter `group_id` when calling `add_group_permission`") # noqa: E501
201
+ # verify the required parameter 'body' is set
202
+ if ('body' not in params or
203
+ params['body'] is None):
204
+ raise ValueError("Missing the required parameter `body` when calling `add_group_permission`") # noqa: E501
205
+ check_filename_params(params)
206
+
207
+ collection_formats = {}
208
+
209
+ path_params = {}
210
+ if 'group_id' in params:
211
+ path_params['group_id'] = params['group_id'] # noqa: E501
212
+
213
+ query_params = []
214
+
215
+ header_params = {}
216
+
217
+ form_params = []
218
+ local_var_files = {}
219
+
220
+ body_params = None
221
+ if 'body' in params:
222
+ if 'AccessPermission'.startswith('union'):
223
+ body_type = type(params['body'])
224
+ if getattr(body_type, 'positional_to_model', None):
225
+ body_params = body_type.positional_to_model(params['body'])
226
+ else:
227
+ body_params = params['body']
228
+ else:
229
+ body_params = flywheel.models.AccessPermission.positional_to_model(params['body'])
230
+ # HTTP header `Accept`
231
+ header_params['Accept'] = self.api_client.select_header_accept(
232
+ ['application/json']) # noqa: E501
233
+
234
+ # HTTP header `Content-Type`
235
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
236
+ ['application/json']) # noqa: E501
237
+
238
+ # Authentication setting
239
+ auth_settings = ['ApiKey'] # noqa: E501
240
+
241
+ return self.api_client.call_api(
242
+ '/groups/{group_id}/permissions', 'POST',
243
+ path_params,
244
+ query_params,
245
+ header_params,
246
+ body=body_params,
247
+ post_params=form_params,
248
+ files=local_var_files,
249
+ response_type='AccessPermissionOutput', # noqa: E501
250
+ auth_settings=auth_settings,
251
+ async_=params.get('async_'),
252
+ _return_http_data_only=params.get('_return_http_data_only'),
253
+ _preload_content=params.get('_preload_content', True),
254
+ _request_timeout=params.get('_request_timeout'),
255
+ _request_out=params.get('_request_out'),
256
+ collection_formats=collection_formats)
257
+
258
+ def add_group_permission_template(self, group_id, body, **kwargs): # noqa: E501
259
+ """Add a permission template
260
+
261
+ Add a permission template
262
+ This method makes a synchronous HTTP request by default.
263
+
264
+ :param str group_id: (required)
265
+ :param RolePermission body: (required)
266
+ :param bool propagate:
267
+ :param list[union[HeaderFeature,str]] x_accept_feature:
268
+ :param bool async_: Perform the request asynchronously
269
+ :return: RolePermissionOutput
270
+ """
271
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
272
+ kwargs['_return_http_data_only'] = True
273
+
274
+ if kwargs.get('async_'):
275
+ return self.add_group_permission_template_with_http_info(group_id, body, **kwargs) # noqa: E501
276
+ else:
277
+ (data) = self.add_group_permission_template_with_http_info(group_id, body, **kwargs) # noqa: E501
278
+ if (
279
+ data
280
+ and hasattr(data, 'return_value')
281
+ and not ignore_simplified_return_value
282
+ ):
283
+ return data.return_value()
284
+ return data
285
+
286
+
287
+ def add_group_permission_template_with_http_info(self, group_id, body, **kwargs): # noqa: E501
288
+ """Add a permission template
289
+
290
+ Add a permission template
291
+ This method makes a synchronous HTTP request by default.
292
+
293
+ :param str group_id: (required)
294
+ :param RolePermission body: (required)
295
+ :param bool propagate:
296
+ :param list[union[HeaderFeature,str]] x_accept_feature:
297
+ :param bool async_: Perform the request asynchronously
298
+ :return: RolePermissionOutput
299
+ """
300
+
301
+ all_params = ['group_id','body','propagate','x_accept_feature',] # noqa: E501
302
+ all_params.append('async_')
303
+ all_params.append('_return_http_data_only')
304
+ all_params.append('_preload_content')
305
+ all_params.append('_request_timeout')
306
+ all_params.append('_request_out')
307
+
308
+ params = locals()
309
+ for key, val in six.iteritems(params['kwargs']):
310
+ if key not in all_params:
311
+ raise TypeError(
312
+ "Got an unexpected keyword argument '%s'"
313
+ " to method add_group_permission_template" % key
314
+ )
315
+ params[key] = val
316
+ del params['kwargs']
317
+ # verify the required parameter 'group_id' is set
318
+ if ('group_id' not in params or
319
+ params['group_id'] is None):
320
+ raise ValueError("Missing the required parameter `group_id` when calling `add_group_permission_template`") # noqa: E501
321
+ # verify the required parameter 'body' is set
322
+ if ('body' not in params or
323
+ params['body'] is None):
324
+ raise ValueError("Missing the required parameter `body` when calling `add_group_permission_template`") # noqa: E501
325
+ check_filename_params(params)
326
+
327
+ collection_formats = {}
328
+
329
+ path_params = {}
330
+ if 'group_id' in params:
331
+ path_params['group_id'] = params['group_id'] # noqa: E501
332
+
333
+ query_params = []
334
+ if 'propagate' in params:
335
+ query_params.append(('propagate', params['propagate'])) # noqa: E501
336
+
337
+ header_params = {}
338
+ if 'x_accept_feature' in params:
339
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
340
+ collection_formats['x-accept-feature'] = '' # noqa: E501
341
+
342
+ form_params = []
343
+ local_var_files = {}
344
+
345
+ body_params = None
346
+ if 'body' in params:
347
+ if 'RolePermission'.startswith('union'):
348
+ body_type = type(params['body'])
349
+ if getattr(body_type, 'positional_to_model', None):
350
+ body_params = body_type.positional_to_model(params['body'])
351
+ else:
352
+ body_params = params['body']
353
+ else:
354
+ body_params = flywheel.models.RolePermission.positional_to_model(params['body'])
355
+ # HTTP header `Accept`
356
+ header_params['Accept'] = self.api_client.select_header_accept(
357
+ ['application/json']) # noqa: E501
358
+
359
+ # HTTP header `Content-Type`
360
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
361
+ ['application/json']) # noqa: E501
362
+
363
+ # Authentication setting
364
+ auth_settings = ['ApiKey'] # noqa: E501
365
+
366
+ return self.api_client.call_api(
367
+ '/groups/{group_id}/permissions/templates', 'POST',
368
+ path_params,
369
+ query_params,
370
+ header_params,
371
+ body=body_params,
372
+ post_params=form_params,
373
+ files=local_var_files,
374
+ response_type='RolePermissionOutput', # noqa: E501
375
+ auth_settings=auth_settings,
376
+ async_=params.get('async_'),
377
+ _return_http_data_only=params.get('_return_http_data_only'),
378
+ _preload_content=params.get('_preload_content', True),
379
+ _request_timeout=params.get('_request_timeout'),
380
+ _request_out=params.get('_request_out'),
381
+ collection_formats=collection_formats)
382
+
383
+ def add_group_tag(self, cid, body, **kwargs): # noqa: E501
384
+ """Add a tag to a(n) group.
385
+
386
+ Propagates changes to projects, sessions and acquisitions
387
+ This method makes a synchronous HTTP request by default.
388
+
389
+ :param str cid: (required)
390
+ :param Tag body: (required)
391
+ :param bool async_: Perform the request asynchronously
392
+ :return: ModifiedResult
393
+ """
394
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
395
+ kwargs['_return_http_data_only'] = True
396
+
397
+ if kwargs.get('async_'):
398
+ return self.add_group_tag_with_http_info(cid, body, **kwargs) # noqa: E501
399
+ else:
400
+ (data) = self.add_group_tag_with_http_info(cid, body, **kwargs) # noqa: E501
401
+ if (
402
+ data
403
+ and hasattr(data, 'return_value')
404
+ and not ignore_simplified_return_value
405
+ ):
406
+ return data.return_value()
407
+ return data
408
+
409
+
410
+ def add_group_tag_with_http_info(self, cid, body, **kwargs): # noqa: E501
411
+ """Add a tag to a(n) group.
412
+
413
+ Propagates changes to projects, sessions and acquisitions
414
+ This method makes a synchronous HTTP request by default.
415
+
416
+ :param str cid: (required)
417
+ :param Tag body: (required)
418
+ :param bool async_: Perform the request asynchronously
419
+ :return: ModifiedResult
420
+ """
421
+
422
+ all_params = ['cid','body',] # noqa: E501
423
+ all_params.append('async_')
424
+ all_params.append('_return_http_data_only')
425
+ all_params.append('_preload_content')
426
+ all_params.append('_request_timeout')
427
+ all_params.append('_request_out')
428
+
429
+ params = locals()
430
+ for key, val in six.iteritems(params['kwargs']):
431
+ if key not in all_params:
432
+ raise TypeError(
433
+ "Got an unexpected keyword argument '%s'"
434
+ " to method add_group_tag" % key
435
+ )
436
+ params[key] = val
437
+ del params['kwargs']
438
+ # verify the required parameter 'cid' is set
439
+ if ('cid' not in params or
440
+ params['cid'] is None):
441
+ raise ValueError("Missing the required parameter `cid` when calling `add_group_tag`") # noqa: E501
442
+ # verify the required parameter 'body' is set
443
+ if ('body' not in params or
444
+ params['body'] is None):
445
+ raise ValueError("Missing the required parameter `body` when calling `add_group_tag`") # noqa: E501
446
+ check_filename_params(params)
447
+
448
+ collection_formats = {}
449
+
450
+ path_params = {}
451
+ if 'cid' in params:
452
+ path_params['cid'] = params['cid'] # noqa: E501
453
+
454
+ query_params = []
455
+
456
+ header_params = {}
457
+
458
+ form_params = []
459
+ local_var_files = {}
460
+
461
+ body_params = None
462
+ if 'body' in params:
463
+ if 'Tag'.startswith('union'):
464
+ body_type = type(params['body'])
465
+ if getattr(body_type, 'positional_to_model', None):
466
+ body_params = body_type.positional_to_model(params['body'])
467
+ else:
468
+ body_params = params['body']
469
+ else:
470
+ body_params = flywheel.models.Tag.positional_to_model(params['body'])
471
+ # HTTP header `Accept`
472
+ header_params['Accept'] = self.api_client.select_header_accept(
473
+ ['application/json']) # noqa: E501
474
+
475
+ # HTTP header `Content-Type`
476
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
477
+ ['application/json']) # noqa: E501
478
+
479
+ # Authentication setting
480
+ auth_settings = ['ApiKey'] # noqa: E501
481
+
482
+ return self.api_client.call_api(
483
+ '/groups/{cid}/tags', 'POST',
484
+ path_params,
485
+ query_params,
486
+ header_params,
487
+ body=body_params,
488
+ post_params=form_params,
489
+ files=local_var_files,
490
+ response_type='ModifiedResult', # noqa: E501
491
+ auth_settings=auth_settings,
492
+ async_=params.get('async_'),
493
+ _return_http_data_only=params.get('_return_http_data_only'),
494
+ _preload_content=params.get('_preload_content', True),
495
+ _request_timeout=params.get('_request_timeout'),
496
+ _request_out=params.get('_request_out'),
497
+ collection_formats=collection_formats)
498
+
499
+ def add_group_tags(self, cid, body, **kwargs): # noqa: E501
500
+ """Add multiple tags to a(n) group
501
+
502
+ Add multiple tags to a(n) group
503
+ This method makes a synchronous HTTP request by default.
504
+
505
+ :param str cid: (required)
506
+ :param list[str] body: (required)
507
+ :param bool async_: Perform the request asynchronously
508
+ :return: None
509
+ """
510
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
511
+ kwargs['_return_http_data_only'] = True
512
+
513
+ if kwargs.get('async_'):
514
+ return self.add_group_tags_with_http_info(cid, body, **kwargs) # noqa: E501
515
+ else:
516
+ (data) = self.add_group_tags_with_http_info(cid, body, **kwargs) # noqa: E501
517
+ if (
518
+ data
519
+ and hasattr(data, 'return_value')
520
+ and not ignore_simplified_return_value
521
+ ):
522
+ return data.return_value()
523
+ return data
524
+
525
+
526
+ def add_group_tags_with_http_info(self, cid, body, **kwargs): # noqa: E501
527
+ """Add multiple tags to a(n) group
528
+
529
+ Add multiple tags to a(n) group
530
+ This method makes a synchronous HTTP request by default.
531
+
532
+ :param str cid: (required)
533
+ :param list[str] body: (required)
534
+ :param bool async_: Perform the request asynchronously
535
+ :return: None
536
+ """
537
+
538
+ all_params = ['cid','body',] # noqa: E501
539
+ all_params.append('async_')
540
+ all_params.append('_return_http_data_only')
541
+ all_params.append('_preload_content')
542
+ all_params.append('_request_timeout')
543
+ all_params.append('_request_out')
544
+
545
+ params = locals()
546
+ for key, val in six.iteritems(params['kwargs']):
547
+ if key not in all_params:
548
+ raise TypeError(
549
+ "Got an unexpected keyword argument '%s'"
550
+ " to method add_group_tags" % key
551
+ )
552
+ params[key] = val
553
+ del params['kwargs']
554
+ # verify the required parameter 'cid' is set
555
+ if ('cid' not in params or
556
+ params['cid'] is None):
557
+ raise ValueError("Missing the required parameter `cid` when calling `add_group_tags`") # noqa: E501
558
+ # verify the required parameter 'body' is set
559
+ if ('body' not in params or
560
+ params['body'] is None):
561
+ raise ValueError("Missing the required parameter `body` when calling `add_group_tags`") # noqa: E501
562
+ check_filename_params(params)
563
+
564
+ collection_formats = {}
565
+
566
+ path_params = {}
567
+ if 'cid' in params:
568
+ path_params['cid'] = params['cid'] # noqa: E501
569
+
570
+ query_params = []
571
+
572
+ header_params = {}
573
+
574
+ form_params = []
575
+ local_var_files = {}
576
+
577
+ body_params = None
578
+ if 'body' in params:
579
+ body_params = params['body']
580
+ # HTTP header `Accept`
581
+ header_params['Accept'] = self.api_client.select_header_accept(
582
+ ['application/json']) # noqa: E501
583
+
584
+ # HTTP header `Content-Type`
585
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
586
+ ['application/json']) # noqa: E501
587
+
588
+ # Authentication setting
589
+ auth_settings = ['ApiKey'] # noqa: E501
590
+
591
+ return self.api_client.call_api(
592
+ '/groups/{cid}/tags', 'PATCH',
593
+ path_params,
594
+ query_params,
595
+ header_params,
596
+ body=body_params,
597
+ post_params=form_params,
598
+ files=local_var_files,
599
+ response_type=None, # noqa: E501
600
+ auth_settings=auth_settings,
601
+ async_=params.get('async_'),
602
+ _return_http_data_only=params.get('_return_http_data_only'),
603
+ _preload_content=params.get('_preload_content', True),
604
+ _request_timeout=params.get('_request_timeout'),
605
+ _request_out=params.get('_request_out'),
606
+ collection_formats=collection_formats)
607
+
608
+ def add_role_to_group(self, group_id, body, **kwargs): # noqa: E501
609
+ """Add a role to the pool of roles in a group
610
+
611
+ Add a group role.
612
+ This method makes a synchronous HTTP request by default.
613
+
614
+ :param str group_id: (required)
615
+ :param GroupRole body: (required)
616
+ :param bool async_: Perform the request asynchronously
617
+ :return: RoleOutput
618
+ """
619
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
620
+ kwargs['_return_http_data_only'] = True
621
+
622
+ if kwargs.get('async_'):
623
+ return self.add_role_to_group_with_http_info(group_id, body, **kwargs) # noqa: E501
624
+ else:
625
+ (data) = self.add_role_to_group_with_http_info(group_id, body, **kwargs) # noqa: E501
626
+ if (
627
+ data
628
+ and hasattr(data, 'return_value')
629
+ and not ignore_simplified_return_value
630
+ ):
631
+ return data.return_value()
632
+ return data
633
+
634
+
635
+ def add_role_to_group_with_http_info(self, group_id, body, **kwargs): # noqa: E501
636
+ """Add a role to the pool of roles in a group
637
+
638
+ Add a group role.
639
+ This method makes a synchronous HTTP request by default.
640
+
641
+ :param str group_id: (required)
642
+ :param GroupRole body: (required)
643
+ :param bool async_: Perform the request asynchronously
644
+ :return: RoleOutput
645
+ """
646
+
647
+ all_params = ['group_id','body',] # noqa: E501
648
+ all_params.append('async_')
649
+ all_params.append('_return_http_data_only')
650
+ all_params.append('_preload_content')
651
+ all_params.append('_request_timeout')
652
+ all_params.append('_request_out')
653
+
654
+ params = locals()
655
+ for key, val in six.iteritems(params['kwargs']):
656
+ if key not in all_params:
657
+ raise TypeError(
658
+ "Got an unexpected keyword argument '%s'"
659
+ " to method add_role_to_group" % key
660
+ )
661
+ params[key] = val
662
+ del params['kwargs']
663
+ # verify the required parameter 'group_id' is set
664
+ if ('group_id' not in params or
665
+ params['group_id'] is None):
666
+ raise ValueError("Missing the required parameter `group_id` when calling `add_role_to_group`") # noqa: E501
667
+ # verify the required parameter 'body' is set
668
+ if ('body' not in params or
669
+ params['body'] is None):
670
+ raise ValueError("Missing the required parameter `body` when calling `add_role_to_group`") # noqa: E501
671
+ check_filename_params(params)
672
+
673
+ collection_formats = {}
674
+
675
+ path_params = {}
676
+ if 'group_id' in params:
677
+ path_params['group_id'] = params['group_id'] # noqa: E501
678
+
679
+ query_params = []
680
+
681
+ header_params = {}
682
+
683
+ form_params = []
684
+ local_var_files = {}
685
+
686
+ body_params = None
687
+ if 'body' in params:
688
+ if 'GroupRole'.startswith('union'):
689
+ body_type = type(params['body'])
690
+ if getattr(body_type, 'positional_to_model', None):
691
+ body_params = body_type.positional_to_model(params['body'])
692
+ else:
693
+ body_params = params['body']
694
+ else:
695
+ body_params = flywheel.models.GroupRole.positional_to_model(params['body'])
696
+ # HTTP header `Accept`
697
+ header_params['Accept'] = self.api_client.select_header_accept(
698
+ ['application/json']) # noqa: E501
699
+
700
+ # HTTP header `Content-Type`
701
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
702
+ ['application/json']) # noqa: E501
703
+
704
+ # Authentication setting
705
+ auth_settings = ['ApiKey'] # noqa: E501
706
+
707
+ return self.api_client.call_api(
708
+ '/groups/{group_id}/roles', 'POST',
709
+ path_params,
710
+ query_params,
711
+ header_params,
712
+ body=body_params,
713
+ post_params=form_params,
714
+ files=local_var_files,
715
+ response_type='RoleOutput', # noqa: E501
716
+ auth_settings=auth_settings,
717
+ async_=params.get('async_'),
718
+ _return_http_data_only=params.get('_return_http_data_only'),
719
+ _preload_content=params.get('_preload_content', True),
720
+ _request_timeout=params.get('_request_timeout'),
721
+ _request_out=params.get('_request_out'),
722
+ collection_formats=collection_formats)
723
+
724
+ def delete_group(self, group_id, **kwargs): # noqa: E501
725
+ """Delete group
726
+
727
+ Delete a group.
728
+ This method makes a synchronous HTTP request by default.
729
+
730
+ :param str group_id: (required)
731
+ :param bool async_: Perform the request asynchronously
732
+ :return: DeletedResult
733
+ """
734
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
735
+ kwargs['_return_http_data_only'] = True
736
+
737
+ if kwargs.get('async_'):
738
+ return self.delete_group_with_http_info(group_id, **kwargs) # noqa: E501
739
+ else:
740
+ (data) = self.delete_group_with_http_info(group_id, **kwargs) # noqa: E501
741
+ if (
742
+ data
743
+ and hasattr(data, 'return_value')
744
+ and not ignore_simplified_return_value
745
+ ):
746
+ return data.return_value()
747
+ return data
748
+
749
+
750
+ def delete_group_with_http_info(self, group_id, **kwargs): # noqa: E501
751
+ """Delete group
752
+
753
+ Delete a group.
754
+ This method makes a synchronous HTTP request by default.
755
+
756
+ :param str group_id: (required)
757
+ :param bool async_: Perform the request asynchronously
758
+ :return: DeletedResult
759
+ """
760
+
761
+ all_params = ['group_id',] # noqa: E501
762
+ all_params.append('async_')
763
+ all_params.append('_return_http_data_only')
764
+ all_params.append('_preload_content')
765
+ all_params.append('_request_timeout')
766
+ all_params.append('_request_out')
767
+
768
+ params = locals()
769
+ for key, val in six.iteritems(params['kwargs']):
770
+ if key not in all_params:
771
+ raise TypeError(
772
+ "Got an unexpected keyword argument '%s'"
773
+ " to method delete_group" % key
774
+ )
775
+ params[key] = val
776
+ del params['kwargs']
777
+ # verify the required parameter 'group_id' is set
778
+ if ('group_id' not in params or
779
+ params['group_id'] is None):
780
+ raise ValueError("Missing the required parameter `group_id` when calling `delete_group`") # noqa: E501
781
+ check_filename_params(params)
782
+
783
+ collection_formats = {}
784
+
785
+ path_params = {}
786
+ if 'group_id' in params:
787
+ path_params['group_id'] = params['group_id'] # noqa: E501
788
+
789
+ query_params = []
790
+
791
+ header_params = {}
792
+
793
+ form_params = []
794
+ local_var_files = {}
795
+
796
+ body_params = None
797
+ # HTTP header `Accept`
798
+ header_params['Accept'] = self.api_client.select_header_accept(
799
+ ['application/json']) # noqa: E501
800
+
801
+ # Authentication setting
802
+ auth_settings = ['ApiKey'] # noqa: E501
803
+
804
+ return self.api_client.call_api(
805
+ '/groups/{group_id}', 'DELETE',
806
+ path_params,
807
+ query_params,
808
+ header_params,
809
+ body=body_params,
810
+ post_params=form_params,
811
+ files=local_var_files,
812
+ response_type='DeletedResult', # noqa: E501
813
+ auth_settings=auth_settings,
814
+ async_=params.get('async_'),
815
+ _return_http_data_only=params.get('_return_http_data_only'),
816
+ _preload_content=params.get('_preload_content', True),
817
+ _request_timeout=params.get('_request_timeout'),
818
+ _request_out=params.get('_request_out'),
819
+ collection_formats=collection_formats)
820
+
821
+ def delete_group_tag(self, cid, value, **kwargs): # noqa: E501
822
+ """Delete a tag
823
+
824
+ Delete a tag
825
+ This method makes a synchronous HTTP request by default.
826
+
827
+ :param str cid: (required)
828
+ :param str value: The tag to interact with (required)
829
+ :param bool async_: Perform the request asynchronously
830
+ :return: DeletedResult
831
+ """
832
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
833
+ kwargs['_return_http_data_only'] = True
834
+
835
+ if kwargs.get('async_'):
836
+ return self.delete_group_tag_with_http_info(cid, value, **kwargs) # noqa: E501
837
+ else:
838
+ (data) = self.delete_group_tag_with_http_info(cid, value, **kwargs) # noqa: E501
839
+ if (
840
+ data
841
+ and hasattr(data, 'return_value')
842
+ and not ignore_simplified_return_value
843
+ ):
844
+ return data.return_value()
845
+ return data
846
+
847
+
848
+ def delete_group_tag_with_http_info(self, cid, value, **kwargs): # noqa: E501
849
+ """Delete a tag
850
+
851
+ Delete a tag
852
+ This method makes a synchronous HTTP request by default.
853
+
854
+ :param str cid: (required)
855
+ :param str value: The tag to interact with (required)
856
+ :param bool async_: Perform the request asynchronously
857
+ :return: DeletedResult
858
+ """
859
+
860
+ all_params = ['cid','value',] # noqa: E501
861
+ all_params.append('async_')
862
+ all_params.append('_return_http_data_only')
863
+ all_params.append('_preload_content')
864
+ all_params.append('_request_timeout')
865
+ all_params.append('_request_out')
866
+
867
+ params = locals()
868
+ for key, val in six.iteritems(params['kwargs']):
869
+ if key not in all_params:
870
+ raise TypeError(
871
+ "Got an unexpected keyword argument '%s'"
872
+ " to method delete_group_tag" % key
873
+ )
874
+ params[key] = val
875
+ del params['kwargs']
876
+ # verify the required parameter 'cid' is set
877
+ if ('cid' not in params or
878
+ params['cid'] is None):
879
+ raise ValueError("Missing the required parameter `cid` when calling `delete_group_tag`") # noqa: E501
880
+ # verify the required parameter 'value' is set
881
+ if ('value' not in params or
882
+ params['value'] is None):
883
+ raise ValueError("Missing the required parameter `value` when calling `delete_group_tag`") # noqa: E501
884
+ check_filename_params(params)
885
+
886
+ collection_formats = {}
887
+
888
+ path_params = {}
889
+ if 'cid' in params:
890
+ path_params['cid'] = params['cid'] # noqa: E501
891
+ if 'value' in params:
892
+ path_params['value'] = params['value'] # noqa: E501
893
+
894
+ query_params = []
895
+
896
+ header_params = {}
897
+
898
+ form_params = []
899
+ local_var_files = {}
900
+
901
+ body_params = None
902
+ # HTTP header `Accept`
903
+ header_params['Accept'] = self.api_client.select_header_accept(
904
+ ['application/json']) # noqa: E501
905
+
906
+ # Authentication setting
907
+ auth_settings = ['ApiKey'] # noqa: E501
908
+
909
+ return self.api_client.call_api(
910
+ '/groups/{cid}/tags/{value}', 'DELETE',
911
+ path_params,
912
+ query_params,
913
+ header_params,
914
+ body=body_params,
915
+ post_params=form_params,
916
+ files=local_var_files,
917
+ response_type='DeletedResult', # noqa: E501
918
+ auth_settings=auth_settings,
919
+ async_=params.get('async_'),
920
+ _return_http_data_only=params.get('_return_http_data_only'),
921
+ _preload_content=params.get('_preload_content', True),
922
+ _request_timeout=params.get('_request_timeout'),
923
+ _request_out=params.get('_request_out'),
924
+ collection_formats=collection_formats)
925
+
926
+ def delete_group_tags(self, cid, body, **kwargs): # noqa: E501
927
+ """Delete multiple tags from a(n) group
928
+
929
+ Delete multiple tags from a(n) group
930
+ This method makes a synchronous HTTP request by default.
931
+
932
+ :param str cid: (required)
933
+ :param list[str] body: (required)
934
+ :param bool async_: Perform the request asynchronously
935
+ :return: None
936
+ """
937
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
938
+ kwargs['_return_http_data_only'] = True
939
+
940
+ if kwargs.get('async_'):
941
+ return self.delete_group_tags_with_http_info(cid, body, **kwargs) # noqa: E501
942
+ else:
943
+ (data) = self.delete_group_tags_with_http_info(cid, body, **kwargs) # noqa: E501
944
+ if (
945
+ data
946
+ and hasattr(data, 'return_value')
947
+ and not ignore_simplified_return_value
948
+ ):
949
+ return data.return_value()
950
+ return data
951
+
952
+
953
+ def delete_group_tags_with_http_info(self, cid, body, **kwargs): # noqa: E501
954
+ """Delete multiple tags from a(n) group
955
+
956
+ Delete multiple tags from a(n) group
957
+ This method makes a synchronous HTTP request by default.
958
+
959
+ :param str cid: (required)
960
+ :param list[str] body: (required)
961
+ :param bool async_: Perform the request asynchronously
962
+ :return: None
963
+ """
964
+
965
+ all_params = ['cid','body',] # noqa: E501
966
+ all_params.append('async_')
967
+ all_params.append('_return_http_data_only')
968
+ all_params.append('_preload_content')
969
+ all_params.append('_request_timeout')
970
+ all_params.append('_request_out')
971
+
972
+ params = locals()
973
+ for key, val in six.iteritems(params['kwargs']):
974
+ if key not in all_params:
975
+ raise TypeError(
976
+ "Got an unexpected keyword argument '%s'"
977
+ " to method delete_group_tags" % key
978
+ )
979
+ params[key] = val
980
+ del params['kwargs']
981
+ # verify the required parameter 'cid' is set
982
+ if ('cid' not in params or
983
+ params['cid'] is None):
984
+ raise ValueError("Missing the required parameter `cid` when calling `delete_group_tags`") # noqa: E501
985
+ # verify the required parameter 'body' is set
986
+ if ('body' not in params or
987
+ params['body'] is None):
988
+ raise ValueError("Missing the required parameter `body` when calling `delete_group_tags`") # noqa: E501
989
+ check_filename_params(params)
990
+
991
+ collection_formats = {}
992
+
993
+ path_params = {}
994
+ if 'cid' in params:
995
+ path_params['cid'] = params['cid'] # noqa: E501
996
+
997
+ query_params = []
998
+
999
+ header_params = {}
1000
+
1001
+ form_params = []
1002
+ local_var_files = {}
1003
+
1004
+ body_params = None
1005
+ if 'body' in params:
1006
+ body_params = params['body']
1007
+ # HTTP header `Accept`
1008
+ header_params['Accept'] = self.api_client.select_header_accept(
1009
+ ['application/json']) # noqa: E501
1010
+
1011
+ # HTTP header `Content-Type`
1012
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
1013
+ ['application/json']) # noqa: E501
1014
+
1015
+ # Authentication setting
1016
+ auth_settings = ['ApiKey'] # noqa: E501
1017
+
1018
+ return self.api_client.call_api(
1019
+ '/groups/{cid}/tags', 'DELETE',
1020
+ path_params,
1021
+ query_params,
1022
+ header_params,
1023
+ body=body_params,
1024
+ post_params=form_params,
1025
+ files=local_var_files,
1026
+ response_type=None, # noqa: E501
1027
+ auth_settings=auth_settings,
1028
+ async_=params.get('async_'),
1029
+ _return_http_data_only=params.get('_return_http_data_only'),
1030
+ _preload_content=params.get('_preload_content', True),
1031
+ _request_timeout=params.get('_request_timeout'),
1032
+ _request_out=params.get('_request_out'),
1033
+ collection_formats=collection_formats)
1034
+
1035
+ def delete_group_user_permission(self, group_id, user_id, **kwargs): # noqa: E501
1036
+ """Delete a permission
1037
+
1038
+ Deletes a permission from the group Args: group_id: the id of the group user_id: The id of the user auth_session: The auth session of the user
1039
+ This method makes a synchronous HTTP request by default.
1040
+
1041
+ :param str group_id: (required)
1042
+ :param str user_id: (required)
1043
+ :param bool async_: Perform the request asynchronously
1044
+ :return: ModifiedResult
1045
+ """
1046
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1047
+ kwargs['_return_http_data_only'] = True
1048
+
1049
+ if kwargs.get('async_'):
1050
+ return self.delete_group_user_permission_with_http_info(group_id, user_id, **kwargs) # noqa: E501
1051
+ else:
1052
+ (data) = self.delete_group_user_permission_with_http_info(group_id, user_id, **kwargs) # noqa: E501
1053
+ if (
1054
+ data
1055
+ and hasattr(data, 'return_value')
1056
+ and not ignore_simplified_return_value
1057
+ ):
1058
+ return data.return_value()
1059
+ return data
1060
+
1061
+
1062
+ def delete_group_user_permission_with_http_info(self, group_id, user_id, **kwargs): # noqa: E501
1063
+ """Delete a permission
1064
+
1065
+ Deletes a permission from the group Args: group_id: the id of the group user_id: The id of the user auth_session: The auth session of the user
1066
+ This method makes a synchronous HTTP request by default.
1067
+
1068
+ :param str group_id: (required)
1069
+ :param str user_id: (required)
1070
+ :param bool async_: Perform the request asynchronously
1071
+ :return: ModifiedResult
1072
+ """
1073
+
1074
+ all_params = ['group_id','user_id',] # noqa: E501
1075
+ all_params.append('async_')
1076
+ all_params.append('_return_http_data_only')
1077
+ all_params.append('_preload_content')
1078
+ all_params.append('_request_timeout')
1079
+ all_params.append('_request_out')
1080
+
1081
+ params = locals()
1082
+ for key, val in six.iteritems(params['kwargs']):
1083
+ if key not in all_params:
1084
+ raise TypeError(
1085
+ "Got an unexpected keyword argument '%s'"
1086
+ " to method delete_group_user_permission" % key
1087
+ )
1088
+ params[key] = val
1089
+ del params['kwargs']
1090
+ # verify the required parameter 'group_id' is set
1091
+ if ('group_id' not in params or
1092
+ params['group_id'] is None):
1093
+ raise ValueError("Missing the required parameter `group_id` when calling `delete_group_user_permission`") # noqa: E501
1094
+ # verify the required parameter 'user_id' is set
1095
+ if ('user_id' not in params or
1096
+ params['user_id'] is None):
1097
+ raise ValueError("Missing the required parameter `user_id` when calling `delete_group_user_permission`") # noqa: E501
1098
+ check_filename_params(params)
1099
+
1100
+ collection_formats = {}
1101
+
1102
+ path_params = {}
1103
+ if 'group_id' in params:
1104
+ path_params['group_id'] = params['group_id'] # noqa: E501
1105
+ if 'user_id' in params:
1106
+ path_params['user_id'] = params['user_id'] # noqa: E501
1107
+
1108
+ query_params = []
1109
+
1110
+ header_params = {}
1111
+
1112
+ form_params = []
1113
+ local_var_files = {}
1114
+
1115
+ body_params = None
1116
+ # HTTP header `Accept`
1117
+ header_params['Accept'] = self.api_client.select_header_accept(
1118
+ ['application/json']) # noqa: E501
1119
+
1120
+ # Authentication setting
1121
+ auth_settings = ['ApiKey'] # noqa: E501
1122
+
1123
+ return self.api_client.call_api(
1124
+ '/groups/{group_id}/permissions/{user_id}', 'DELETE',
1125
+ path_params,
1126
+ query_params,
1127
+ header_params,
1128
+ body=body_params,
1129
+ post_params=form_params,
1130
+ files=local_var_files,
1131
+ response_type='ModifiedResult', # noqa: E501
1132
+ auth_settings=auth_settings,
1133
+ async_=params.get('async_'),
1134
+ _return_http_data_only=params.get('_return_http_data_only'),
1135
+ _preload_content=params.get('_preload_content', True),
1136
+ _request_timeout=params.get('_request_timeout'),
1137
+ _request_out=params.get('_request_out'),
1138
+ collection_formats=collection_formats)
1139
+
1140
+ def delete_group_user_permission_template(self, group_id, user_id, **kwargs): # noqa: E501
1141
+ """Delete a permission
1142
+
1143
+ Delete a permission
1144
+ This method makes a synchronous HTTP request by default.
1145
+
1146
+ :param str group_id: (required)
1147
+ :param str user_id: (required)
1148
+ :param bool propagate:
1149
+ :param list[union[HeaderFeature,str]] x_accept_feature:
1150
+ :param bool async_: Perform the request asynchronously
1151
+ :return: ModifiedResult
1152
+ """
1153
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1154
+ kwargs['_return_http_data_only'] = True
1155
+
1156
+ if kwargs.get('async_'):
1157
+ return self.delete_group_user_permission_template_with_http_info(group_id, user_id, **kwargs) # noqa: E501
1158
+ else:
1159
+ (data) = self.delete_group_user_permission_template_with_http_info(group_id, user_id, **kwargs) # noqa: E501
1160
+ if (
1161
+ data
1162
+ and hasattr(data, 'return_value')
1163
+ and not ignore_simplified_return_value
1164
+ ):
1165
+ return data.return_value()
1166
+ return data
1167
+
1168
+
1169
+ def delete_group_user_permission_template_with_http_info(self, group_id, user_id, **kwargs): # noqa: E501
1170
+ """Delete a permission
1171
+
1172
+ Delete a permission
1173
+ This method makes a synchronous HTTP request by default.
1174
+
1175
+ :param str group_id: (required)
1176
+ :param str user_id: (required)
1177
+ :param bool propagate:
1178
+ :param list[union[HeaderFeature,str]] x_accept_feature:
1179
+ :param bool async_: Perform the request asynchronously
1180
+ :return: ModifiedResult
1181
+ """
1182
+
1183
+ all_params = ['group_id','user_id','propagate','x_accept_feature',] # noqa: E501
1184
+ all_params.append('async_')
1185
+ all_params.append('_return_http_data_only')
1186
+ all_params.append('_preload_content')
1187
+ all_params.append('_request_timeout')
1188
+ all_params.append('_request_out')
1189
+
1190
+ params = locals()
1191
+ for key, val in six.iteritems(params['kwargs']):
1192
+ if key not in all_params:
1193
+ raise TypeError(
1194
+ "Got an unexpected keyword argument '%s'"
1195
+ " to method delete_group_user_permission_template" % key
1196
+ )
1197
+ params[key] = val
1198
+ del params['kwargs']
1199
+ # verify the required parameter 'group_id' is set
1200
+ if ('group_id' not in params or
1201
+ params['group_id'] is None):
1202
+ raise ValueError("Missing the required parameter `group_id` when calling `delete_group_user_permission_template`") # noqa: E501
1203
+ # verify the required parameter 'user_id' is set
1204
+ if ('user_id' not in params or
1205
+ params['user_id'] is None):
1206
+ raise ValueError("Missing the required parameter `user_id` when calling `delete_group_user_permission_template`") # noqa: E501
1207
+ check_filename_params(params)
1208
+
1209
+ collection_formats = {}
1210
+
1211
+ path_params = {}
1212
+ if 'group_id' in params:
1213
+ path_params['group_id'] = params['group_id'] # noqa: E501
1214
+ if 'user_id' in params:
1215
+ path_params['user_id'] = params['user_id'] # noqa: E501
1216
+
1217
+ query_params = []
1218
+ if 'propagate' in params:
1219
+ query_params.append(('propagate', params['propagate'])) # noqa: E501
1220
+
1221
+ header_params = {}
1222
+ if 'x_accept_feature' in params:
1223
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
1224
+ collection_formats['x-accept-feature'] = '' # noqa: E501
1225
+
1226
+ form_params = []
1227
+ local_var_files = {}
1228
+
1229
+ body_params = None
1230
+ # HTTP header `Accept`
1231
+ header_params['Accept'] = self.api_client.select_header_accept(
1232
+ ['application/json']) # noqa: E501
1233
+
1234
+ # Authentication setting
1235
+ auth_settings = ['ApiKey'] # noqa: E501
1236
+
1237
+ return self.api_client.call_api(
1238
+ '/groups/{group_id}/permissions/templates/{user_id}', 'DELETE',
1239
+ path_params,
1240
+ query_params,
1241
+ header_params,
1242
+ body=body_params,
1243
+ post_params=form_params,
1244
+ files=local_var_files,
1245
+ response_type='ModifiedResult', # noqa: E501
1246
+ auth_settings=auth_settings,
1247
+ async_=params.get('async_'),
1248
+ _return_http_data_only=params.get('_return_http_data_only'),
1249
+ _preload_content=params.get('_preload_content', True),
1250
+ _request_timeout=params.get('_request_timeout'),
1251
+ _request_out=params.get('_request_out'),
1252
+ collection_formats=collection_formats)
1253
+
1254
+ def delete_groups_by_ids(self, body, **kwargs): # noqa: E501
1255
+ """Delete multiple groups by ID list
1256
+
1257
+ Delete multiple groups by ID list
1258
+ This method makes a synchronous HTTP request by default.
1259
+
1260
+ :param list[str] body: List of IDs to delete (required)
1261
+ :param ContainerDeleteReason delete_reason:
1262
+ :param bool async_: Perform the request asynchronously
1263
+ :return: DeletedResult
1264
+ """
1265
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1266
+ kwargs['_return_http_data_only'] = True
1267
+
1268
+ if kwargs.get('async_'):
1269
+ return self.delete_groups_by_ids_with_http_info(body, **kwargs) # noqa: E501
1270
+ else:
1271
+ (data) = self.delete_groups_by_ids_with_http_info(body, **kwargs) # noqa: E501
1272
+ if (
1273
+ data
1274
+ and hasattr(data, 'return_value')
1275
+ and not ignore_simplified_return_value
1276
+ ):
1277
+ return data.return_value()
1278
+ return data
1279
+
1280
+
1281
+ def delete_groups_by_ids_with_http_info(self, body, **kwargs): # noqa: E501
1282
+ """Delete multiple groups by ID list
1283
+
1284
+ Delete multiple groups by ID list
1285
+ This method makes a synchronous HTTP request by default.
1286
+
1287
+ :param list[str] body: List of IDs to delete (required)
1288
+ :param ContainerDeleteReason delete_reason:
1289
+ :param bool async_: Perform the request asynchronously
1290
+ :return: DeletedResult
1291
+ """
1292
+
1293
+ all_params = ['body','delete_reason',] # noqa: E501
1294
+ all_params.append('async_')
1295
+ all_params.append('_return_http_data_only')
1296
+ all_params.append('_preload_content')
1297
+ all_params.append('_request_timeout')
1298
+ all_params.append('_request_out')
1299
+
1300
+ params = locals()
1301
+ for key, val in six.iteritems(params['kwargs']):
1302
+ if key not in all_params:
1303
+ raise TypeError(
1304
+ "Got an unexpected keyword argument '%s'"
1305
+ " to method delete_groups_by_ids" % key
1306
+ )
1307
+ params[key] = val
1308
+ del params['kwargs']
1309
+ # verify the required parameter 'body' is set
1310
+ if ('body' not in params or
1311
+ params['body'] is None):
1312
+ raise ValueError("Missing the required parameter `body` when calling `delete_groups_by_ids`") # noqa: E501
1313
+ check_filename_params(params)
1314
+
1315
+ collection_formats = {}
1316
+
1317
+ path_params = {}
1318
+
1319
+ query_params = []
1320
+ if 'delete_reason' in params:
1321
+ query_params.append(('delete_reason', params['delete_reason'])) # noqa: E501
1322
+
1323
+ header_params = {}
1324
+
1325
+ form_params = []
1326
+ local_var_files = {}
1327
+
1328
+ body_params = None
1329
+ if 'body' in params:
1330
+ body_params = params['body']
1331
+ # HTTP header `Accept`
1332
+ header_params['Accept'] = self.api_client.select_header_accept(
1333
+ ['application/json']) # noqa: E501
1334
+
1335
+ # HTTP header `Content-Type`
1336
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
1337
+ ['application/json']) # noqa: E501
1338
+
1339
+ # Authentication setting
1340
+ auth_settings = ['ApiKey'] # noqa: E501
1341
+
1342
+ return self.api_client.call_api(
1343
+ '/groups', 'DELETE',
1344
+ path_params,
1345
+ query_params,
1346
+ header_params,
1347
+ body=body_params,
1348
+ post_params=form_params,
1349
+ files=local_var_files,
1350
+ response_type='DeletedResult', # noqa: E501
1351
+ auth_settings=auth_settings,
1352
+ async_=params.get('async_'),
1353
+ _return_http_data_only=params.get('_return_http_data_only'),
1354
+ _preload_content=params.get('_preload_content', True),
1355
+ _request_timeout=params.get('_request_timeout'),
1356
+ _request_out=params.get('_request_out'),
1357
+ collection_formats=collection_formats)
1358
+
1359
+ def get_all_group_roles(self, group_id, **kwargs): # noqa: E501
1360
+ """Get list of group roles
1361
+
1362
+ Gets all group roles
1363
+ This method makes a synchronous HTTP request by default.
1364
+
1365
+ :param str group_id: (required)
1366
+ :param bool async_: Perform the request asynchronously
1367
+ :return: list[RoleOutput]
1368
+ """
1369
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1370
+ kwargs['_return_http_data_only'] = True
1371
+
1372
+ if kwargs.get('async_'):
1373
+ return self.get_all_group_roles_with_http_info(group_id, **kwargs) # noqa: E501
1374
+ else:
1375
+ (data) = self.get_all_group_roles_with_http_info(group_id, **kwargs) # noqa: E501
1376
+ if (
1377
+ data
1378
+ and hasattr(data, 'return_value')
1379
+ and not ignore_simplified_return_value
1380
+ ):
1381
+ return data.return_value()
1382
+ return data
1383
+
1384
+
1385
+ def get_all_group_roles_with_http_info(self, group_id, **kwargs): # noqa: E501
1386
+ """Get list of group roles
1387
+
1388
+ Gets all group roles
1389
+ This method makes a synchronous HTTP request by default.
1390
+
1391
+ :param str group_id: (required)
1392
+ :param bool async_: Perform the request asynchronously
1393
+ :return: list[RoleOutput]
1394
+ """
1395
+
1396
+ all_params = ['group_id',] # noqa: E501
1397
+ all_params.append('async_')
1398
+ all_params.append('_return_http_data_only')
1399
+ all_params.append('_preload_content')
1400
+ all_params.append('_request_timeout')
1401
+ all_params.append('_request_out')
1402
+
1403
+ params = locals()
1404
+ for key, val in six.iteritems(params['kwargs']):
1405
+ if key not in all_params:
1406
+ raise TypeError(
1407
+ "Got an unexpected keyword argument '%s'"
1408
+ " to method get_all_group_roles" % key
1409
+ )
1410
+ params[key] = val
1411
+ del params['kwargs']
1412
+ # verify the required parameter 'group_id' is set
1413
+ if ('group_id' not in params or
1414
+ params['group_id'] is None):
1415
+ raise ValueError("Missing the required parameter `group_id` when calling `get_all_group_roles`") # noqa: E501
1416
+ check_filename_params(params)
1417
+
1418
+ collection_formats = {}
1419
+
1420
+ path_params = {}
1421
+ if 'group_id' in params:
1422
+ path_params['group_id'] = params['group_id'] # noqa: E501
1423
+
1424
+ query_params = []
1425
+
1426
+ header_params = {}
1427
+
1428
+ form_params = []
1429
+ local_var_files = {}
1430
+
1431
+ body_params = None
1432
+ # HTTP header `Accept`
1433
+ header_params['Accept'] = self.api_client.select_header_accept(
1434
+ ['application/json']) # noqa: E501
1435
+
1436
+ # Authentication setting
1437
+ auth_settings = ['ApiKey'] # noqa: E501
1438
+
1439
+ return self.api_client.call_api(
1440
+ '/groups/{group_id}/roles', 'GET',
1441
+ path_params,
1442
+ query_params,
1443
+ header_params,
1444
+ body=body_params,
1445
+ post_params=form_params,
1446
+ files=local_var_files,
1447
+ response_type='list[RoleOutput]', # noqa: E501
1448
+ auth_settings=auth_settings,
1449
+ async_=params.get('async_'),
1450
+ _return_http_data_only=params.get('_return_http_data_only'),
1451
+ _preload_content=params.get('_preload_content', True),
1452
+ _request_timeout=params.get('_request_timeout'),
1453
+ _request_out=params.get('_request_out'),
1454
+ collection_formats=collection_formats)
1455
+
1456
+ def get_all_groups(self, **kwargs): # noqa: E501
1457
+ """List all groups
1458
+
1459
+ Find all groups.
1460
+ This method makes a synchronous HTTP request by default.
1461
+
1462
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1463
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1464
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1465
+ :param int limit: The maximum number of entries to return.
1466
+ :param int skip: The number of entries to skip.
1467
+ :param int page: The page number (i.e. skip limit*page entries)
1468
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1469
+ :param list[union[HeaderFeature,str]] x_accept_feature:
1470
+ :param bool async_: Perform the request asynchronously
1471
+ :return: union[Page,list[GroupOutput]]
1472
+ """
1473
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1474
+ kwargs['_return_http_data_only'] = True
1475
+
1476
+ if kwargs.get('async_'):
1477
+ return self.get_all_groups_with_http_info(**kwargs) # noqa: E501
1478
+ else:
1479
+ (data) = self.get_all_groups_with_http_info(**kwargs) # noqa: E501
1480
+ if (
1481
+ data
1482
+ and hasattr(data, 'return_value')
1483
+ and not ignore_simplified_return_value
1484
+ ):
1485
+ return data.return_value()
1486
+ return data
1487
+
1488
+
1489
+ def get_all_groups_with_http_info(self, **kwargs): # noqa: E501
1490
+ """List all groups
1491
+
1492
+ Find all groups.
1493
+ This method makes a synchronous HTTP request by default.
1494
+
1495
+ :param bool exhaustive: Set to return a complete list regardless of permissions
1496
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1497
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1498
+ :param int limit: The maximum number of entries to return.
1499
+ :param int skip: The number of entries to skip.
1500
+ :param int page: The page number (i.e. skip limit*page entries)
1501
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1502
+ :param list[union[HeaderFeature,str]] x_accept_feature:
1503
+ :param bool async_: Perform the request asynchronously
1504
+ :return: union[Page,list[GroupOutput]]
1505
+ """
1506
+
1507
+ all_params = ['exhaustive','filter','sort','limit','skip','page','after_id','x_accept_feature',] # noqa: E501
1508
+ all_params.append('async_')
1509
+ all_params.append('_return_http_data_only')
1510
+ all_params.append('_preload_content')
1511
+ all_params.append('_request_timeout')
1512
+ all_params.append('_request_out')
1513
+
1514
+ params = locals()
1515
+ for key, val in six.iteritems(params['kwargs']):
1516
+ if key not in all_params:
1517
+ raise TypeError(
1518
+ "Got an unexpected keyword argument '%s'"
1519
+ " to method get_all_groups" % key
1520
+ )
1521
+ params[key] = val
1522
+ del params['kwargs']
1523
+ check_filename_params(params)
1524
+
1525
+ collection_formats = {}
1526
+
1527
+ path_params = {}
1528
+
1529
+ query_params = []
1530
+ if 'exhaustive' in params:
1531
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
1532
+ if 'filter' in params:
1533
+ query_params.append(('filter', params['filter'])) # noqa: E501
1534
+ if 'sort' in params:
1535
+ query_params.append(('sort', params['sort'])) # noqa: E501
1536
+ if 'limit' in params:
1537
+ query_params.append(('limit', params['limit'])) # noqa: E501
1538
+ if 'skip' in params:
1539
+ query_params.append(('skip', params['skip'])) # noqa: E501
1540
+ if 'page' in params:
1541
+ query_params.append(('page', params['page'])) # noqa: E501
1542
+ if 'after_id' in params:
1543
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1544
+
1545
+ header_params = {}
1546
+ if 'x_accept_feature' in params:
1547
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
1548
+ collection_formats['x-accept-feature'] = '' # noqa: E501
1549
+
1550
+ form_params = []
1551
+ local_var_files = {}
1552
+
1553
+ body_params = None
1554
+ # HTTP header `Accept`
1555
+ header_params['Accept'] = self.api_client.select_header_accept(
1556
+ ['application/json']) # noqa: E501
1557
+
1558
+ # Authentication setting
1559
+ auth_settings = ['ApiKey'] # noqa: E501
1560
+
1561
+ return self.api_client.call_api(
1562
+ '/groups', 'GET',
1563
+ path_params,
1564
+ query_params,
1565
+ header_params,
1566
+ body=body_params,
1567
+ post_params=form_params,
1568
+ files=local_var_files,
1569
+ response_type='union[Page,list[GroupOutput]]', # noqa: E501
1570
+ auth_settings=auth_settings,
1571
+ async_=params.get('async_'),
1572
+ _return_http_data_only=params.get('_return_http_data_only'),
1573
+ _preload_content=params.get('_preload_content', True),
1574
+ _request_timeout=params.get('_request_timeout'),
1575
+ _request_out=params.get('_request_out'),
1576
+ collection_formats=collection_formats)
1577
+
1578
+ def get_group(self, group_id, **kwargs): # noqa: E501
1579
+ """Get group info
1580
+
1581
+ Get a group by ID.
1582
+ This method makes a synchronous HTTP request by default.
1583
+
1584
+ :param str group_id: (required)
1585
+ :param bool async_: Perform the request asynchronously
1586
+ :return: GroupOutput
1587
+ """
1588
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1589
+ kwargs['_return_http_data_only'] = True
1590
+
1591
+ if kwargs.get('async_'):
1592
+ return self.get_group_with_http_info(group_id, **kwargs) # noqa: E501
1593
+ else:
1594
+ (data) = self.get_group_with_http_info(group_id, **kwargs) # noqa: E501
1595
+ if (
1596
+ data
1597
+ and hasattr(data, 'return_value')
1598
+ and not ignore_simplified_return_value
1599
+ ):
1600
+ return data.return_value()
1601
+ return data
1602
+
1603
+
1604
+ def get_group_with_http_info(self, group_id, **kwargs): # noqa: E501
1605
+ """Get group info
1606
+
1607
+ Get a group by ID.
1608
+ This method makes a synchronous HTTP request by default.
1609
+
1610
+ :param str group_id: (required)
1611
+ :param bool async_: Perform the request asynchronously
1612
+ :return: GroupOutput
1613
+ """
1614
+
1615
+ all_params = ['group_id',] # noqa: E501
1616
+ all_params.append('async_')
1617
+ all_params.append('_return_http_data_only')
1618
+ all_params.append('_preload_content')
1619
+ all_params.append('_request_timeout')
1620
+ all_params.append('_request_out')
1621
+
1622
+ params = locals()
1623
+ for key, val in six.iteritems(params['kwargs']):
1624
+ if key not in all_params:
1625
+ raise TypeError(
1626
+ "Got an unexpected keyword argument '%s'"
1627
+ " to method get_group" % key
1628
+ )
1629
+ params[key] = val
1630
+ del params['kwargs']
1631
+ # verify the required parameter 'group_id' is set
1632
+ if ('group_id' not in params or
1633
+ params['group_id'] is None):
1634
+ raise ValueError("Missing the required parameter `group_id` when calling `get_group`") # noqa: E501
1635
+ check_filename_params(params)
1636
+
1637
+ collection_formats = {}
1638
+
1639
+ path_params = {}
1640
+ if 'group_id' in params:
1641
+ path_params['group_id'] = params['group_id'] # noqa: E501
1642
+
1643
+ query_params = []
1644
+
1645
+ header_params = {}
1646
+
1647
+ form_params = []
1648
+ local_var_files = {}
1649
+
1650
+ body_params = None
1651
+ # HTTP header `Accept`
1652
+ header_params['Accept'] = self.api_client.select_header_accept(
1653
+ ['application/json']) # noqa: E501
1654
+
1655
+ # Authentication setting
1656
+ auth_settings = ['ApiKey'] # noqa: E501
1657
+
1658
+ return self.api_client.call_api(
1659
+ '/groups/{group_id}', 'GET',
1660
+ path_params,
1661
+ query_params,
1662
+ header_params,
1663
+ body=body_params,
1664
+ post_params=form_params,
1665
+ files=local_var_files,
1666
+ response_type='GroupOutput', # noqa: E501
1667
+ auth_settings=auth_settings,
1668
+ async_=params.get('async_'),
1669
+ _return_http_data_only=params.get('_return_http_data_only'),
1670
+ _preload_content=params.get('_preload_content', True),
1671
+ _request_timeout=params.get('_request_timeout'),
1672
+ _request_out=params.get('_request_out'),
1673
+ collection_formats=collection_formats)
1674
+
1675
+ def get_group_projects(self, group_id, **kwargs): # noqa: E501
1676
+ """Get all projects in a group
1677
+
1678
+ Get projects for a group
1679
+ This method makes a synchronous HTTP request by default.
1680
+
1681
+ :param str group_id: (required)
1682
+ :param bool exhaustive:
1683
+ :param bool include_all_info: Include all info in returned objects
1684
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1685
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1686
+ :param int limit: The maximum number of entries to return.
1687
+ :param int skip: The number of entries to skip.
1688
+ :param int page: The page number (i.e. skip limit*page entries)
1689
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1690
+ :param list[str] x_accept_feature:
1691
+ :param bool async_: Perform the request asynchronously
1692
+ :return: union[Page,list[ProjectListOutput]]
1693
+ """
1694
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1695
+ kwargs['_return_http_data_only'] = True
1696
+
1697
+ if kwargs.get('async_'):
1698
+ return self.get_group_projects_with_http_info(group_id, **kwargs) # noqa: E501
1699
+ else:
1700
+ (data) = self.get_group_projects_with_http_info(group_id, **kwargs) # noqa: E501
1701
+ if (
1702
+ data
1703
+ and hasattr(data, 'return_value')
1704
+ and not ignore_simplified_return_value
1705
+ ):
1706
+ return data.return_value()
1707
+ return data
1708
+
1709
+
1710
+ def get_group_projects_with_http_info(self, group_id, **kwargs): # noqa: E501
1711
+ """Get all projects in a group
1712
+
1713
+ Get projects for a group
1714
+ This method makes a synchronous HTTP request by default.
1715
+
1716
+ :param str group_id: (required)
1717
+ :param bool exhaustive:
1718
+ :param bool include_all_info: Include all info in returned objects
1719
+ :param str filter: The filter to apply. (e.g. label=my-label,created>2018-09-22)
1720
+ :param str sort: The sort fields and order. (e.g. label:asc,created:desc)
1721
+ :param int limit: The maximum number of entries to return.
1722
+ :param int skip: The number of entries to skip.
1723
+ :param int page: The page number (i.e. skip limit*page entries)
1724
+ :param str after_id: Paginate after the given id. (Cannot be used with sort, page or skip)
1725
+ :param list[str] x_accept_feature:
1726
+ :param bool async_: Perform the request asynchronously
1727
+ :return: union[Page,list[ProjectListOutput]]
1728
+ """
1729
+
1730
+ all_params = ['group_id','exhaustive','include_all_info','filter','sort','limit','skip','page','after_id','x_accept_feature',] # noqa: E501
1731
+ all_params.append('async_')
1732
+ all_params.append('_return_http_data_only')
1733
+ all_params.append('_preload_content')
1734
+ all_params.append('_request_timeout')
1735
+ all_params.append('_request_out')
1736
+
1737
+ params = locals()
1738
+ for key, val in six.iteritems(params['kwargs']):
1739
+ if key not in all_params:
1740
+ raise TypeError(
1741
+ "Got an unexpected keyword argument '%s'"
1742
+ " to method get_group_projects" % key
1743
+ )
1744
+ params[key] = val
1745
+ del params['kwargs']
1746
+ # verify the required parameter 'group_id' is set
1747
+ if ('group_id' not in params or
1748
+ params['group_id'] is None):
1749
+ raise ValueError("Missing the required parameter `group_id` when calling `get_group_projects`") # noqa: E501
1750
+ check_filename_params(params)
1751
+
1752
+ collection_formats = {}
1753
+
1754
+ path_params = {}
1755
+ if 'group_id' in params:
1756
+ path_params['group_id'] = params['group_id'] # noqa: E501
1757
+
1758
+ query_params = []
1759
+ if 'exhaustive' in params:
1760
+ query_params.append(('exhaustive', params['exhaustive'])) # noqa: E501
1761
+ if 'include_all_info' in params:
1762
+ query_params.append(('include_all_info', params['include_all_info'])) # noqa: E501
1763
+ if 'filter' in params:
1764
+ query_params.append(('filter', params['filter'])) # noqa: E501
1765
+ if 'sort' in params:
1766
+ query_params.append(('sort', params['sort'])) # noqa: E501
1767
+ if 'limit' in params:
1768
+ query_params.append(('limit', params['limit'])) # noqa: E501
1769
+ if 'skip' in params:
1770
+ query_params.append(('skip', params['skip'])) # noqa: E501
1771
+ if 'page' in params:
1772
+ query_params.append(('page', params['page'])) # noqa: E501
1773
+ if 'after_id' in params:
1774
+ query_params.append(('after_id', params['after_id'])) # noqa: E501
1775
+
1776
+ header_params = {}
1777
+ if 'x_accept_feature' in params:
1778
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
1779
+ collection_formats['x-accept-feature'] = '' # noqa: E501
1780
+
1781
+ form_params = []
1782
+ local_var_files = {}
1783
+
1784
+ body_params = None
1785
+ # HTTP header `Accept`
1786
+ header_params['Accept'] = self.api_client.select_header_accept(
1787
+ ['application/json']) # noqa: E501
1788
+
1789
+ # Authentication setting
1790
+ auth_settings = ['ApiKey'] # noqa: E501
1791
+
1792
+ return self.api_client.call_api(
1793
+ '/groups/{group_id}/projects', 'GET',
1794
+ path_params,
1795
+ query_params,
1796
+ header_params,
1797
+ body=body_params,
1798
+ post_params=form_params,
1799
+ files=local_var_files,
1800
+ response_type='union[Page,list[ProjectListOutput]]', # noqa: E501
1801
+ auth_settings=auth_settings,
1802
+ async_=params.get('async_'),
1803
+ _return_http_data_only=params.get('_return_http_data_only'),
1804
+ _preload_content=params.get('_preload_content', True),
1805
+ _request_timeout=params.get('_request_timeout'),
1806
+ _request_out=params.get('_request_out'),
1807
+ collection_formats=collection_formats)
1808
+
1809
+ def get_group_role(self, group_id, role_id, **kwargs): # noqa: E501
1810
+ """Return the role identified by the RoleId
1811
+
1812
+ Get a group role.
1813
+ This method makes a synchronous HTTP request by default.
1814
+
1815
+ :param str group_id: (required)
1816
+ :param str role_id: (required)
1817
+ :param bool async_: Perform the request asynchronously
1818
+ :return: RoleOutput
1819
+ """
1820
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1821
+ kwargs['_return_http_data_only'] = True
1822
+
1823
+ if kwargs.get('async_'):
1824
+ return self.get_group_role_with_http_info(group_id, role_id, **kwargs) # noqa: E501
1825
+ else:
1826
+ (data) = self.get_group_role_with_http_info(group_id, role_id, **kwargs) # noqa: E501
1827
+ if (
1828
+ data
1829
+ and hasattr(data, 'return_value')
1830
+ and not ignore_simplified_return_value
1831
+ ):
1832
+ return data.return_value()
1833
+ return data
1834
+
1835
+
1836
+ def get_group_role_with_http_info(self, group_id, role_id, **kwargs): # noqa: E501
1837
+ """Return the role identified by the RoleId
1838
+
1839
+ Get a group role.
1840
+ This method makes a synchronous HTTP request by default.
1841
+
1842
+ :param str group_id: (required)
1843
+ :param str role_id: (required)
1844
+ :param bool async_: Perform the request asynchronously
1845
+ :return: RoleOutput
1846
+ """
1847
+
1848
+ all_params = ['group_id','role_id',] # noqa: E501
1849
+ all_params.append('async_')
1850
+ all_params.append('_return_http_data_only')
1851
+ all_params.append('_preload_content')
1852
+ all_params.append('_request_timeout')
1853
+ all_params.append('_request_out')
1854
+
1855
+ params = locals()
1856
+ for key, val in six.iteritems(params['kwargs']):
1857
+ if key not in all_params:
1858
+ raise TypeError(
1859
+ "Got an unexpected keyword argument '%s'"
1860
+ " to method get_group_role" % key
1861
+ )
1862
+ params[key] = val
1863
+ del params['kwargs']
1864
+ # verify the required parameter 'group_id' is set
1865
+ if ('group_id' not in params or
1866
+ params['group_id'] is None):
1867
+ raise ValueError("Missing the required parameter `group_id` when calling `get_group_role`") # noqa: E501
1868
+ # verify the required parameter 'role_id' is set
1869
+ if ('role_id' not in params or
1870
+ params['role_id'] is None):
1871
+ raise ValueError("Missing the required parameter `role_id` when calling `get_group_role`") # noqa: E501
1872
+ check_filename_params(params)
1873
+
1874
+ collection_formats = {}
1875
+
1876
+ path_params = {}
1877
+ if 'group_id' in params:
1878
+ path_params['group_id'] = params['group_id'] # noqa: E501
1879
+ if 'role_id' in params:
1880
+ path_params['role_id'] = params['role_id'] # noqa: E501
1881
+
1882
+ query_params = []
1883
+
1884
+ header_params = {}
1885
+
1886
+ form_params = []
1887
+ local_var_files = {}
1888
+
1889
+ body_params = None
1890
+ # HTTP header `Accept`
1891
+ header_params['Accept'] = self.api_client.select_header_accept(
1892
+ ['application/json']) # noqa: E501
1893
+
1894
+ # Authentication setting
1895
+ auth_settings = ['ApiKey'] # noqa: E501
1896
+
1897
+ return self.api_client.call_api(
1898
+ '/groups/{group_id}/roles/{role_id}', 'GET',
1899
+ path_params,
1900
+ query_params,
1901
+ header_params,
1902
+ body=body_params,
1903
+ post_params=form_params,
1904
+ files=local_var_files,
1905
+ response_type='RoleOutput', # noqa: E501
1906
+ auth_settings=auth_settings,
1907
+ async_=params.get('async_'),
1908
+ _return_http_data_only=params.get('_return_http_data_only'),
1909
+ _preload_content=params.get('_preload_content', True),
1910
+ _request_timeout=params.get('_request_timeout'),
1911
+ _request_out=params.get('_request_out'),
1912
+ collection_formats=collection_formats)
1913
+
1914
+ def get_group_tag(self, cid, value, **kwargs): # noqa: E501
1915
+ """Get the value of a tag, by name.
1916
+
1917
+ Get the value of a tag, by name
1918
+ This method makes a synchronous HTTP request by default.
1919
+
1920
+ :param str cid: (required)
1921
+ :param str value: The tag to interact with (required)
1922
+ :param bool async_: Perform the request asynchronously
1923
+ :return: str
1924
+ """
1925
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
1926
+ kwargs['_return_http_data_only'] = True
1927
+
1928
+ if kwargs.get('async_'):
1929
+ return self.get_group_tag_with_http_info(cid, value, **kwargs) # noqa: E501
1930
+ else:
1931
+ (data) = self.get_group_tag_with_http_info(cid, value, **kwargs) # noqa: E501
1932
+ if (
1933
+ data
1934
+ and hasattr(data, 'return_value')
1935
+ and not ignore_simplified_return_value
1936
+ ):
1937
+ return data.return_value()
1938
+ return data
1939
+
1940
+
1941
+ def get_group_tag_with_http_info(self, cid, value, **kwargs): # noqa: E501
1942
+ """Get the value of a tag, by name.
1943
+
1944
+ Get the value of a tag, by name
1945
+ This method makes a synchronous HTTP request by default.
1946
+
1947
+ :param str cid: (required)
1948
+ :param str value: The tag to interact with (required)
1949
+ :param bool async_: Perform the request asynchronously
1950
+ :return: str
1951
+ """
1952
+
1953
+ all_params = ['cid','value',] # noqa: E501
1954
+ all_params.append('async_')
1955
+ all_params.append('_return_http_data_only')
1956
+ all_params.append('_preload_content')
1957
+ all_params.append('_request_timeout')
1958
+ all_params.append('_request_out')
1959
+
1960
+ params = locals()
1961
+ for key, val in six.iteritems(params['kwargs']):
1962
+ if key not in all_params:
1963
+ raise TypeError(
1964
+ "Got an unexpected keyword argument '%s'"
1965
+ " to method get_group_tag" % key
1966
+ )
1967
+ params[key] = val
1968
+ del params['kwargs']
1969
+ # verify the required parameter 'cid' is set
1970
+ if ('cid' not in params or
1971
+ params['cid'] is None):
1972
+ raise ValueError("Missing the required parameter `cid` when calling `get_group_tag`") # noqa: E501
1973
+ # verify the required parameter 'value' is set
1974
+ if ('value' not in params or
1975
+ params['value'] is None):
1976
+ raise ValueError("Missing the required parameter `value` when calling `get_group_tag`") # noqa: E501
1977
+ check_filename_params(params)
1978
+
1979
+ collection_formats = {}
1980
+
1981
+ path_params = {}
1982
+ if 'cid' in params:
1983
+ path_params['cid'] = params['cid'] # noqa: E501
1984
+ if 'value' in params:
1985
+ path_params['value'] = params['value'] # noqa: E501
1986
+
1987
+ query_params = []
1988
+
1989
+ header_params = {}
1990
+
1991
+ form_params = []
1992
+ local_var_files = {}
1993
+
1994
+ body_params = None
1995
+ # HTTP header `Accept`
1996
+ header_params['Accept'] = self.api_client.select_header_accept(
1997
+ ['application/json']) # noqa: E501
1998
+
1999
+ # Authentication setting
2000
+ auth_settings = ['ApiKey'] # noqa: E501
2001
+
2002
+ return self.api_client.call_api(
2003
+ '/groups/{cid}/tags/{value}', 'GET',
2004
+ path_params,
2005
+ query_params,
2006
+ header_params,
2007
+ body=body_params,
2008
+ post_params=form_params,
2009
+ files=local_var_files,
2010
+ response_type='str', # noqa: E501
2011
+ auth_settings=auth_settings,
2012
+ async_=params.get('async_'),
2013
+ _return_http_data_only=params.get('_return_http_data_only'),
2014
+ _preload_content=params.get('_preload_content', True),
2015
+ _request_timeout=params.get('_request_timeout'),
2016
+ _request_out=params.get('_request_out'),
2017
+ collection_formats=collection_formats)
2018
+
2019
+ def get_group_user_permission(self, group_id, user_id, **kwargs): # noqa: E501
2020
+ """List a user's permissions for this group.
2021
+
2022
+ List a user's permissions for this group
2023
+ This method makes a synchronous HTTP request by default.
2024
+
2025
+ :param str group_id: (required)
2026
+ :param str user_id: (required)
2027
+ :param bool async_: Perform the request asynchronously
2028
+ :return: AccessPermissionOutput
2029
+ """
2030
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2031
+ kwargs['_return_http_data_only'] = True
2032
+
2033
+ if kwargs.get('async_'):
2034
+ return self.get_group_user_permission_with_http_info(group_id, user_id, **kwargs) # noqa: E501
2035
+ else:
2036
+ (data) = self.get_group_user_permission_with_http_info(group_id, user_id, **kwargs) # noqa: E501
2037
+ if (
2038
+ data
2039
+ and hasattr(data, 'return_value')
2040
+ and not ignore_simplified_return_value
2041
+ ):
2042
+ return data.return_value()
2043
+ return data
2044
+
2045
+
2046
+ def get_group_user_permission_with_http_info(self, group_id, user_id, **kwargs): # noqa: E501
2047
+ """List a user's permissions for this group.
2048
+
2049
+ List a user's permissions for this group
2050
+ This method makes a synchronous HTTP request by default.
2051
+
2052
+ :param str group_id: (required)
2053
+ :param str user_id: (required)
2054
+ :param bool async_: Perform the request asynchronously
2055
+ :return: AccessPermissionOutput
2056
+ """
2057
+
2058
+ all_params = ['group_id','user_id',] # noqa: E501
2059
+ all_params.append('async_')
2060
+ all_params.append('_return_http_data_only')
2061
+ all_params.append('_preload_content')
2062
+ all_params.append('_request_timeout')
2063
+ all_params.append('_request_out')
2064
+
2065
+ params = locals()
2066
+ for key, val in six.iteritems(params['kwargs']):
2067
+ if key not in all_params:
2068
+ raise TypeError(
2069
+ "Got an unexpected keyword argument '%s'"
2070
+ " to method get_group_user_permission" % key
2071
+ )
2072
+ params[key] = val
2073
+ del params['kwargs']
2074
+ # verify the required parameter 'group_id' is set
2075
+ if ('group_id' not in params or
2076
+ params['group_id'] is None):
2077
+ raise ValueError("Missing the required parameter `group_id` when calling `get_group_user_permission`") # noqa: E501
2078
+ # verify the required parameter 'user_id' is set
2079
+ if ('user_id' not in params or
2080
+ params['user_id'] is None):
2081
+ raise ValueError("Missing the required parameter `user_id` when calling `get_group_user_permission`") # noqa: E501
2082
+ check_filename_params(params)
2083
+
2084
+ collection_formats = {}
2085
+
2086
+ path_params = {}
2087
+ if 'group_id' in params:
2088
+ path_params['group_id'] = params['group_id'] # noqa: E501
2089
+ if 'user_id' in params:
2090
+ path_params['user_id'] = params['user_id'] # noqa: E501
2091
+
2092
+ query_params = []
2093
+
2094
+ header_params = {}
2095
+
2096
+ form_params = []
2097
+ local_var_files = {}
2098
+
2099
+ body_params = None
2100
+ # HTTP header `Accept`
2101
+ header_params['Accept'] = self.api_client.select_header_accept(
2102
+ ['application/json']) # noqa: E501
2103
+
2104
+ # Authentication setting
2105
+ auth_settings = ['ApiKey'] # noqa: E501
2106
+
2107
+ return self.api_client.call_api(
2108
+ '/groups/{group_id}/permissions/{user_id}', 'GET',
2109
+ path_params,
2110
+ query_params,
2111
+ header_params,
2112
+ body=body_params,
2113
+ post_params=form_params,
2114
+ files=local_var_files,
2115
+ response_type='AccessPermissionOutput', # noqa: E501
2116
+ auth_settings=auth_settings,
2117
+ async_=params.get('async_'),
2118
+ _return_http_data_only=params.get('_return_http_data_only'),
2119
+ _preload_content=params.get('_preload_content', True),
2120
+ _request_timeout=params.get('_request_timeout'),
2121
+ _request_out=params.get('_request_out'),
2122
+ collection_formats=collection_formats)
2123
+
2124
+ def get_group_user_permission_template(self, group_id, user_id, **kwargs): # noqa: E501
2125
+ """List a user's permissions for this group.
2126
+
2127
+ List a user's permissions for this group.
2128
+ This method makes a synchronous HTTP request by default.
2129
+
2130
+ :param str group_id: (required)
2131
+ :param str user_id: (required)
2132
+ :param bool async_: Perform the request asynchronously
2133
+ :return: RolePermissionOutput
2134
+ """
2135
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2136
+ kwargs['_return_http_data_only'] = True
2137
+
2138
+ if kwargs.get('async_'):
2139
+ return self.get_group_user_permission_template_with_http_info(group_id, user_id, **kwargs) # noqa: E501
2140
+ else:
2141
+ (data) = self.get_group_user_permission_template_with_http_info(group_id, user_id, **kwargs) # noqa: E501
2142
+ if (
2143
+ data
2144
+ and hasattr(data, 'return_value')
2145
+ and not ignore_simplified_return_value
2146
+ ):
2147
+ return data.return_value()
2148
+ return data
2149
+
2150
+
2151
+ def get_group_user_permission_template_with_http_info(self, group_id, user_id, **kwargs): # noqa: E501
2152
+ """List a user's permissions for this group.
2153
+
2154
+ List a user's permissions for this group.
2155
+ This method makes a synchronous HTTP request by default.
2156
+
2157
+ :param str group_id: (required)
2158
+ :param str user_id: (required)
2159
+ :param bool async_: Perform the request asynchronously
2160
+ :return: RolePermissionOutput
2161
+ """
2162
+
2163
+ all_params = ['group_id','user_id',] # noqa: E501
2164
+ all_params.append('async_')
2165
+ all_params.append('_return_http_data_only')
2166
+ all_params.append('_preload_content')
2167
+ all_params.append('_request_timeout')
2168
+ all_params.append('_request_out')
2169
+
2170
+ params = locals()
2171
+ for key, val in six.iteritems(params['kwargs']):
2172
+ if key not in all_params:
2173
+ raise TypeError(
2174
+ "Got an unexpected keyword argument '%s'"
2175
+ " to method get_group_user_permission_template" % key
2176
+ )
2177
+ params[key] = val
2178
+ del params['kwargs']
2179
+ # verify the required parameter 'group_id' is set
2180
+ if ('group_id' not in params or
2181
+ params['group_id'] is None):
2182
+ raise ValueError("Missing the required parameter `group_id` when calling `get_group_user_permission_template`") # noqa: E501
2183
+ # verify the required parameter 'user_id' is set
2184
+ if ('user_id' not in params or
2185
+ params['user_id'] is None):
2186
+ raise ValueError("Missing the required parameter `user_id` when calling `get_group_user_permission_template`") # noqa: E501
2187
+ check_filename_params(params)
2188
+
2189
+ collection_formats = {}
2190
+
2191
+ path_params = {}
2192
+ if 'group_id' in params:
2193
+ path_params['group_id'] = params['group_id'] # noqa: E501
2194
+ if 'user_id' in params:
2195
+ path_params['user_id'] = params['user_id'] # noqa: E501
2196
+
2197
+ query_params = []
2198
+
2199
+ header_params = {}
2200
+
2201
+ form_params = []
2202
+ local_var_files = {}
2203
+
2204
+ body_params = None
2205
+ # HTTP header `Accept`
2206
+ header_params['Accept'] = self.api_client.select_header_accept(
2207
+ ['application/json']) # noqa: E501
2208
+
2209
+ # Authentication setting
2210
+ auth_settings = ['ApiKey'] # noqa: E501
2211
+
2212
+ return self.api_client.call_api(
2213
+ '/groups/{group_id}/permissions/templates/{user_id}', 'GET',
2214
+ path_params,
2215
+ query_params,
2216
+ header_params,
2217
+ body=body_params,
2218
+ post_params=form_params,
2219
+ files=local_var_files,
2220
+ response_type='RolePermissionOutput', # noqa: E501
2221
+ auth_settings=auth_settings,
2222
+ async_=params.get('async_'),
2223
+ _return_http_data_only=params.get('_return_http_data_only'),
2224
+ _preload_content=params.get('_preload_content', True),
2225
+ _request_timeout=params.get('_request_timeout'),
2226
+ _request_out=params.get('_request_out'),
2227
+ collection_formats=collection_formats)
2228
+
2229
+ def modify_group(self, group_id, body, **kwargs): # noqa: E501
2230
+ """Update group
2231
+
2232
+ Modify a group.
2233
+ This method makes a synchronous HTTP request by default.
2234
+
2235
+ :param str group_id: (required)
2236
+ :param GroupUpdate body: (required)
2237
+ :param bool async_: Perform the request asynchronously
2238
+ :return: ModifiedResult
2239
+ """
2240
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2241
+ kwargs['_return_http_data_only'] = True
2242
+
2243
+ if kwargs.get('async_'):
2244
+ return self.modify_group_with_http_info(group_id, body, **kwargs) # noqa: E501
2245
+ else:
2246
+ (data) = self.modify_group_with_http_info(group_id, body, **kwargs) # noqa: E501
2247
+ if (
2248
+ data
2249
+ and hasattr(data, 'return_value')
2250
+ and not ignore_simplified_return_value
2251
+ ):
2252
+ return data.return_value()
2253
+ return data
2254
+
2255
+
2256
+ def modify_group_with_http_info(self, group_id, body, **kwargs): # noqa: E501
2257
+ """Update group
2258
+
2259
+ Modify a group.
2260
+ This method makes a synchronous HTTP request by default.
2261
+
2262
+ :param str group_id: (required)
2263
+ :param GroupUpdate body: (required)
2264
+ :param bool async_: Perform the request asynchronously
2265
+ :return: ModifiedResult
2266
+ """
2267
+
2268
+ all_params = ['group_id','body',] # noqa: E501
2269
+ all_params.append('async_')
2270
+ all_params.append('_return_http_data_only')
2271
+ all_params.append('_preload_content')
2272
+ all_params.append('_request_timeout')
2273
+ all_params.append('_request_out')
2274
+
2275
+ params = locals()
2276
+ for key, val in six.iteritems(params['kwargs']):
2277
+ if key not in all_params:
2278
+ raise TypeError(
2279
+ "Got an unexpected keyword argument '%s'"
2280
+ " to method modify_group" % key
2281
+ )
2282
+ params[key] = val
2283
+ del params['kwargs']
2284
+ # verify the required parameter 'group_id' is set
2285
+ if ('group_id' not in params or
2286
+ params['group_id'] is None):
2287
+ raise ValueError("Missing the required parameter `group_id` when calling `modify_group`") # noqa: E501
2288
+ # verify the required parameter 'body' is set
2289
+ if ('body' not in params or
2290
+ params['body'] is None):
2291
+ raise ValueError("Missing the required parameter `body` when calling `modify_group`") # noqa: E501
2292
+ check_filename_params(params)
2293
+
2294
+ collection_formats = {}
2295
+
2296
+ path_params = {}
2297
+ if 'group_id' in params:
2298
+ path_params['group_id'] = params['group_id'] # noqa: E501
2299
+
2300
+ query_params = []
2301
+
2302
+ header_params = {}
2303
+
2304
+ form_params = []
2305
+ local_var_files = {}
2306
+
2307
+ body_params = None
2308
+ if 'body' in params:
2309
+ if 'GroupUpdate'.startswith('union'):
2310
+ body_type = type(params['body'])
2311
+ if getattr(body_type, 'positional_to_model', None):
2312
+ body_params = body_type.positional_to_model(params['body'])
2313
+ else:
2314
+ body_params = params['body']
2315
+ else:
2316
+ body_params = flywheel.models.GroupUpdate.positional_to_model(params['body'])
2317
+ # HTTP header `Accept`
2318
+ header_params['Accept'] = self.api_client.select_header_accept(
2319
+ ['application/json']) # noqa: E501
2320
+
2321
+ # HTTP header `Content-Type`
2322
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
2323
+ ['application/json']) # noqa: E501
2324
+
2325
+ # Authentication setting
2326
+ auth_settings = ['ApiKey'] # noqa: E501
2327
+
2328
+ return self.api_client.call_api(
2329
+ '/groups/{group_id}', 'PUT',
2330
+ path_params,
2331
+ query_params,
2332
+ header_params,
2333
+ body=body_params,
2334
+ post_params=form_params,
2335
+ files=local_var_files,
2336
+ response_type='ModifiedResult', # noqa: E501
2337
+ auth_settings=auth_settings,
2338
+ async_=params.get('async_'),
2339
+ _return_http_data_only=params.get('_return_http_data_only'),
2340
+ _preload_content=params.get('_preload_content', True),
2341
+ _request_timeout=params.get('_request_timeout'),
2342
+ _request_out=params.get('_request_out'),
2343
+ collection_formats=collection_formats)
2344
+
2345
+ def modify_group_user_permission(self, group_id, user_id, body, **kwargs): # noqa: E501
2346
+ """Update a user's permission for this group.
2347
+
2348
+ Update a user's permission for this group.
2349
+ This method makes a synchronous HTTP request by default.
2350
+
2351
+ :param str group_id: (required)
2352
+ :param str user_id: (required)
2353
+ :param AccessPermissionUpdate body: (required)
2354
+ :param bool async_: Perform the request asynchronously
2355
+ :return: AccessPermissionOutput
2356
+ """
2357
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2358
+ kwargs['_return_http_data_only'] = True
2359
+
2360
+ if kwargs.get('async_'):
2361
+ return self.modify_group_user_permission_with_http_info(group_id, user_id, body, **kwargs) # noqa: E501
2362
+ else:
2363
+ (data) = self.modify_group_user_permission_with_http_info(group_id, user_id, body, **kwargs) # noqa: E501
2364
+ if (
2365
+ data
2366
+ and hasattr(data, 'return_value')
2367
+ and not ignore_simplified_return_value
2368
+ ):
2369
+ return data.return_value()
2370
+ return data
2371
+
2372
+
2373
+ def modify_group_user_permission_with_http_info(self, group_id, user_id, body, **kwargs): # noqa: E501
2374
+ """Update a user's permission for this group.
2375
+
2376
+ Update a user's permission for this group.
2377
+ This method makes a synchronous HTTP request by default.
2378
+
2379
+ :param str group_id: (required)
2380
+ :param str user_id: (required)
2381
+ :param AccessPermissionUpdate body: (required)
2382
+ :param bool async_: Perform the request asynchronously
2383
+ :return: AccessPermissionOutput
2384
+ """
2385
+
2386
+ all_params = ['group_id','user_id','body',] # noqa: E501
2387
+ all_params.append('async_')
2388
+ all_params.append('_return_http_data_only')
2389
+ all_params.append('_preload_content')
2390
+ all_params.append('_request_timeout')
2391
+ all_params.append('_request_out')
2392
+
2393
+ params = locals()
2394
+ for key, val in six.iteritems(params['kwargs']):
2395
+ if key not in all_params:
2396
+ raise TypeError(
2397
+ "Got an unexpected keyword argument '%s'"
2398
+ " to method modify_group_user_permission" % key
2399
+ )
2400
+ params[key] = val
2401
+ del params['kwargs']
2402
+ # verify the required parameter 'group_id' is set
2403
+ if ('group_id' not in params or
2404
+ params['group_id'] is None):
2405
+ raise ValueError("Missing the required parameter `group_id` when calling `modify_group_user_permission`") # noqa: E501
2406
+ # verify the required parameter 'user_id' is set
2407
+ if ('user_id' not in params or
2408
+ params['user_id'] is None):
2409
+ raise ValueError("Missing the required parameter `user_id` when calling `modify_group_user_permission`") # noqa: E501
2410
+ # verify the required parameter 'body' is set
2411
+ if ('body' not in params or
2412
+ params['body'] is None):
2413
+ raise ValueError("Missing the required parameter `body` when calling `modify_group_user_permission`") # noqa: E501
2414
+ check_filename_params(params)
2415
+
2416
+ collection_formats = {}
2417
+
2418
+ path_params = {}
2419
+ if 'group_id' in params:
2420
+ path_params['group_id'] = params['group_id'] # noqa: E501
2421
+ if 'user_id' in params:
2422
+ path_params['user_id'] = params['user_id'] # noqa: E501
2423
+
2424
+ query_params = []
2425
+
2426
+ header_params = {}
2427
+
2428
+ form_params = []
2429
+ local_var_files = {}
2430
+
2431
+ body_params = None
2432
+ if 'body' in params:
2433
+ if 'AccessPermissionUpdate'.startswith('union'):
2434
+ body_type = type(params['body'])
2435
+ if getattr(body_type, 'positional_to_model', None):
2436
+ body_params = body_type.positional_to_model(params['body'])
2437
+ else:
2438
+ body_params = params['body']
2439
+ else:
2440
+ body_params = flywheel.models.AccessPermissionUpdate.positional_to_model(params['body'])
2441
+ # HTTP header `Accept`
2442
+ header_params['Accept'] = self.api_client.select_header_accept(
2443
+ ['application/json']) # noqa: E501
2444
+
2445
+ # HTTP header `Content-Type`
2446
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
2447
+ ['application/json']) # noqa: E501
2448
+
2449
+ # Authentication setting
2450
+ auth_settings = ['ApiKey'] # noqa: E501
2451
+
2452
+ return self.api_client.call_api(
2453
+ '/groups/{group_id}/permissions/{user_id}', 'PUT',
2454
+ path_params,
2455
+ query_params,
2456
+ header_params,
2457
+ body=body_params,
2458
+ post_params=form_params,
2459
+ files=local_var_files,
2460
+ response_type='AccessPermissionOutput', # noqa: E501
2461
+ auth_settings=auth_settings,
2462
+ async_=params.get('async_'),
2463
+ _return_http_data_only=params.get('_return_http_data_only'),
2464
+ _preload_content=params.get('_preload_content', True),
2465
+ _request_timeout=params.get('_request_timeout'),
2466
+ _request_out=params.get('_request_out'),
2467
+ collection_formats=collection_formats)
2468
+
2469
+ def modify_group_user_permission_template(self, group_id, user_id, body, **kwargs): # noqa: E501
2470
+ """Update a user's permission for this group.
2471
+
2472
+ Update a user's permission for this group.
2473
+ This method makes a synchronous HTTP request by default.
2474
+
2475
+ :param str group_id: (required)
2476
+ :param str user_id: (required)
2477
+ :param RolePermissionUpdate body: (required)
2478
+ :param bool propagate:
2479
+ :param list[union[HeaderFeature,str]] x_accept_feature:
2480
+ :param bool async_: Perform the request asynchronously
2481
+ :return: RolePermissionOutput
2482
+ """
2483
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2484
+ kwargs['_return_http_data_only'] = True
2485
+
2486
+ if kwargs.get('async_'):
2487
+ return self.modify_group_user_permission_template_with_http_info(group_id, user_id, body, **kwargs) # noqa: E501
2488
+ else:
2489
+ (data) = self.modify_group_user_permission_template_with_http_info(group_id, user_id, body, **kwargs) # noqa: E501
2490
+ if (
2491
+ data
2492
+ and hasattr(data, 'return_value')
2493
+ and not ignore_simplified_return_value
2494
+ ):
2495
+ return data.return_value()
2496
+ return data
2497
+
2498
+
2499
+ def modify_group_user_permission_template_with_http_info(self, group_id, user_id, body, **kwargs): # noqa: E501
2500
+ """Update a user's permission for this group.
2501
+
2502
+ Update a user's permission for this group.
2503
+ This method makes a synchronous HTTP request by default.
2504
+
2505
+ :param str group_id: (required)
2506
+ :param str user_id: (required)
2507
+ :param RolePermissionUpdate body: (required)
2508
+ :param bool propagate:
2509
+ :param list[union[HeaderFeature,str]] x_accept_feature:
2510
+ :param bool async_: Perform the request asynchronously
2511
+ :return: RolePermissionOutput
2512
+ """
2513
+
2514
+ all_params = ['group_id','user_id','body','propagate','x_accept_feature',] # noqa: E501
2515
+ all_params.append('async_')
2516
+ all_params.append('_return_http_data_only')
2517
+ all_params.append('_preload_content')
2518
+ all_params.append('_request_timeout')
2519
+ all_params.append('_request_out')
2520
+
2521
+ params = locals()
2522
+ for key, val in six.iteritems(params['kwargs']):
2523
+ if key not in all_params:
2524
+ raise TypeError(
2525
+ "Got an unexpected keyword argument '%s'"
2526
+ " to method modify_group_user_permission_template" % key
2527
+ )
2528
+ params[key] = val
2529
+ del params['kwargs']
2530
+ # verify the required parameter 'group_id' is set
2531
+ if ('group_id' not in params or
2532
+ params['group_id'] is None):
2533
+ raise ValueError("Missing the required parameter `group_id` when calling `modify_group_user_permission_template`") # noqa: E501
2534
+ # verify the required parameter 'user_id' is set
2535
+ if ('user_id' not in params or
2536
+ params['user_id'] is None):
2537
+ raise ValueError("Missing the required parameter `user_id` when calling `modify_group_user_permission_template`") # noqa: E501
2538
+ # verify the required parameter 'body' is set
2539
+ if ('body' not in params or
2540
+ params['body'] is None):
2541
+ raise ValueError("Missing the required parameter `body` when calling `modify_group_user_permission_template`") # noqa: E501
2542
+ check_filename_params(params)
2543
+
2544
+ collection_formats = {}
2545
+
2546
+ path_params = {}
2547
+ if 'group_id' in params:
2548
+ path_params['group_id'] = params['group_id'] # noqa: E501
2549
+ if 'user_id' in params:
2550
+ path_params['user_id'] = params['user_id'] # noqa: E501
2551
+
2552
+ query_params = []
2553
+ if 'propagate' in params:
2554
+ query_params.append(('propagate', params['propagate'])) # noqa: E501
2555
+
2556
+ header_params = {}
2557
+ if 'x_accept_feature' in params:
2558
+ header_params['x-accept-feature'] = params['x_accept_feature'] # noqa: E501
2559
+ collection_formats['x-accept-feature'] = '' # noqa: E501
2560
+
2561
+ form_params = []
2562
+ local_var_files = {}
2563
+
2564
+ body_params = None
2565
+ if 'body' in params:
2566
+ if 'RolePermissionUpdate'.startswith('union'):
2567
+ body_type = type(params['body'])
2568
+ if getattr(body_type, 'positional_to_model', None):
2569
+ body_params = body_type.positional_to_model(params['body'])
2570
+ else:
2571
+ body_params = params['body']
2572
+ else:
2573
+ body_params = flywheel.models.RolePermissionUpdate.positional_to_model(params['body'])
2574
+ # HTTP header `Accept`
2575
+ header_params['Accept'] = self.api_client.select_header_accept(
2576
+ ['application/json']) # noqa: E501
2577
+
2578
+ # HTTP header `Content-Type`
2579
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
2580
+ ['application/json']) # noqa: E501
2581
+
2582
+ # Authentication setting
2583
+ auth_settings = ['ApiKey'] # noqa: E501
2584
+
2585
+ return self.api_client.call_api(
2586
+ '/groups/{group_id}/permissions/templates/{user_id}', 'PUT',
2587
+ path_params,
2588
+ query_params,
2589
+ header_params,
2590
+ body=body_params,
2591
+ post_params=form_params,
2592
+ files=local_var_files,
2593
+ response_type='RolePermissionOutput', # noqa: E501
2594
+ auth_settings=auth_settings,
2595
+ async_=params.get('async_'),
2596
+ _return_http_data_only=params.get('_return_http_data_only'),
2597
+ _preload_content=params.get('_preload_content', True),
2598
+ _request_timeout=params.get('_request_timeout'),
2599
+ _request_out=params.get('_request_out'),
2600
+ collection_formats=collection_formats)
2601
+
2602
+ def remove_role_from_group(self, group_id, role_id, **kwargs): # noqa: E501
2603
+ """Remove the role from the group
2604
+
2605
+ Delete a group role.
2606
+ This method makes a synchronous HTTP request by default.
2607
+
2608
+ :param str group_id: (required)
2609
+ :param str role_id: (required)
2610
+ :param bool async_: Perform the request asynchronously
2611
+ :return: None
2612
+ """
2613
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2614
+ kwargs['_return_http_data_only'] = True
2615
+
2616
+ if kwargs.get('async_'):
2617
+ return self.remove_role_from_group_with_http_info(group_id, role_id, **kwargs) # noqa: E501
2618
+ else:
2619
+ (data) = self.remove_role_from_group_with_http_info(group_id, role_id, **kwargs) # noqa: E501
2620
+ if (
2621
+ data
2622
+ and hasattr(data, 'return_value')
2623
+ and not ignore_simplified_return_value
2624
+ ):
2625
+ return data.return_value()
2626
+ return data
2627
+
2628
+
2629
+ def remove_role_from_group_with_http_info(self, group_id, role_id, **kwargs): # noqa: E501
2630
+ """Remove the role from the group
2631
+
2632
+ Delete a group role.
2633
+ This method makes a synchronous HTTP request by default.
2634
+
2635
+ :param str group_id: (required)
2636
+ :param str role_id: (required)
2637
+ :param bool async_: Perform the request asynchronously
2638
+ :return: None
2639
+ """
2640
+
2641
+ all_params = ['group_id','role_id',] # noqa: E501
2642
+ all_params.append('async_')
2643
+ all_params.append('_return_http_data_only')
2644
+ all_params.append('_preload_content')
2645
+ all_params.append('_request_timeout')
2646
+ all_params.append('_request_out')
2647
+
2648
+ params = locals()
2649
+ for key, val in six.iteritems(params['kwargs']):
2650
+ if key not in all_params:
2651
+ raise TypeError(
2652
+ "Got an unexpected keyword argument '%s'"
2653
+ " to method remove_role_from_group" % key
2654
+ )
2655
+ params[key] = val
2656
+ del params['kwargs']
2657
+ # verify the required parameter 'group_id' is set
2658
+ if ('group_id' not in params or
2659
+ params['group_id'] is None):
2660
+ raise ValueError("Missing the required parameter `group_id` when calling `remove_role_from_group`") # noqa: E501
2661
+ # verify the required parameter 'role_id' is set
2662
+ if ('role_id' not in params or
2663
+ params['role_id'] is None):
2664
+ raise ValueError("Missing the required parameter `role_id` when calling `remove_role_from_group`") # noqa: E501
2665
+ check_filename_params(params)
2666
+
2667
+ collection_formats = {}
2668
+
2669
+ path_params = {}
2670
+ if 'group_id' in params:
2671
+ path_params['group_id'] = params['group_id'] # noqa: E501
2672
+ if 'role_id' in params:
2673
+ path_params['role_id'] = params['role_id'] # noqa: E501
2674
+
2675
+ query_params = []
2676
+
2677
+ header_params = {}
2678
+
2679
+ form_params = []
2680
+ local_var_files = {}
2681
+
2682
+ body_params = None
2683
+ # HTTP header `Accept`
2684
+ header_params['Accept'] = self.api_client.select_header_accept(
2685
+ ['application/json']) # noqa: E501
2686
+
2687
+ # Authentication setting
2688
+ auth_settings = ['ApiKey'] # noqa: E501
2689
+
2690
+ return self.api_client.call_api(
2691
+ '/groups/{group_id}/roles/{role_id}', 'DELETE',
2692
+ path_params,
2693
+ query_params,
2694
+ header_params,
2695
+ body=body_params,
2696
+ post_params=form_params,
2697
+ files=local_var_files,
2698
+ response_type=None, # noqa: E501
2699
+ auth_settings=auth_settings,
2700
+ async_=params.get('async_'),
2701
+ _return_http_data_only=params.get('_return_http_data_only'),
2702
+ _preload_content=params.get('_preload_content', True),
2703
+ _request_timeout=params.get('_request_timeout'),
2704
+ _request_out=params.get('_request_out'),
2705
+ collection_formats=collection_formats)
2706
+
2707
+ def rename_group_tag(self, cid, value, body, **kwargs): # noqa: E501
2708
+ """Rename a tag.
2709
+
2710
+ Rename a tag
2711
+ This method makes a synchronous HTTP request by default.
2712
+
2713
+ :param str cid: (required)
2714
+ :param str value: The tag to interact with (required)
2715
+ :param Tag body: (required)
2716
+ :param bool async_: Perform the request asynchronously
2717
+ :return: str
2718
+ """
2719
+ ignore_simplified_return_value = kwargs.pop('_ignore_simplified_return_value', False)
2720
+ kwargs['_return_http_data_only'] = True
2721
+
2722
+ if kwargs.get('async_'):
2723
+ return self.rename_group_tag_with_http_info(cid, value, body, **kwargs) # noqa: E501
2724
+ else:
2725
+ (data) = self.rename_group_tag_with_http_info(cid, value, body, **kwargs) # noqa: E501
2726
+ if (
2727
+ data
2728
+ and hasattr(data, 'return_value')
2729
+ and not ignore_simplified_return_value
2730
+ ):
2731
+ return data.return_value()
2732
+ return data
2733
+
2734
+
2735
+ def rename_group_tag_with_http_info(self, cid, value, body, **kwargs): # noqa: E501
2736
+ """Rename a tag.
2737
+
2738
+ Rename a tag
2739
+ This method makes a synchronous HTTP request by default.
2740
+
2741
+ :param str cid: (required)
2742
+ :param str value: The tag to interact with (required)
2743
+ :param Tag body: (required)
2744
+ :param bool async_: Perform the request asynchronously
2745
+ :return: str
2746
+ """
2747
+
2748
+ all_params = ['cid','value','body',] # noqa: E501
2749
+ all_params.append('async_')
2750
+ all_params.append('_return_http_data_only')
2751
+ all_params.append('_preload_content')
2752
+ all_params.append('_request_timeout')
2753
+ all_params.append('_request_out')
2754
+
2755
+ params = locals()
2756
+ for key, val in six.iteritems(params['kwargs']):
2757
+ if key not in all_params:
2758
+ raise TypeError(
2759
+ "Got an unexpected keyword argument '%s'"
2760
+ " to method rename_group_tag" % key
2761
+ )
2762
+ params[key] = val
2763
+ del params['kwargs']
2764
+ # verify the required parameter 'cid' is set
2765
+ if ('cid' not in params or
2766
+ params['cid'] is None):
2767
+ raise ValueError("Missing the required parameter `cid` when calling `rename_group_tag`") # noqa: E501
2768
+ # verify the required parameter 'value' is set
2769
+ if ('value' not in params or
2770
+ params['value'] is None):
2771
+ raise ValueError("Missing the required parameter `value` when calling `rename_group_tag`") # noqa: E501
2772
+ # verify the required parameter 'body' is set
2773
+ if ('body' not in params or
2774
+ params['body'] is None):
2775
+ raise ValueError("Missing the required parameter `body` when calling `rename_group_tag`") # noqa: E501
2776
+ check_filename_params(params)
2777
+
2778
+ collection_formats = {}
2779
+
2780
+ path_params = {}
2781
+ if 'cid' in params:
2782
+ path_params['cid'] = params['cid'] # noqa: E501
2783
+ if 'value' in params:
2784
+ path_params['value'] = params['value'] # noqa: E501
2785
+
2786
+ query_params = []
2787
+
2788
+ header_params = {}
2789
+
2790
+ form_params = []
2791
+ local_var_files = {}
2792
+
2793
+ body_params = None
2794
+ if 'body' in params:
2795
+ if 'Tag'.startswith('union'):
2796
+ body_type = type(params['body'])
2797
+ if getattr(body_type, 'positional_to_model', None):
2798
+ body_params = body_type.positional_to_model(params['body'])
2799
+ else:
2800
+ body_params = params['body']
2801
+ else:
2802
+ body_params = flywheel.models.Tag.positional_to_model(params['body'])
2803
+ # HTTP header `Accept`
2804
+ header_params['Accept'] = self.api_client.select_header_accept(
2805
+ ['application/json']) # noqa: E501
2806
+
2807
+ # HTTP header `Content-Type`
2808
+ header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
2809
+ ['application/json']) # noqa: E501
2810
+
2811
+ # Authentication setting
2812
+ auth_settings = ['ApiKey'] # noqa: E501
2813
+
2814
+ return self.api_client.call_api(
2815
+ '/groups/{cid}/tags/{value}', 'PUT',
2816
+ path_params,
2817
+ query_params,
2818
+ header_params,
2819
+ body=body_params,
2820
+ post_params=form_params,
2821
+ files=local_var_files,
2822
+ response_type='str', # noqa: E501
2823
+ auth_settings=auth_settings,
2824
+ async_=params.get('async_'),
2825
+ _return_http_data_only=params.get('_return_http_data_only'),
2826
+ _preload_content=params.get('_preload_content', True),
2827
+ _request_timeout=params.get('_request_timeout'),
2828
+ _request_out=params.get('_request_out'),
2829
+ collection_formats=collection_formats)