instana-client 1.0.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 (515) hide show
  1. instana_client/__init__.py +534 -0
  2. instana_client/api/__init__.py +58 -0
  3. instana_client/api/action_catalog_api.py +1380 -0
  4. instana_client/api/action_history_api.py +1793 -0
  5. instana_client/api/apdex_report_api.py +338 -0
  6. instana_client/api/apdex_settings_api.py +1353 -0
  7. instana_client/api/api_token_api.py +1370 -0
  8. instana_client/api/application_alert_configuration_api.py +2865 -0
  9. instana_client/api/application_analyze_api.py +2017 -0
  10. instana_client/api/application_catalog_api.py +885 -0
  11. instana_client/api/application_metrics_api.py +1211 -0
  12. instana_client/api/application_resources_api.py +1487 -0
  13. instana_client/api/application_settings_api.py +7261 -0
  14. instana_client/api/application_topology_api.py +354 -0
  15. instana_client/api/audit_log_api.py +635 -0
  16. instana_client/api/authentication_api.py +1008 -0
  17. instana_client/api/business_monitoring_api.py +2177 -0
  18. instana_client/api/custom_dashboards_api.py +1930 -0
  19. instana_client/api/event_settings_api.py +14613 -0
  20. instana_client/api/events_api.py +1654 -0
  21. instana_client/api/global_application_alert_configuration_api.py +2606 -0
  22. instana_client/api/groups_api.py +4078 -0
  23. instana_client/api/health_api.py +527 -0
  24. instana_client/api/host_agent_api.py +2120 -0
  25. instana_client/api/infrastructure_alert_configuration_api.py +2524 -0
  26. instana_client/api/infrastructure_analyze_api.py +1141 -0
  27. instana_client/api/infrastructure_catalog_api.py +1822 -0
  28. instana_client/api/infrastructure_metrics_api.py +331 -0
  29. instana_client/api/infrastructure_resources_api.py +1880 -0
  30. instana_client/api/infrastructure_topology_api.py +595 -0
  31. instana_client/api/log_alert_configuration_api.py +2524 -0
  32. instana_client/api/maintenance_configuration_api.py +2683 -0
  33. instana_client/api/mobile_app_analyze_api.py +613 -0
  34. instana_client/api/mobile_app_catalog_api.py +825 -0
  35. instana_client/api/mobile_app_configuration_api.py +2847 -0
  36. instana_client/api/mobile_app_metrics_api.py +892 -0
  37. instana_client/api/policies_api.py +1755 -0
  38. instana_client/api/releases_api.py +1408 -0
  39. instana_client/api/service_levels_alert_configuration_api.py +2577 -0
  40. instana_client/api/service_levels_objective_slo_configurations_api.py +1825 -0
  41. instana_client/api/service_levels_objective_slo_report_api.py +335 -0
  42. instana_client/api/session_settings_api.py +801 -0
  43. instana_client/api/sli_report_api.py +352 -0
  44. instana_client/api/sli_settings_api.py +2677 -0
  45. instana_client/api/synthetic_alert_configuration_api.py +2606 -0
  46. instana_client/api/synthetic_calls_api.py +789 -0
  47. instana_client/api/synthetic_catalog_api.py +543 -0
  48. instana_client/api/synthetic_metrics_api.py +322 -0
  49. instana_client/api/synthetic_settings_api.py +5144 -0
  50. instana_client/api/synthetic_test_playback_results_api.py +2142 -0
  51. instana_client/api/usage_api.py +1404 -0
  52. instana_client/api/user_api.py +2404 -0
  53. instana_client/api/website_analyze_api.py +619 -0
  54. instana_client/api/website_catalog_api.py +832 -0
  55. instana_client/api/website_configuration_api.py +3745 -0
  56. instana_client/api/website_metrics_api.py +889 -0
  57. instana_client/api_client.py +798 -0
  58. instana_client/api_response.py +21 -0
  59. instana_client/configuration.py +616 -0
  60. instana_client/exceptions.py +217 -0
  61. instana_client/models/__init__.py +464 -0
  62. instana_client/models/abstract_integration.py +155 -0
  63. instana_client/models/abstract_rule.py +124 -0
  64. instana_client/models/access_log_entry.py +105 -0
  65. instana_client/models/access_log_response.py +98 -0
  66. instana_client/models/access_rule.py +107 -0
  67. instana_client/models/action.py +135 -0
  68. instana_client/models/action_configuration.py +104 -0
  69. instana_client/models/action_instance.py +185 -0
  70. instana_client/models/action_instance_metadata_entry.py +90 -0
  71. instana_client/models/action_instance_parameter.py +94 -0
  72. instana_client/models/action_instance_request.py +108 -0
  73. instana_client/models/action_instance_request_parameters.py +92 -0
  74. instana_client/models/action_match.py +98 -0
  75. instana_client/models/action_search_space.py +94 -0
  76. instana_client/models/adaptive_baseline.py +92 -0
  77. instana_client/models/adaptive_threshold_rule.py +91 -0
  78. instana_client/models/adjusted_timeframe.py +91 -0
  79. instana_client/models/agent_configuration_update.py +93 -0
  80. instana_client/models/alerting_configuration.py +113 -0
  81. instana_client/models/alerting_configuration_with_last_updated.py +115 -0
  82. instana_client/models/alerting_time_window.py +109 -0
  83. instana_client/models/apdex_configuration.py +99 -0
  84. instana_client/models/apdex_configuration_input.py +95 -0
  85. instana_client/models/apdex_entity.py +119 -0
  86. instana_client/models/apdex_report.py +94 -0
  87. instana_client/models/api_create_group.py +104 -0
  88. instana_client/models/api_group.py +107 -0
  89. instana_client/models/api_member.py +90 -0
  90. instana_client/models/api_permission_set.py +178 -0
  91. instana_client/models/api_restricted_application_filter.py +108 -0
  92. instana_client/models/api_token.py +250 -0
  93. instana_client/models/app_data_metric_configuration.py +105 -0
  94. instana_client/models/application.py +104 -0
  95. instana_client/models/application_alert_config.py +203 -0
  96. instana_client/models/application_alert_config_with_metadata.py +213 -0
  97. instana_client/models/application_alert_rule.py +135 -0
  98. instana_client/models/application_apdex_entity.py +111 -0
  99. instana_client/models/application_config.py +131 -0
  100. instana_client/models/application_event_result.py +108 -0
  101. instana_client/models/application_item.py +94 -0
  102. instana_client/models/application_metric_result.py +109 -0
  103. instana_client/models/application_node.py +106 -0
  104. instana_client/models/application_result.py +102 -0
  105. instana_client/models/application_scope.py +89 -0
  106. instana_client/models/application_scope_with_metadata.py +90 -0
  107. instana_client/models/application_sli_entity.py +103 -0
  108. instana_client/models/application_slo_entity.py +112 -0
  109. instana_client/models/application_time_threshold.py +115 -0
  110. instana_client/models/audit_log_entry.py +102 -0
  111. instana_client/models/audit_log_ui_response.py +98 -0
  112. instana_client/models/author.py +100 -0
  113. instana_client/models/availability_blueprint_indicator.py +106 -0
  114. instana_client/models/availability_sli_entity.py +138 -0
  115. instana_client/models/available_metrics.py +96 -0
  116. instana_client/models/available_plugins.py +88 -0
  117. instana_client/models/backend_trace_reference.py +88 -0
  118. instana_client/models/binary_operator_dto.py +107 -0
  119. instana_client/models/browser_script_configuration.py +127 -0
  120. instana_client/models/built_in_event_specification.py +123 -0
  121. instana_client/models/built_in_event_specification_with_last_updated.py +125 -0
  122. instana_client/models/business_activity.py +132 -0
  123. instana_client/models/business_perspective_config.py +99 -0
  124. instana_client/models/call_groups_item.py +95 -0
  125. instana_client/models/call_groups_result.py +111 -0
  126. instana_client/models/call_relation.py +100 -0
  127. instana_client/models/change_summary.py +101 -0
  128. instana_client/models/cloudfoundry_physical_context.py +104 -0
  129. instana_client/models/condition.py +88 -0
  130. instana_client/models/config_version.py +101 -0
  131. instana_client/models/crash_mobile_app_alert_rule.py +90 -0
  132. instana_client/models/cursor_paginated_business_activity_item.py +96 -0
  133. instana_client/models/cursor_pagination.py +93 -0
  134. instana_client/models/cursor_pagination_infra_explore_cursor.py +90 -0
  135. instana_client/models/custom_blueprint_indicator.py +104 -0
  136. instana_client/models/custom_dashboard.py +111 -0
  137. instana_client/models/custom_dashboard_preview.py +103 -0
  138. instana_client/models/custom_email_subject_prefix.py +94 -0
  139. instana_client/models/custom_event_mobile_app_alert_rule.py +92 -0
  140. instana_client/models/custom_event_specification.py +133 -0
  141. instana_client/models/custom_event_specification_with_last_updated.py +143 -0
  142. instana_client/models/custom_event_website_alert_rule.py +92 -0
  143. instana_client/models/custom_payload_configuration.py +97 -0
  144. instana_client/models/custom_payload_field.py +112 -0
  145. instana_client/models/custom_payload_with_last_updated.py +99 -0
  146. instana_client/models/dashboard_api_token.py +90 -0
  147. instana_client/models/database_integration.py +90 -0
  148. instana_client/models/deprecated_tag_filter.py +111 -0
  149. instana_client/models/dns_action_configuration.py +134 -0
  150. instana_client/models/dns_action_filter_query_time.py +99 -0
  151. instana_client/models/dns_action_filter_target_value.py +106 -0
  152. instana_client/models/duration.py +98 -0
  153. instana_client/models/dynamic_field.py +95 -0
  154. instana_client/models/dynamic_field_value.py +90 -0
  155. instana_client/models/dynamic_parameter.py +94 -0
  156. instana_client/models/edit_user.py +88 -0
  157. instana_client/models/email_integration.py +98 -0
  158. instana_client/models/empty_configuration.py +92 -0
  159. instana_client/models/endpoint.py +131 -0
  160. instana_client/models/endpoint_config.py +112 -0
  161. instana_client/models/endpoint_event_result.py +112 -0
  162. instana_client/models/endpoint_item.py +94 -0
  163. instana_client/models/endpoint_metric_result.py +109 -0
  164. instana_client/models/endpoint_node.py +91 -0
  165. instana_client/models/endpoint_result.py +102 -0
  166. instana_client/models/endpoint_simple.py +102 -0
  167. instana_client/models/entity_count_rule.py +100 -0
  168. instana_client/models/entity_count_verification_rule.py +114 -0
  169. instana_client/models/entity_health_info.py +99 -0
  170. instana_client/models/entity_id.py +92 -0
  171. instana_client/models/entity_verification_rule.py +105 -0
  172. instana_client/models/error_budget_alert_rule.py +97 -0
  173. instana_client/models/errors_application_alert_rule.py +90 -0
  174. instana_client/models/event.py +127 -0
  175. instana_client/models/event_filtering_configuration.py +106 -0
  176. instana_client/models/event_result.py +145 -0
  177. instana_client/models/event_specification_info.py +114 -0
  178. instana_client/models/extended_service.py +123 -0
  179. instana_client/models/failure_synthetic_alert_rule.py +90 -0
  180. instana_client/models/fixed_http_path_segment_matching_rule.py +90 -0
  181. instana_client/models/fixed_time_window.py +93 -0
  182. instana_client/models/full_trace.py +97 -0
  183. instana_client/models/generic_infra_alert_rule.py +93 -0
  184. instana_client/models/geo_location_configuration.py +106 -0
  185. instana_client/models/geo_mapping_rule.py +120 -0
  186. instana_client/models/geo_subdivision.py +91 -0
  187. instana_client/models/get_activities.py +115 -0
  188. instana_client/models/get_application_metrics.py +112 -0
  189. instana_client/models/get_applications.py +150 -0
  190. instana_client/models/get_available_metrics_query.py +103 -0
  191. instana_client/models/get_available_plugins_query.py +98 -0
  192. instana_client/models/get_call_groups.py +141 -0
  193. instana_client/models/get_combined_metrics.py +103 -0
  194. instana_client/models/get_dynamic_parameter_values.py +100 -0
  195. instana_client/models/get_endpoints.py +150 -0
  196. instana_client/models/get_infrastructure_groups_query.py +127 -0
  197. instana_client/models/get_infrastructure_query.py +127 -0
  198. instana_client/models/get_metrics_result.py +128 -0
  199. instana_client/models/get_mobile_app_beacon_groups.py +146 -0
  200. instana_client/models/get_mobile_app_beacons.py +118 -0
  201. instana_client/models/get_mobile_app_metrics.py +122 -0
  202. instana_client/models/get_mobile_app_metrics_v2.py +118 -0
  203. instana_client/models/get_payload_keys_result.py +88 -0
  204. instana_client/models/get_services.py +147 -0
  205. instana_client/models/get_snapshots_query.py +95 -0
  206. instana_client/models/get_test_result.py +139 -0
  207. instana_client/models/get_test_result_base.py +120 -0
  208. instana_client/models/get_test_result_list.py +125 -0
  209. instana_client/models/get_test_summary_result.py +130 -0
  210. instana_client/models/get_trace_download_result_item.py +114 -0
  211. instana_client/models/get_trace_groups.py +141 -0
  212. instana_client/models/get_traces.py +125 -0
  213. instana_client/models/get_website_beacon_groups.py +146 -0
  214. instana_client/models/get_website_beacons.py +118 -0
  215. instana_client/models/get_website_metrics.py +122 -0
  216. instana_client/models/get_website_metrics_v2.py +118 -0
  217. instana_client/models/global_application_alert_config_with_metadata.py +205 -0
  218. instana_client/models/global_applications_alert_config.py +191 -0
  219. instana_client/models/google_chat_integration.py +92 -0
  220. instana_client/models/graph_edge.py +102 -0
  221. instana_client/models/graph_node.py +100 -0
  222. instana_client/models/group.py +100 -0
  223. instana_client/models/group_by_tag.py +90 -0
  224. instana_client/models/group_mapping.py +95 -0
  225. instana_client/models/health_state.py +100 -0
  226. instana_client/models/historic_baseline.py +105 -0
  227. instana_client/models/host_availability_rule.py +100 -0
  228. instana_client/models/http_action_configuration.py +127 -0
  229. instana_client/models/http_endpoint_config.py +103 -0
  230. instana_client/models/http_endpoint_rule.py +101 -0
  231. instana_client/models/http_path_segment_matching_rule.py +124 -0
  232. instana_client/models/http_script_configuration.py +113 -0
  233. instana_client/models/hyper_param.py +111 -0
  234. instana_client/models/identity_provider_patch.py +88 -0
  235. instana_client/models/infra_alert_config.py +166 -0
  236. instana_client/models/infra_alert_config_with_metadata.py +176 -0
  237. instana_client/models/infra_alert_rule.py +133 -0
  238. instana_client/models/infra_event_result.py +109 -0
  239. instana_client/models/infra_metric_configuration.py +115 -0
  240. instana_client/models/infra_time_threshold.py +109 -0
  241. instana_client/models/infrastructure_entities_result.py +109 -0
  242. instana_client/models/infrastructure_group.py +92 -0
  243. instana_client/models/infrastructure_groups_result.py +109 -0
  244. instana_client/models/infrastructure_item.py +104 -0
  245. instana_client/models/infrastructure_metric_result.py +96 -0
  246. instana_client/models/instana_version_info.py +92 -0
  247. instana_client/models/integration_overview.py +94 -0
  248. instana_client/models/invitation.py +94 -0
  249. instana_client/models/invitation_response.py +96 -0
  250. instana_client/models/invitation_result.py +100 -0
  251. instana_client/models/ip_masking_configuration.py +95 -0
  252. instana_client/models/js_stack_trace_line.py +99 -0
  253. instana_client/models/kubernetes_physical_context.py +107 -0
  254. instana_client/models/latency_blueprint_indicator.py +106 -0
  255. instana_client/models/location_status.py +96 -0
  256. instana_client/models/log_alert_config.py +154 -0
  257. instana_client/models/log_alert_config_with_metadata.py +164 -0
  258. instana_client/models/log_alert_rule.py +120 -0
  259. instana_client/models/log_count_alert_rule.py +90 -0
  260. instana_client/models/log_entry_actor.py +101 -0
  261. instana_client/models/log_event_result.py +107 -0
  262. instana_client/models/log_time_threshold.py +109 -0
  263. instana_client/models/logs_application_alert_rule.py +122 -0
  264. instana_client/models/maintenance_config.py +103 -0
  265. instana_client/models/maintenance_config_scheduling.py +118 -0
  266. instana_client/models/maintenance_config_v2.py +111 -0
  267. instana_client/models/maintenance_config_v2_with_state_and_occurrence.py +131 -0
  268. instana_client/models/maintenance_config_with_last_updated.py +105 -0
  269. instana_client/models/maintenance_window.py +93 -0
  270. instana_client/models/manual_alerting_channel_configuration.py +99 -0
  271. instana_client/models/manual_close_info.py +99 -0
  272. instana_client/models/manual_service_config.py +103 -0
  273. instana_client/models/match_all_http_path_segment_matching_rule.py +88 -0
  274. instana_client/models/match_expression_dto.py +111 -0
  275. instana_client/models/meta_data.py +96 -0
  276. instana_client/models/metric_api_result.py +94 -0
  277. instana_client/models/metric_config.py +99 -0
  278. instana_client/models/metric_configuration.py +103 -0
  279. instana_client/models/metric_description.py +116 -0
  280. instana_client/models/metric_instance.py +105 -0
  281. instana_client/models/metric_item.py +102 -0
  282. instana_client/models/metric_metadata.py +132 -0
  283. instana_client/models/metric_pattern.py +101 -0
  284. instana_client/models/metrics_result.py +96 -0
  285. instana_client/models/metrics_result_item.py +100 -0
  286. instana_client/models/metrics_test_result_item.py +102 -0
  287. instana_client/models/mobile_app.py +91 -0
  288. instana_client/models/mobile_app_alert_config.py +162 -0
  289. instana_client/models/mobile_app_alert_rule.py +129 -0
  290. instana_client/models/mobile_app_beacon_groups_item.py +95 -0
  291. instana_client/models/mobile_app_beacon_groups_result.py +111 -0
  292. instana_client/models/mobile_app_beacon_result.py +111 -0
  293. instana_client/models/mobile_app_beacon_tag_group.py +100 -0
  294. instana_client/models/mobile_app_beacons_item.py +94 -0
  295. instana_client/models/mobile_app_event_result.py +108 -0
  296. instana_client/models/mobile_app_metric_result.py +88 -0
  297. instana_client/models/mobile_app_monitoring_beacon.py +259 -0
  298. instana_client/models/mobile_app_monitoring_metric_description.py +123 -0
  299. instana_client/models/mobile_app_monitoring_metrics_configuration.py +105 -0
  300. instana_client/models/mobile_app_time_threshold.py +115 -0
  301. instana_client/models/model_field.py +96 -0
  302. instana_client/models/monitoring_state.py +92 -0
  303. instana_client/models/multiple_scripts_configuration.py +90 -0
  304. instana_client/models/new_application_config.py +129 -0
  305. instana_client/models/new_business_perspective_config.py +97 -0
  306. instana_client/models/new_manual_service_config.py +100 -0
  307. instana_client/models/occurrence.py +91 -0
  308. instana_client/models/office365_integration.py +92 -0
  309. instana_client/models/one_time_maintenance_window.py +94 -0
  310. instana_client/models/opsgenie_integration.py +105 -0
  311. instana_client/models/order.py +99 -0
  312. instana_client/models/pagerduty_integration.py +92 -0
  313. instana_client/models/paginated_result.py +95 -0
  314. instana_client/models/pagination.py +91 -0
  315. instana_client/models/parameter.py +102 -0
  316. instana_client/models/parameter_value.py +90 -0
  317. instana_client/models/path_parameter_http_path_segment_matching_rule.py +90 -0
  318. instana_client/models/physical_context.py +119 -0
  319. instana_client/models/plugin_result.py +90 -0
  320. instana_client/models/policy.py +113 -0
  321. instana_client/models/policy_runnable.py +103 -0
  322. instana_client/models/post_snapshots_result.py +98 -0
  323. instana_client/models/problem.py +95 -0
  324. instana_client/models/prometheus_webhook_integration.py +94 -0
  325. instana_client/models/recurrent_maintenance_window.py +98 -0
  326. instana_client/models/release.py +111 -0
  327. instana_client/models/release_scope.py +94 -0
  328. instana_client/models/release_with_metadata.py +125 -0
  329. instana_client/models/rolling_time_window.py +90 -0
  330. instana_client/models/rule_input.py +98 -0
  331. instana_client/models/rule_with_threshold_application_alert_rule.py +116 -0
  332. instana_client/models/rule_with_threshold_infra_alert_rule.py +116 -0
  333. instana_client/models/rule_with_threshold_log_alert_rule.py +116 -0
  334. instana_client/models/rule_with_threshold_mobile_app_alert_rule.py +116 -0
  335. instana_client/models/rule_with_threshold_website_alert_rule.py +116 -0
  336. instana_client/models/run_configuration.py +96 -0
  337. instana_client/models/salesforce_integration.py +98 -0
  338. instana_client/models/scope_binding.py +91 -0
  339. instana_client/models/search_field_result.py +116 -0
  340. instana_client/models/service.py +116 -0
  341. instana_client/models/service_config.py +107 -0
  342. instana_client/models/service_event_result.py +110 -0
  343. instana_client/models/service_item.py +94 -0
  344. instana_client/models/service_level_indicator.py +172 -0
  345. instana_client/models/service_level_objective_alert_rule.py +100 -0
  346. instana_client/models/service_level_objective_configuration.py +118 -0
  347. instana_client/models/service_levels_alert_config.py +133 -0
  348. instana_client/models/service_levels_alert_rule.py +111 -0
  349. instana_client/models/service_levels_burn_rate_time_windows.py +97 -0
  350. instana_client/models/service_levels_time_threshold.py +90 -0
  351. instana_client/models/service_levelse_alert_config_with_metadata.py +143 -0
  352. instana_client/models/service_map.py +106 -0
  353. instana_client/models/service_map_connection.py +97 -0
  354. instana_client/models/service_matching_rule.py +90 -0
  355. instana_client/models/service_metric_result.py +109 -0
  356. instana_client/models/service_node.py +106 -0
  357. instana_client/models/service_now_enhanced_integration.py +116 -0
  358. instana_client/models/service_now_integration.py +98 -0
  359. instana_client/models/service_result.py +102 -0
  360. instana_client/models/service_scope.py +95 -0
  361. instana_client/models/service_scope_with_metadata.py +96 -0
  362. instana_client/models/service_scoped_to.py +97 -0
  363. instana_client/models/service_scoped_to_with_metadata.py +97 -0
  364. instana_client/models/service_simple.py +90 -0
  365. instana_client/models/session_settings.py +91 -0
  366. instana_client/models/slack_integration.py +98 -0
  367. instana_client/models/sli_configuration.py +105 -0
  368. instana_client/models/sli_configuration_with_last_updated.py +107 -0
  369. instana_client/models/sli_entity.py +117 -0
  370. instana_client/models/sli_report.py +100 -0
  371. instana_client/models/slo_entity.py +119 -0
  372. instana_client/models/slo_report.py +112 -0
  373. instana_client/models/slowness_application_alert_rule.py +90 -0
  374. instana_client/models/slowness_website_alert_rule.py +90 -0
  375. instana_client/models/snapshot_item.py +102 -0
  376. instana_client/models/snapshot_preview.py +97 -0
  377. instana_client/models/snapshot_result.py +96 -0
  378. instana_client/models/software_user.py +94 -0
  379. instana_client/models/software_version.py +124 -0
  380. instana_client/models/source_map_file_blob.py +92 -0
  381. instana_client/models/source_map_file_meta.py +115 -0
  382. instana_client/models/source_map_upload_config.py +106 -0
  383. instana_client/models/span.py +156 -0
  384. instana_client/models/span_excerpt.py +132 -0
  385. instana_client/models/span_relation.py +114 -0
  386. instana_client/models/specific_js_errors_website_alert_rule.py +101 -0
  387. instana_client/models/splunk_integration.py +94 -0
  388. instana_client/models/ssl_certificate_configuration.py +99 -0
  389. instana_client/models/stack_trace_item.py +92 -0
  390. instana_client/models/stack_trace_line.py +99 -0
  391. instana_client/models/static_baseline_threshold_rule.py +102 -0
  392. instana_client/models/static_string_field.py +91 -0
  393. instana_client/models/static_threshold.py +94 -0
  394. instana_client/models/static_threshold_rule.py +91 -0
  395. instana_client/models/status_code_application_alert_rule.py +95 -0
  396. instana_client/models/status_code_mobile_app_alert_rule.py +101 -0
  397. instana_client/models/status_code_website_alert_rule.py +101 -0
  398. instana_client/models/synthetic_alert_config.py +127 -0
  399. instana_client/models/synthetic_alert_config_with_metadata.py +137 -0
  400. instana_client/models/synthetic_alert_rule.py +120 -0
  401. instana_client/models/synthetic_call_config.py +99 -0
  402. instana_client/models/synthetic_call_rule.py +99 -0
  403. instana_client/models/synthetic_call_with_defaults_config.py +108 -0
  404. instana_client/models/synthetic_credential.py +111 -0
  405. instana_client/models/synthetic_datacenter.py +117 -0
  406. instana_client/models/synthetic_datacenter_configuration.py +88 -0
  407. instana_client/models/synthetic_geo_point.py +94 -0
  408. instana_client/models/synthetic_location.py +129 -0
  409. instana_client/models/synthetic_location_configuration.py +102 -0
  410. instana_client/models/synthetic_metric_configuration.py +99 -0
  411. instana_client/models/synthetic_metric_tag_group.py +100 -0
  412. instana_client/models/synthetic_playback_capabilities.py +98 -0
  413. instana_client/models/synthetic_slo_entity.py +95 -0
  414. instana_client/models/synthetic_test.py +149 -0
  415. instana_client/models/synthetic_time_threshold.py +110 -0
  416. instana_client/models/synthetic_type_configuration.py +141 -0
  417. instana_client/models/synthetics_event_result.py +110 -0
  418. instana_client/models/system_rule.py +91 -0
  419. instana_client/models/system_rule_label.py +90 -0
  420. instana_client/models/tag.py +123 -0
  421. instana_client/models/tag_catalog.py +106 -0
  422. instana_client/models/tag_filter.py +113 -0
  423. instana_client/models/tag_filter_expression.py +106 -0
  424. instana_client/models/tag_filter_expression_element.py +111 -0
  425. instana_client/models/tag_matcher_dto.py +110 -0
  426. instana_client/models/tag_tree_level.py +109 -0
  427. instana_client/models/tag_tree_node.py +113 -0
  428. instana_client/models/tag_tree_tag.py +103 -0
  429. instana_client/models/test_common_properties.py +136 -0
  430. instana_client/models/test_result.py +105 -0
  431. instana_client/models/test_result_common_properties.py +108 -0
  432. instana_client/models/test_result_detail_data.py +112 -0
  433. instana_client/models/test_result_item.py +106 -0
  434. instana_client/models/test_result_list_item.py +94 -0
  435. instana_client/models/test_result_list_result.py +103 -0
  436. instana_client/models/test_result_metadata.py +94 -0
  437. instana_client/models/test_result_subtransaction.py +90 -0
  438. instana_client/models/threshold.py +122 -0
  439. instana_client/models/threshold_config_rule.py +114 -0
  440. instana_client/models/threshold_rule.py +125 -0
  441. instana_client/models/throughput_application_alert_rule.py +90 -0
  442. instana_client/models/throughput_mobile_app_alert_rule.py +90 -0
  443. instana_client/models/throughput_website_alert_rule.py +90 -0
  444. instana_client/models/time_frame.py +91 -0
  445. instana_client/models/time_window.py +120 -0
  446. instana_client/models/topology.py +106 -0
  447. instana_client/models/trace.py +109 -0
  448. instana_client/models/trace_activity_tree_node_details.py +139 -0
  449. instana_client/models/trace_download_result.py +111 -0
  450. instana_client/models/trace_groups_item.py +95 -0
  451. instana_client/models/trace_groups_result.py +111 -0
  452. instana_client/models/trace_impact_application_time_threshold.py +92 -0
  453. instana_client/models/trace_item.py +94 -0
  454. instana_client/models/trace_result.py +111 -0
  455. instana_client/models/traffic_blueprint_indicator.py +104 -0
  456. instana_client/models/trigger.py +99 -0
  457. instana_client/models/type_configuration.py +107 -0
  458. instana_client/models/unsupported_http_path_segment_matching_rule.py +90 -0
  459. instana_client/models/updated_business_perspective_config.py +97 -0
  460. instana_client/models/usage_result.py +98 -0
  461. instana_client/models/usage_result_items.py +90 -0
  462. instana_client/models/user_basic_result.py +92 -0
  463. instana_client/models/user_impact_mobile_app_time_threshold.py +103 -0
  464. instana_client/models/user_impact_website_time_threshold.py +103 -0
  465. instana_client/models/user_result.py +98 -0
  466. instana_client/models/users_result.py +106 -0
  467. instana_client/models/validated_alerting_channel_input_info.py +123 -0
  468. instana_client/models/validated_alerting_configuration.py +121 -0
  469. instana_client/models/validated_maintenance_config_v2_with_state_and_occurrence.py +135 -0
  470. instana_client/models/validated_maintenance_config_with_status.py +116 -0
  471. instana_client/models/victor_ops_integration.py +94 -0
  472. instana_client/models/violations_in_period_application_time_threshold.py +92 -0
  473. instana_client/models/violations_in_period_mobile_app_time_threshold.py +92 -0
  474. instana_client/models/violations_in_period_website_time_threshold.py +92 -0
  475. instana_client/models/violations_in_sequence_application_time_threshold.py +89 -0
  476. instana_client/models/violations_in_sequence_infra_time_threshold.py +89 -0
  477. instana_client/models/violations_in_sequence_log_time_threshold.py +89 -0
  478. instana_client/models/violations_in_sequence_mobile_app_time_threshold.py +89 -0
  479. instana_client/models/violations_in_sequence_synthetic_time_threshold.py +89 -0
  480. instana_client/models/violations_in_sequence_website_time_threshold.py +89 -0
  481. instana_client/models/watson_ai_ops_webhook_integration.py +94 -0
  482. instana_client/models/webex_teams_webhook_integration.py +92 -0
  483. instana_client/models/webhook_integration.py +94 -0
  484. instana_client/models/webpage_action_configuration.py +109 -0
  485. instana_client/models/webpage_script_configuration.py +109 -0
  486. instana_client/models/website.py +92 -0
  487. instana_client/models/website_alert_config.py +166 -0
  488. instana_client/models/website_alert_config_with_metadata.py +176 -0
  489. instana_client/models/website_alert_rule.py +132 -0
  490. instana_client/models/website_apdex_entity.py +107 -0
  491. instana_client/models/website_beacon_groups_item.py +95 -0
  492. instana_client/models/website_beacon_groups_result.py +111 -0
  493. instana_client/models/website_beacon_result.py +111 -0
  494. instana_client/models/website_beacon_tag_group.py +100 -0
  495. instana_client/models/website_beacons_item.py +94 -0
  496. instana_client/models/website_event_based_sli_entity.py +110 -0
  497. instana_client/models/website_event_result.py +108 -0
  498. instana_client/models/website_metric_result.py +88 -0
  499. instana_client/models/website_monitoring_beacon.py +301 -0
  500. instana_client/models/website_monitoring_metric_description.py +123 -0
  501. instana_client/models/website_monitoring_metrics_configuration.py +99 -0
  502. instana_client/models/website_slo_entity.py +104 -0
  503. instana_client/models/website_time_based_sli_entity.py +105 -0
  504. instana_client/models/website_time_threshold.py +115 -0
  505. instana_client/models/widget.py +103 -0
  506. instana_client/models/with_metadata.py +172 -0
  507. instana_client/models/with_resolved_name.py +102 -0
  508. instana_client/models/z_chat_ops_integration.py +97 -0
  509. instana_client/py.typed +0 -0
  510. instana_client/rest.py +258 -0
  511. instana_client-1.0.0.dist-info/METADATA +25 -0
  512. instana_client-1.0.0.dist-info/RECORD +515 -0
  513. instana_client-1.0.0.dist-info/WHEEL +5 -0
  514. instana_client-1.0.0.dist-info/licenses/LICENSE +202 -0
  515. instana_client-1.0.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,2404 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Instana REST API documentation
5
+
6
+ Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f). ## Overview The Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management. ### Navigating the API documentation The API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include: - Websites & Mobile Apps - Applications - Infrastructure - Synthetic Monitoring - Events - Automation - Service Levels - Settings - etc ### Rate Limiting A rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server. - **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour. - **X-RateLimit-Remaining:** How many calls may still be executed within the current hour. - **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00. ### Further Reading We provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana. ## Getting Started with the REST API ### API base URL The base URL for an specific instance of Instana can be determined using the tenant and unit information. - `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface. - `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself. ### Curl Example Here is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call. ```bash curl --request GET \\ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` Next we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example. ```bash curl --request POST \\ --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\ --header 'content-type: application/json' \\ --data '{ \"group\":{ \"groupbyTag\":\"endpoint.name\" }, \"tagFilters\":[ { \"name\":\"call.error.count\", \"value\":\"0\", \"operator\":\"GREATER_THAN\" } ], \"metrics\":[ { \"metric\":\"errors\", \"aggregation\":\"MEAN\" } ] }' ``` ### Generating REST API clients The API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format. You can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml). OpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made. To generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator). #### Go For example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit: ```bash #!/bin/bash ### This script assumes you have the `java` and `wget` commands on the path export UNIT_NAME='myunit' # for example: prod export TENANT_NAME='mytenant' # for example: awesomecompany //Download the generator to your current working directory: wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\" //generate a client library that you can vendor into your repository java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\ -o pkg/instana/openapi \\ --skip-validate-spec //(optional) format the Go code according to the Go code standard gofmt -s -w pkg/instana/openapi ``` The generated clients contain comprehensive READMEs, and you can start right away using the client from the example above: ```go import instana \"./pkg/instana/openapi\" // readTags will read all available application monitoring tags along with their type and category func readTags() { configuration := instana.NewConfiguration() configuration.Host = \"tenant-unit.instana.io\" configuration.BasePath = \"https://tenant-unit.instana.io\" client := instana.NewAPIClient(configuration) auth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{ Key: apiKey, Prefix: \"apiToken\", }) tags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth) if err != nil { fmt.Fatalf(\"Error calling the API, aborting.\") } for _, tag := range tags { fmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name) } } ``` #### Java Follow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar). Depending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification: ``` //Nativ Java HTTP Client java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native //Spring WebClient java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient //Spring RestTemplate java -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate ```
7
+
8
+ The version of the OpenAPI document: 1.291.1002
9
+ Contact: support@instana.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+ import warnings
16
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
17
+ from typing import Any, Dict, List, Optional, Tuple, Union
18
+ from typing_extensions import Annotated
19
+
20
+ from pydantic import Field, StrictStr
21
+ from typing import List, Optional
22
+ from typing_extensions import Annotated
23
+ from instana_client.models.edit_user import EditUser
24
+ from instana_client.models.invitation import Invitation
25
+ from instana_client.models.invitation_response import InvitationResponse
26
+ from instana_client.models.invitation_result import InvitationResult
27
+ from instana_client.models.user_result import UserResult
28
+ from instana_client.models.users_result import UsersResult
29
+
30
+ from instana_client.api_client import ApiClient, RequestSerialized
31
+ from instana_client.api_response import ApiResponse
32
+ from instana_client.rest import RESTResponseType
33
+
34
+
35
+ class UserApi:
36
+ """NOTE: This class is auto generated by OpenAPI Generator
37
+ Ref: https://openapi-generator.tech
38
+
39
+ Do not edit the class manually.
40
+ """
41
+
42
+ def __init__(self, api_client=None) -> None:
43
+ if api_client is None:
44
+ api_client = ApiClient.get_default()
45
+ self.api_client = api_client
46
+
47
+
48
+ @validate_call
49
+ def get_invitations(
50
+ self,
51
+ _request_timeout: Union[
52
+ None,
53
+ Annotated[StrictFloat, Field(gt=0)],
54
+ Tuple[
55
+ Annotated[StrictFloat, Field(gt=0)],
56
+ Annotated[StrictFloat, Field(gt=0)]
57
+ ]
58
+ ] = None,
59
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
60
+ _content_type: Optional[StrictStr] = None,
61
+ _headers: Optional[Dict[StrictStr, Any]] = None,
62
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
63
+ ) -> List[InvitationResult]:
64
+ """All pending invitations
65
+
66
+ This API endpoint retrieves the list of all pending invitations. During the IdP configuration all pending invitations will be dismissed and whilst an IdP is configured invitations are prevented.
67
+
68
+ :param _request_timeout: timeout setting for this request. If one
69
+ number provided, it will be total request
70
+ timeout. It can also be a pair (tuple) of
71
+ (connection, read) timeouts.
72
+ :type _request_timeout: int, tuple(int, int), optional
73
+ :param _request_auth: set to override the auth_settings for an a single
74
+ request; this effectively ignores the
75
+ authentication in the spec for a single request.
76
+ :type _request_auth: dict, optional
77
+ :param _content_type: force content-type for the request.
78
+ :type _content_type: str, Optional
79
+ :param _headers: set to override the headers for a single
80
+ request; this effectively ignores the headers
81
+ in the spec for a single request.
82
+ :type _headers: dict, optional
83
+ :param _host_index: set to override the host_index for a single
84
+ request; this effectively ignores the host_index
85
+ in the spec for a single request.
86
+ :type _host_index: int, optional
87
+ :return: Returns the result object.
88
+ """ # noqa: E501
89
+
90
+ _param = self._get_invitations_serialize(
91
+ _request_auth=_request_auth,
92
+ _content_type=_content_type,
93
+ _headers=_headers,
94
+ _host_index=_host_index
95
+ )
96
+
97
+ _response_types_map: Dict[str, Optional[str]] = {
98
+ '200': "List[InvitationResult]",
99
+ }
100
+ response_data = self.api_client.call_api(
101
+ *_param,
102
+ _request_timeout=_request_timeout
103
+ )
104
+ response_data.read()
105
+ return self.api_client.response_deserialize(
106
+ response_data=response_data,
107
+ response_types_map=_response_types_map,
108
+ ).data
109
+
110
+
111
+ @validate_call
112
+ def get_invitations_with_http_info(
113
+ self,
114
+ _request_timeout: Union[
115
+ None,
116
+ Annotated[StrictFloat, Field(gt=0)],
117
+ Tuple[
118
+ Annotated[StrictFloat, Field(gt=0)],
119
+ Annotated[StrictFloat, Field(gt=0)]
120
+ ]
121
+ ] = None,
122
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
123
+ _content_type: Optional[StrictStr] = None,
124
+ _headers: Optional[Dict[StrictStr, Any]] = None,
125
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
126
+ ) -> ApiResponse[List[InvitationResult]]:
127
+ """All pending invitations
128
+
129
+ This API endpoint retrieves the list of all pending invitations. During the IdP configuration all pending invitations will be dismissed and whilst an IdP is configured invitations are prevented.
130
+
131
+ :param _request_timeout: timeout setting for this request. If one
132
+ number provided, it will be total request
133
+ timeout. It can also be a pair (tuple) of
134
+ (connection, read) timeouts.
135
+ :type _request_timeout: int, tuple(int, int), optional
136
+ :param _request_auth: set to override the auth_settings for an a single
137
+ request; this effectively ignores the
138
+ authentication in the spec for a single request.
139
+ :type _request_auth: dict, optional
140
+ :param _content_type: force content-type for the request.
141
+ :type _content_type: str, Optional
142
+ :param _headers: set to override the headers for a single
143
+ request; this effectively ignores the headers
144
+ in the spec for a single request.
145
+ :type _headers: dict, optional
146
+ :param _host_index: set to override the host_index for a single
147
+ request; this effectively ignores the host_index
148
+ in the spec for a single request.
149
+ :type _host_index: int, optional
150
+ :return: Returns the result object.
151
+ """ # noqa: E501
152
+
153
+ _param = self._get_invitations_serialize(
154
+ _request_auth=_request_auth,
155
+ _content_type=_content_type,
156
+ _headers=_headers,
157
+ _host_index=_host_index
158
+ )
159
+
160
+ _response_types_map: Dict[str, Optional[str]] = {
161
+ '200': "List[InvitationResult]",
162
+ }
163
+ response_data = self.api_client.call_api(
164
+ *_param,
165
+ _request_timeout=_request_timeout
166
+ )
167
+ response_data.read()
168
+ return self.api_client.response_deserialize(
169
+ response_data=response_data,
170
+ response_types_map=_response_types_map,
171
+ )
172
+
173
+
174
+ @validate_call
175
+ def get_invitations_without_preload_content(
176
+ self,
177
+ _request_timeout: Union[
178
+ None,
179
+ Annotated[StrictFloat, Field(gt=0)],
180
+ Tuple[
181
+ Annotated[StrictFloat, Field(gt=0)],
182
+ Annotated[StrictFloat, Field(gt=0)]
183
+ ]
184
+ ] = None,
185
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
186
+ _content_type: Optional[StrictStr] = None,
187
+ _headers: Optional[Dict[StrictStr, Any]] = None,
188
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
189
+ ) -> RESTResponseType:
190
+ """All pending invitations
191
+
192
+ This API endpoint retrieves the list of all pending invitations. During the IdP configuration all pending invitations will be dismissed and whilst an IdP is configured invitations are prevented.
193
+
194
+ :param _request_timeout: timeout setting for this request. If one
195
+ number provided, it will be total request
196
+ timeout. It can also be a pair (tuple) of
197
+ (connection, read) timeouts.
198
+ :type _request_timeout: int, tuple(int, int), optional
199
+ :param _request_auth: set to override the auth_settings for an a single
200
+ request; this effectively ignores the
201
+ authentication in the spec for a single request.
202
+ :type _request_auth: dict, optional
203
+ :param _content_type: force content-type for the request.
204
+ :type _content_type: str, Optional
205
+ :param _headers: set to override the headers for a single
206
+ request; this effectively ignores the headers
207
+ in the spec for a single request.
208
+ :type _headers: dict, optional
209
+ :param _host_index: set to override the host_index for a single
210
+ request; this effectively ignores the host_index
211
+ in the spec for a single request.
212
+ :type _host_index: int, optional
213
+ :return: Returns the result object.
214
+ """ # noqa: E501
215
+
216
+ _param = self._get_invitations_serialize(
217
+ _request_auth=_request_auth,
218
+ _content_type=_content_type,
219
+ _headers=_headers,
220
+ _host_index=_host_index
221
+ )
222
+
223
+ _response_types_map: Dict[str, Optional[str]] = {
224
+ '200': "List[InvitationResult]",
225
+ }
226
+ response_data = self.api_client.call_api(
227
+ *_param,
228
+ _request_timeout=_request_timeout
229
+ )
230
+ return response_data.response
231
+
232
+
233
+ def _get_invitations_serialize(
234
+ self,
235
+ _request_auth,
236
+ _content_type,
237
+ _headers,
238
+ _host_index,
239
+ ) -> RequestSerialized:
240
+
241
+ _host = None
242
+
243
+ _collection_formats: Dict[str, str] = {
244
+ }
245
+
246
+ _path_params: Dict[str, str] = {}
247
+ _query_params: List[Tuple[str, str]] = []
248
+ _header_params: Dict[str, Optional[str]] = _headers or {}
249
+ _form_params: List[Tuple[str, str]] = []
250
+ _files: Dict[
251
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
252
+ ] = {}
253
+ _body_params: Optional[bytes] = None
254
+
255
+ # process the path parameters
256
+ # process the query parameters
257
+ # process the header parameters
258
+ # process the form parameters
259
+ # process the body parameter
260
+
261
+
262
+ # set the HTTP header `Accept`
263
+ if 'Accept' not in _header_params:
264
+ _header_params['Accept'] = self.api_client.select_header_accept(
265
+ [
266
+ 'application/json'
267
+ ]
268
+ )
269
+
270
+
271
+ # authentication setting
272
+ _auth_settings: List[str] = [
273
+ 'ApiKeyAuth'
274
+ ]
275
+
276
+ return self.api_client.param_serialize(
277
+ method='GET',
278
+ resource_path='/api/settings/invitations',
279
+ path_params=_path_params,
280
+ query_params=_query_params,
281
+ header_params=_header_params,
282
+ body=_body_params,
283
+ post_params=_form_params,
284
+ files=_files,
285
+ auth_settings=_auth_settings,
286
+ collection_formats=_collection_formats,
287
+ _host=_host,
288
+ _request_auth=_request_auth
289
+ )
290
+
291
+
292
+
293
+
294
+ @validate_call
295
+ def get_user_by_id(
296
+ self,
297
+ user_id: Annotated[StrictStr, Field(description="Id of the user for retrieval")],
298
+ _request_timeout: Union[
299
+ None,
300
+ Annotated[StrictFloat, Field(gt=0)],
301
+ Tuple[
302
+ Annotated[StrictFloat, Field(gt=0)],
303
+ Annotated[StrictFloat, Field(gt=0)]
304
+ ]
305
+ ] = None,
306
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
307
+ _content_type: Optional[StrictStr] = None,
308
+ _headers: Optional[Dict[StrictStr, Any]] = None,
309
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
310
+ ) -> List[UserResult]:
311
+ """Get single user
312
+
313
+ Retrieves the user with access to the tenant.
314
+
315
+ :param user_id: Id of the user for retrieval (required)
316
+ :type user_id: str
317
+ :param _request_timeout: timeout setting for this request. If one
318
+ number provided, it will be total request
319
+ timeout. It can also be a pair (tuple) of
320
+ (connection, read) timeouts.
321
+ :type _request_timeout: int, tuple(int, int), optional
322
+ :param _request_auth: set to override the auth_settings for an a single
323
+ request; this effectively ignores the
324
+ authentication in the spec for a single request.
325
+ :type _request_auth: dict, optional
326
+ :param _content_type: force content-type for the request.
327
+ :type _content_type: str, Optional
328
+ :param _headers: set to override the headers for a single
329
+ request; this effectively ignores the headers
330
+ in the spec for a single request.
331
+ :type _headers: dict, optional
332
+ :param _host_index: set to override the host_index for a single
333
+ request; this effectively ignores the host_index
334
+ in the spec for a single request.
335
+ :type _host_index: int, optional
336
+ :return: Returns the result object.
337
+ """ # noqa: E501
338
+
339
+ _param = self._get_user_by_id_serialize(
340
+ user_id=user_id,
341
+ _request_auth=_request_auth,
342
+ _content_type=_content_type,
343
+ _headers=_headers,
344
+ _host_index=_host_index
345
+ )
346
+
347
+ _response_types_map: Dict[str, Optional[str]] = {
348
+ '200': "List[UserResult]",
349
+ }
350
+ response_data = self.api_client.call_api(
351
+ *_param,
352
+ _request_timeout=_request_timeout
353
+ )
354
+ response_data.read()
355
+ return self.api_client.response_deserialize(
356
+ response_data=response_data,
357
+ response_types_map=_response_types_map,
358
+ ).data
359
+
360
+
361
+ @validate_call
362
+ def get_user_by_id_with_http_info(
363
+ self,
364
+ user_id: Annotated[StrictStr, Field(description="Id of the user for retrieval")],
365
+ _request_timeout: Union[
366
+ None,
367
+ Annotated[StrictFloat, Field(gt=0)],
368
+ Tuple[
369
+ Annotated[StrictFloat, Field(gt=0)],
370
+ Annotated[StrictFloat, Field(gt=0)]
371
+ ]
372
+ ] = None,
373
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
374
+ _content_type: Optional[StrictStr] = None,
375
+ _headers: Optional[Dict[StrictStr, Any]] = None,
376
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
377
+ ) -> ApiResponse[List[UserResult]]:
378
+ """Get single user
379
+
380
+ Retrieves the user with access to the tenant.
381
+
382
+ :param user_id: Id of the user for retrieval (required)
383
+ :type user_id: str
384
+ :param _request_timeout: timeout setting for this request. If one
385
+ number provided, it will be total request
386
+ timeout. It can also be a pair (tuple) of
387
+ (connection, read) timeouts.
388
+ :type _request_timeout: int, tuple(int, int), optional
389
+ :param _request_auth: set to override the auth_settings for an a single
390
+ request; this effectively ignores the
391
+ authentication in the spec for a single request.
392
+ :type _request_auth: dict, optional
393
+ :param _content_type: force content-type for the request.
394
+ :type _content_type: str, Optional
395
+ :param _headers: set to override the headers for a single
396
+ request; this effectively ignores the headers
397
+ in the spec for a single request.
398
+ :type _headers: dict, optional
399
+ :param _host_index: set to override the host_index for a single
400
+ request; this effectively ignores the host_index
401
+ in the spec for a single request.
402
+ :type _host_index: int, optional
403
+ :return: Returns the result object.
404
+ """ # noqa: E501
405
+
406
+ _param = self._get_user_by_id_serialize(
407
+ user_id=user_id,
408
+ _request_auth=_request_auth,
409
+ _content_type=_content_type,
410
+ _headers=_headers,
411
+ _host_index=_host_index
412
+ )
413
+
414
+ _response_types_map: Dict[str, Optional[str]] = {
415
+ '200': "List[UserResult]",
416
+ }
417
+ response_data = self.api_client.call_api(
418
+ *_param,
419
+ _request_timeout=_request_timeout
420
+ )
421
+ response_data.read()
422
+ return self.api_client.response_deserialize(
423
+ response_data=response_data,
424
+ response_types_map=_response_types_map,
425
+ )
426
+
427
+
428
+ @validate_call
429
+ def get_user_by_id_without_preload_content(
430
+ self,
431
+ user_id: Annotated[StrictStr, Field(description="Id of the user for retrieval")],
432
+ _request_timeout: Union[
433
+ None,
434
+ Annotated[StrictFloat, Field(gt=0)],
435
+ Tuple[
436
+ Annotated[StrictFloat, Field(gt=0)],
437
+ Annotated[StrictFloat, Field(gt=0)]
438
+ ]
439
+ ] = None,
440
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
441
+ _content_type: Optional[StrictStr] = None,
442
+ _headers: Optional[Dict[StrictStr, Any]] = None,
443
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
444
+ ) -> RESTResponseType:
445
+ """Get single user
446
+
447
+ Retrieves the user with access to the tenant.
448
+
449
+ :param user_id: Id of the user for retrieval (required)
450
+ :type user_id: str
451
+ :param _request_timeout: timeout setting for this request. If one
452
+ number provided, it will be total request
453
+ timeout. It can also be a pair (tuple) of
454
+ (connection, read) timeouts.
455
+ :type _request_timeout: int, tuple(int, int), optional
456
+ :param _request_auth: set to override the auth_settings for an a single
457
+ request; this effectively ignores the
458
+ authentication in the spec for a single request.
459
+ :type _request_auth: dict, optional
460
+ :param _content_type: force content-type for the request.
461
+ :type _content_type: str, Optional
462
+ :param _headers: set to override the headers for a single
463
+ request; this effectively ignores the headers
464
+ in the spec for a single request.
465
+ :type _headers: dict, optional
466
+ :param _host_index: set to override the host_index for a single
467
+ request; this effectively ignores the host_index
468
+ in the spec for a single request.
469
+ :type _host_index: int, optional
470
+ :return: Returns the result object.
471
+ """ # noqa: E501
472
+
473
+ _param = self._get_user_by_id_serialize(
474
+ user_id=user_id,
475
+ _request_auth=_request_auth,
476
+ _content_type=_content_type,
477
+ _headers=_headers,
478
+ _host_index=_host_index
479
+ )
480
+
481
+ _response_types_map: Dict[str, Optional[str]] = {
482
+ '200': "List[UserResult]",
483
+ }
484
+ response_data = self.api_client.call_api(
485
+ *_param,
486
+ _request_timeout=_request_timeout
487
+ )
488
+ return response_data.response
489
+
490
+
491
+ def _get_user_by_id_serialize(
492
+ self,
493
+ user_id,
494
+ _request_auth,
495
+ _content_type,
496
+ _headers,
497
+ _host_index,
498
+ ) -> RequestSerialized:
499
+
500
+ _host = None
501
+
502
+ _collection_formats: Dict[str, str] = {
503
+ }
504
+
505
+ _path_params: Dict[str, str] = {}
506
+ _query_params: List[Tuple[str, str]] = []
507
+ _header_params: Dict[str, Optional[str]] = _headers or {}
508
+ _form_params: List[Tuple[str, str]] = []
509
+ _files: Dict[
510
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
511
+ ] = {}
512
+ _body_params: Optional[bytes] = None
513
+
514
+ # process the path parameters
515
+ if user_id is not None:
516
+ _path_params['userId'] = user_id
517
+ # process the query parameters
518
+ # process the header parameters
519
+ # process the form parameters
520
+ # process the body parameter
521
+
522
+
523
+ # set the HTTP header `Accept`
524
+ if 'Accept' not in _header_params:
525
+ _header_params['Accept'] = self.api_client.select_header_accept(
526
+ [
527
+ 'application/json'
528
+ ]
529
+ )
530
+
531
+
532
+ # authentication setting
533
+ _auth_settings: List[str] = [
534
+ 'ApiKeyAuth'
535
+ ]
536
+
537
+ return self.api_client.param_serialize(
538
+ method='GET',
539
+ resource_path='/api/settings/users/{userId}',
540
+ path_params=_path_params,
541
+ query_params=_query_params,
542
+ header_params=_header_params,
543
+ body=_body_params,
544
+ post_params=_form_params,
545
+ files=_files,
546
+ auth_settings=_auth_settings,
547
+ collection_formats=_collection_formats,
548
+ _host=_host,
549
+ _request_auth=_request_auth
550
+ )
551
+
552
+
553
+
554
+
555
+ @validate_call
556
+ def get_users(
557
+ self,
558
+ _request_timeout: Union[
559
+ None,
560
+ Annotated[StrictFloat, Field(gt=0)],
561
+ Tuple[
562
+ Annotated[StrictFloat, Field(gt=0)],
563
+ Annotated[StrictFloat, Field(gt=0)]
564
+ ]
565
+ ] = None,
566
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
567
+ _content_type: Optional[StrictStr] = None,
568
+ _headers: Optional[Dict[StrictStr, Any]] = None,
569
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
570
+ ) -> List[UserResult]:
571
+ """All users (without invitations)
572
+
573
+ Retrieves all users with access to the tenant. The result will not contain pending invitations.
574
+
575
+ :param _request_timeout: timeout setting for this request. If one
576
+ number provided, it will be total request
577
+ timeout. It can also be a pair (tuple) of
578
+ (connection, read) timeouts.
579
+ :type _request_timeout: int, tuple(int, int), optional
580
+ :param _request_auth: set to override the auth_settings for an a single
581
+ request; this effectively ignores the
582
+ authentication in the spec for a single request.
583
+ :type _request_auth: dict, optional
584
+ :param _content_type: force content-type for the request.
585
+ :type _content_type: str, Optional
586
+ :param _headers: set to override the headers for a single
587
+ request; this effectively ignores the headers
588
+ in the spec for a single request.
589
+ :type _headers: dict, optional
590
+ :param _host_index: set to override the host_index for a single
591
+ request; this effectively ignores the host_index
592
+ in the spec for a single request.
593
+ :type _host_index: int, optional
594
+ :return: Returns the result object.
595
+ """ # noqa: E501
596
+
597
+ _param = self._get_users_serialize(
598
+ _request_auth=_request_auth,
599
+ _content_type=_content_type,
600
+ _headers=_headers,
601
+ _host_index=_host_index
602
+ )
603
+
604
+ _response_types_map: Dict[str, Optional[str]] = {
605
+ '200': "List[UserResult]",
606
+ }
607
+ response_data = self.api_client.call_api(
608
+ *_param,
609
+ _request_timeout=_request_timeout
610
+ )
611
+ response_data.read()
612
+ return self.api_client.response_deserialize(
613
+ response_data=response_data,
614
+ response_types_map=_response_types_map,
615
+ ).data
616
+
617
+
618
+ @validate_call
619
+ def get_users_with_http_info(
620
+ self,
621
+ _request_timeout: Union[
622
+ None,
623
+ Annotated[StrictFloat, Field(gt=0)],
624
+ Tuple[
625
+ Annotated[StrictFloat, Field(gt=0)],
626
+ Annotated[StrictFloat, Field(gt=0)]
627
+ ]
628
+ ] = None,
629
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
630
+ _content_type: Optional[StrictStr] = None,
631
+ _headers: Optional[Dict[StrictStr, Any]] = None,
632
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
633
+ ) -> ApiResponse[List[UserResult]]:
634
+ """All users (without invitations)
635
+
636
+ Retrieves all users with access to the tenant. The result will not contain pending invitations.
637
+
638
+ :param _request_timeout: timeout setting for this request. If one
639
+ number provided, it will be total request
640
+ timeout. It can also be a pair (tuple) of
641
+ (connection, read) timeouts.
642
+ :type _request_timeout: int, tuple(int, int), optional
643
+ :param _request_auth: set to override the auth_settings for an a single
644
+ request; this effectively ignores the
645
+ authentication in the spec for a single request.
646
+ :type _request_auth: dict, optional
647
+ :param _content_type: force content-type for the request.
648
+ :type _content_type: str, Optional
649
+ :param _headers: set to override the headers for a single
650
+ request; this effectively ignores the headers
651
+ in the spec for a single request.
652
+ :type _headers: dict, optional
653
+ :param _host_index: set to override the host_index for a single
654
+ request; this effectively ignores the host_index
655
+ in the spec for a single request.
656
+ :type _host_index: int, optional
657
+ :return: Returns the result object.
658
+ """ # noqa: E501
659
+
660
+ _param = self._get_users_serialize(
661
+ _request_auth=_request_auth,
662
+ _content_type=_content_type,
663
+ _headers=_headers,
664
+ _host_index=_host_index
665
+ )
666
+
667
+ _response_types_map: Dict[str, Optional[str]] = {
668
+ '200': "List[UserResult]",
669
+ }
670
+ response_data = self.api_client.call_api(
671
+ *_param,
672
+ _request_timeout=_request_timeout
673
+ )
674
+ response_data.read()
675
+ return self.api_client.response_deserialize(
676
+ response_data=response_data,
677
+ response_types_map=_response_types_map,
678
+ )
679
+
680
+
681
+ @validate_call
682
+ def get_users_without_preload_content(
683
+ self,
684
+ _request_timeout: Union[
685
+ None,
686
+ Annotated[StrictFloat, Field(gt=0)],
687
+ Tuple[
688
+ Annotated[StrictFloat, Field(gt=0)],
689
+ Annotated[StrictFloat, Field(gt=0)]
690
+ ]
691
+ ] = None,
692
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
693
+ _content_type: Optional[StrictStr] = None,
694
+ _headers: Optional[Dict[StrictStr, Any]] = None,
695
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
696
+ ) -> RESTResponseType:
697
+ """All users (without invitations)
698
+
699
+ Retrieves all users with access to the tenant. The result will not contain pending invitations.
700
+
701
+ :param _request_timeout: timeout setting for this request. If one
702
+ number provided, it will be total request
703
+ timeout. It can also be a pair (tuple) of
704
+ (connection, read) timeouts.
705
+ :type _request_timeout: int, tuple(int, int), optional
706
+ :param _request_auth: set to override the auth_settings for an a single
707
+ request; this effectively ignores the
708
+ authentication in the spec for a single request.
709
+ :type _request_auth: dict, optional
710
+ :param _content_type: force content-type for the request.
711
+ :type _content_type: str, Optional
712
+ :param _headers: set to override the headers for a single
713
+ request; this effectively ignores the headers
714
+ in the spec for a single request.
715
+ :type _headers: dict, optional
716
+ :param _host_index: set to override the host_index for a single
717
+ request; this effectively ignores the host_index
718
+ in the spec for a single request.
719
+ :type _host_index: int, optional
720
+ :return: Returns the result object.
721
+ """ # noqa: E501
722
+
723
+ _param = self._get_users_serialize(
724
+ _request_auth=_request_auth,
725
+ _content_type=_content_type,
726
+ _headers=_headers,
727
+ _host_index=_host_index
728
+ )
729
+
730
+ _response_types_map: Dict[str, Optional[str]] = {
731
+ '200': "List[UserResult]",
732
+ }
733
+ response_data = self.api_client.call_api(
734
+ *_param,
735
+ _request_timeout=_request_timeout
736
+ )
737
+ return response_data.response
738
+
739
+
740
+ def _get_users_serialize(
741
+ self,
742
+ _request_auth,
743
+ _content_type,
744
+ _headers,
745
+ _host_index,
746
+ ) -> RequestSerialized:
747
+
748
+ _host = None
749
+
750
+ _collection_formats: Dict[str, str] = {
751
+ }
752
+
753
+ _path_params: Dict[str, str] = {}
754
+ _query_params: List[Tuple[str, str]] = []
755
+ _header_params: Dict[str, Optional[str]] = _headers or {}
756
+ _form_params: List[Tuple[str, str]] = []
757
+ _files: Dict[
758
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
759
+ ] = {}
760
+ _body_params: Optional[bytes] = None
761
+
762
+ # process the path parameters
763
+ # process the query parameters
764
+ # process the header parameters
765
+ # process the form parameters
766
+ # process the body parameter
767
+
768
+
769
+ # set the HTTP header `Accept`
770
+ if 'Accept' not in _header_params:
771
+ _header_params['Accept'] = self.api_client.select_header_accept(
772
+ [
773
+ 'application/json'
774
+ ]
775
+ )
776
+
777
+
778
+ # authentication setting
779
+ _auth_settings: List[str] = [
780
+ 'ApiKeyAuth'
781
+ ]
782
+
783
+ return self.api_client.param_serialize(
784
+ method='GET',
785
+ resource_path='/api/settings/users',
786
+ path_params=_path_params,
787
+ query_params=_query_params,
788
+ header_params=_header_params,
789
+ body=_body_params,
790
+ post_params=_form_params,
791
+ files=_files,
792
+ auth_settings=_auth_settings,
793
+ collection_formats=_collection_formats,
794
+ _host=_host,
795
+ _request_auth=_request_auth
796
+ )
797
+
798
+
799
+
800
+
801
+ @validate_call
802
+ def get_users_including_invitations(
803
+ self,
804
+ _request_timeout: Union[
805
+ None,
806
+ Annotated[StrictFloat, Field(gt=0)],
807
+ Tuple[
808
+ Annotated[StrictFloat, Field(gt=0)],
809
+ Annotated[StrictFloat, Field(gt=0)]
810
+ ]
811
+ ] = None,
812
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
813
+ _content_type: Optional[StrictStr] = None,
814
+ _headers: Optional[Dict[StrictStr, Any]] = None,
815
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
816
+ ) -> UsersResult:
817
+ """All users (incl. invitations)
818
+
819
+ Retrieves all users with access to the tenant. The result will also contain pending invitations.
820
+
821
+ :param _request_timeout: timeout setting for this request. If one
822
+ number provided, it will be total request
823
+ timeout. It can also be a pair (tuple) of
824
+ (connection, read) timeouts.
825
+ :type _request_timeout: int, tuple(int, int), optional
826
+ :param _request_auth: set to override the auth_settings for an a single
827
+ request; this effectively ignores the
828
+ authentication in the spec for a single request.
829
+ :type _request_auth: dict, optional
830
+ :param _content_type: force content-type for the request.
831
+ :type _content_type: str, Optional
832
+ :param _headers: set to override the headers for a single
833
+ request; this effectively ignores the headers
834
+ in the spec for a single request.
835
+ :type _headers: dict, optional
836
+ :param _host_index: set to override the host_index for a single
837
+ request; this effectively ignores the host_index
838
+ in the spec for a single request.
839
+ :type _host_index: int, optional
840
+ :return: Returns the result object.
841
+ """ # noqa: E501
842
+
843
+ _param = self._get_users_including_invitations_serialize(
844
+ _request_auth=_request_auth,
845
+ _content_type=_content_type,
846
+ _headers=_headers,
847
+ _host_index=_host_index
848
+ )
849
+
850
+ _response_types_map: Dict[str, Optional[str]] = {
851
+ '200': "UsersResult",
852
+ }
853
+ response_data = self.api_client.call_api(
854
+ *_param,
855
+ _request_timeout=_request_timeout
856
+ )
857
+ response_data.read()
858
+ return self.api_client.response_deserialize(
859
+ response_data=response_data,
860
+ response_types_map=_response_types_map,
861
+ ).data
862
+
863
+
864
+ @validate_call
865
+ def get_users_including_invitations_with_http_info(
866
+ self,
867
+ _request_timeout: Union[
868
+ None,
869
+ Annotated[StrictFloat, Field(gt=0)],
870
+ Tuple[
871
+ Annotated[StrictFloat, Field(gt=0)],
872
+ Annotated[StrictFloat, Field(gt=0)]
873
+ ]
874
+ ] = None,
875
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
876
+ _content_type: Optional[StrictStr] = None,
877
+ _headers: Optional[Dict[StrictStr, Any]] = None,
878
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
879
+ ) -> ApiResponse[UsersResult]:
880
+ """All users (incl. invitations)
881
+
882
+ Retrieves all users with access to the tenant. The result will also contain pending invitations.
883
+
884
+ :param _request_timeout: timeout setting for this request. If one
885
+ number provided, it will be total request
886
+ timeout. It can also be a pair (tuple) of
887
+ (connection, read) timeouts.
888
+ :type _request_timeout: int, tuple(int, int), optional
889
+ :param _request_auth: set to override the auth_settings for an a single
890
+ request; this effectively ignores the
891
+ authentication in the spec for a single request.
892
+ :type _request_auth: dict, optional
893
+ :param _content_type: force content-type for the request.
894
+ :type _content_type: str, Optional
895
+ :param _headers: set to override the headers for a single
896
+ request; this effectively ignores the headers
897
+ in the spec for a single request.
898
+ :type _headers: dict, optional
899
+ :param _host_index: set to override the host_index for a single
900
+ request; this effectively ignores the host_index
901
+ in the spec for a single request.
902
+ :type _host_index: int, optional
903
+ :return: Returns the result object.
904
+ """ # noqa: E501
905
+
906
+ _param = self._get_users_including_invitations_serialize(
907
+ _request_auth=_request_auth,
908
+ _content_type=_content_type,
909
+ _headers=_headers,
910
+ _host_index=_host_index
911
+ )
912
+
913
+ _response_types_map: Dict[str, Optional[str]] = {
914
+ '200': "UsersResult",
915
+ }
916
+ response_data = self.api_client.call_api(
917
+ *_param,
918
+ _request_timeout=_request_timeout
919
+ )
920
+ response_data.read()
921
+ return self.api_client.response_deserialize(
922
+ response_data=response_data,
923
+ response_types_map=_response_types_map,
924
+ )
925
+
926
+
927
+ @validate_call
928
+ def get_users_including_invitations_without_preload_content(
929
+ self,
930
+ _request_timeout: Union[
931
+ None,
932
+ Annotated[StrictFloat, Field(gt=0)],
933
+ Tuple[
934
+ Annotated[StrictFloat, Field(gt=0)],
935
+ Annotated[StrictFloat, Field(gt=0)]
936
+ ]
937
+ ] = None,
938
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
939
+ _content_type: Optional[StrictStr] = None,
940
+ _headers: Optional[Dict[StrictStr, Any]] = None,
941
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
942
+ ) -> RESTResponseType:
943
+ """All users (incl. invitations)
944
+
945
+ Retrieves all users with access to the tenant. The result will also contain pending invitations.
946
+
947
+ :param _request_timeout: timeout setting for this request. If one
948
+ number provided, it will be total request
949
+ timeout. It can also be a pair (tuple) of
950
+ (connection, read) timeouts.
951
+ :type _request_timeout: int, tuple(int, int), optional
952
+ :param _request_auth: set to override the auth_settings for an a single
953
+ request; this effectively ignores the
954
+ authentication in the spec for a single request.
955
+ :type _request_auth: dict, optional
956
+ :param _content_type: force content-type for the request.
957
+ :type _content_type: str, Optional
958
+ :param _headers: set to override the headers for a single
959
+ request; this effectively ignores the headers
960
+ in the spec for a single request.
961
+ :type _headers: dict, optional
962
+ :param _host_index: set to override the host_index for a single
963
+ request; this effectively ignores the host_index
964
+ in the spec for a single request.
965
+ :type _host_index: int, optional
966
+ :return: Returns the result object.
967
+ """ # noqa: E501
968
+
969
+ _param = self._get_users_including_invitations_serialize(
970
+ _request_auth=_request_auth,
971
+ _content_type=_content_type,
972
+ _headers=_headers,
973
+ _host_index=_host_index
974
+ )
975
+
976
+ _response_types_map: Dict[str, Optional[str]] = {
977
+ '200': "UsersResult",
978
+ }
979
+ response_data = self.api_client.call_api(
980
+ *_param,
981
+ _request_timeout=_request_timeout
982
+ )
983
+ return response_data.response
984
+
985
+
986
+ def _get_users_including_invitations_serialize(
987
+ self,
988
+ _request_auth,
989
+ _content_type,
990
+ _headers,
991
+ _host_index,
992
+ ) -> RequestSerialized:
993
+
994
+ _host = None
995
+
996
+ _collection_formats: Dict[str, str] = {
997
+ }
998
+
999
+ _path_params: Dict[str, str] = {}
1000
+ _query_params: List[Tuple[str, str]] = []
1001
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1002
+ _form_params: List[Tuple[str, str]] = []
1003
+ _files: Dict[
1004
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1005
+ ] = {}
1006
+ _body_params: Optional[bytes] = None
1007
+
1008
+ # process the path parameters
1009
+ # process the query parameters
1010
+ # process the header parameters
1011
+ # process the form parameters
1012
+ # process the body parameter
1013
+
1014
+
1015
+ # set the HTTP header `Accept`
1016
+ if 'Accept' not in _header_params:
1017
+ _header_params['Accept'] = self.api_client.select_header_accept(
1018
+ [
1019
+ 'application/json'
1020
+ ]
1021
+ )
1022
+
1023
+
1024
+ # authentication setting
1025
+ _auth_settings: List[str] = [
1026
+ 'ApiKeyAuth'
1027
+ ]
1028
+
1029
+ return self.api_client.param_serialize(
1030
+ method='GET',
1031
+ resource_path='/api/settings/users/overview',
1032
+ path_params=_path_params,
1033
+ query_params=_query_params,
1034
+ header_params=_header_params,
1035
+ body=_body_params,
1036
+ post_params=_form_params,
1037
+ files=_files,
1038
+ auth_settings=_auth_settings,
1039
+ collection_formats=_collection_formats,
1040
+ _host=_host,
1041
+ _request_auth=_request_auth
1042
+ )
1043
+
1044
+
1045
+
1046
+
1047
+ @validate_call
1048
+ def invite_users(
1049
+ self,
1050
+ invitation: List[Invitation],
1051
+ _request_timeout: Union[
1052
+ None,
1053
+ Annotated[StrictFloat, Field(gt=0)],
1054
+ Tuple[
1055
+ Annotated[StrictFloat, Field(gt=0)],
1056
+ Annotated[StrictFloat, Field(gt=0)]
1057
+ ]
1058
+ ] = None,
1059
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1060
+ _content_type: Optional[StrictStr] = None,
1061
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1062
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1063
+ ) -> List[InvitationResponse]:
1064
+ """Send user invitations
1065
+
1066
+ This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result.
1067
+
1068
+ :param invitation: (required)
1069
+ :type invitation: List[Invitation]
1070
+ :param _request_timeout: timeout setting for this request. If one
1071
+ number provided, it will be total request
1072
+ timeout. It can also be a pair (tuple) of
1073
+ (connection, read) timeouts.
1074
+ :type _request_timeout: int, tuple(int, int), optional
1075
+ :param _request_auth: set to override the auth_settings for an a single
1076
+ request; this effectively ignores the
1077
+ authentication in the spec for a single request.
1078
+ :type _request_auth: dict, optional
1079
+ :param _content_type: force content-type for the request.
1080
+ :type _content_type: str, Optional
1081
+ :param _headers: set to override the headers for a single
1082
+ request; this effectively ignores the headers
1083
+ in the spec for a single request.
1084
+ :type _headers: dict, optional
1085
+ :param _host_index: set to override the host_index for a single
1086
+ request; this effectively ignores the host_index
1087
+ in the spec for a single request.
1088
+ :type _host_index: int, optional
1089
+ :return: Returns the result object.
1090
+ """ # noqa: E501
1091
+
1092
+ _param = self._invite_users_serialize(
1093
+ invitation=invitation,
1094
+ _request_auth=_request_auth,
1095
+ _content_type=_content_type,
1096
+ _headers=_headers,
1097
+ _host_index=_host_index
1098
+ )
1099
+
1100
+ _response_types_map: Dict[str, Optional[str]] = {
1101
+ '200': "List[InvitationResponse]",
1102
+ '400': "str",
1103
+ }
1104
+ response_data = self.api_client.call_api(
1105
+ *_param,
1106
+ _request_timeout=_request_timeout
1107
+ )
1108
+ response_data.read()
1109
+ return self.api_client.response_deserialize(
1110
+ response_data=response_data,
1111
+ response_types_map=_response_types_map,
1112
+ ).data
1113
+
1114
+
1115
+ @validate_call
1116
+ def invite_users_with_http_info(
1117
+ self,
1118
+ invitation: List[Invitation],
1119
+ _request_timeout: Union[
1120
+ None,
1121
+ Annotated[StrictFloat, Field(gt=0)],
1122
+ Tuple[
1123
+ Annotated[StrictFloat, Field(gt=0)],
1124
+ Annotated[StrictFloat, Field(gt=0)]
1125
+ ]
1126
+ ] = None,
1127
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1128
+ _content_type: Optional[StrictStr] = None,
1129
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1130
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1131
+ ) -> ApiResponse[List[InvitationResponse]]:
1132
+ """Send user invitations
1133
+
1134
+ This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result.
1135
+
1136
+ :param invitation: (required)
1137
+ :type invitation: List[Invitation]
1138
+ :param _request_timeout: timeout setting for this request. If one
1139
+ number provided, it will be total request
1140
+ timeout. It can also be a pair (tuple) of
1141
+ (connection, read) timeouts.
1142
+ :type _request_timeout: int, tuple(int, int), optional
1143
+ :param _request_auth: set to override the auth_settings for an a single
1144
+ request; this effectively ignores the
1145
+ authentication in the spec for a single request.
1146
+ :type _request_auth: dict, optional
1147
+ :param _content_type: force content-type for the request.
1148
+ :type _content_type: str, Optional
1149
+ :param _headers: set to override the headers for a single
1150
+ request; this effectively ignores the headers
1151
+ in the spec for a single request.
1152
+ :type _headers: dict, optional
1153
+ :param _host_index: set to override the host_index for a single
1154
+ request; this effectively ignores the host_index
1155
+ in the spec for a single request.
1156
+ :type _host_index: int, optional
1157
+ :return: Returns the result object.
1158
+ """ # noqa: E501
1159
+
1160
+ _param = self._invite_users_serialize(
1161
+ invitation=invitation,
1162
+ _request_auth=_request_auth,
1163
+ _content_type=_content_type,
1164
+ _headers=_headers,
1165
+ _host_index=_host_index
1166
+ )
1167
+
1168
+ _response_types_map: Dict[str, Optional[str]] = {
1169
+ '200': "List[InvitationResponse]",
1170
+ '400': "str",
1171
+ }
1172
+ response_data = self.api_client.call_api(
1173
+ *_param,
1174
+ _request_timeout=_request_timeout
1175
+ )
1176
+ response_data.read()
1177
+ return self.api_client.response_deserialize(
1178
+ response_data=response_data,
1179
+ response_types_map=_response_types_map,
1180
+ )
1181
+
1182
+
1183
+ @validate_call
1184
+ def invite_users_without_preload_content(
1185
+ self,
1186
+ invitation: List[Invitation],
1187
+ _request_timeout: Union[
1188
+ None,
1189
+ Annotated[StrictFloat, Field(gt=0)],
1190
+ Tuple[
1191
+ Annotated[StrictFloat, Field(gt=0)],
1192
+ Annotated[StrictFloat, Field(gt=0)]
1193
+ ]
1194
+ ] = None,
1195
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1196
+ _content_type: Optional[StrictStr] = None,
1197
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1198
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1199
+ ) -> RESTResponseType:
1200
+ """Send user invitations
1201
+
1202
+ This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result.
1203
+
1204
+ :param invitation: (required)
1205
+ :type invitation: List[Invitation]
1206
+ :param _request_timeout: timeout setting for this request. If one
1207
+ number provided, it will be total request
1208
+ timeout. It can also be a pair (tuple) of
1209
+ (connection, read) timeouts.
1210
+ :type _request_timeout: int, tuple(int, int), optional
1211
+ :param _request_auth: set to override the auth_settings for an a single
1212
+ request; this effectively ignores the
1213
+ authentication in the spec for a single request.
1214
+ :type _request_auth: dict, optional
1215
+ :param _content_type: force content-type for the request.
1216
+ :type _content_type: str, Optional
1217
+ :param _headers: set to override the headers for a single
1218
+ request; this effectively ignores the headers
1219
+ in the spec for a single request.
1220
+ :type _headers: dict, optional
1221
+ :param _host_index: set to override the host_index for a single
1222
+ request; this effectively ignores the host_index
1223
+ in the spec for a single request.
1224
+ :type _host_index: int, optional
1225
+ :return: Returns the result object.
1226
+ """ # noqa: E501
1227
+
1228
+ _param = self._invite_users_serialize(
1229
+ invitation=invitation,
1230
+ _request_auth=_request_auth,
1231
+ _content_type=_content_type,
1232
+ _headers=_headers,
1233
+ _host_index=_host_index
1234
+ )
1235
+
1236
+ _response_types_map: Dict[str, Optional[str]] = {
1237
+ '200': "List[InvitationResponse]",
1238
+ '400': "str",
1239
+ }
1240
+ response_data = self.api_client.call_api(
1241
+ *_param,
1242
+ _request_timeout=_request_timeout
1243
+ )
1244
+ return response_data.response
1245
+
1246
+
1247
+ def _invite_users_serialize(
1248
+ self,
1249
+ invitation,
1250
+ _request_auth,
1251
+ _content_type,
1252
+ _headers,
1253
+ _host_index,
1254
+ ) -> RequestSerialized:
1255
+
1256
+ _host = None
1257
+
1258
+ _collection_formats: Dict[str, str] = {
1259
+ 'Invitation': '',
1260
+ }
1261
+
1262
+ _path_params: Dict[str, str] = {}
1263
+ _query_params: List[Tuple[str, str]] = []
1264
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1265
+ _form_params: List[Tuple[str, str]] = []
1266
+ _files: Dict[
1267
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1268
+ ] = {}
1269
+ _body_params: Optional[bytes] = None
1270
+
1271
+ # process the path parameters
1272
+ # process the query parameters
1273
+ # process the header parameters
1274
+ # process the form parameters
1275
+ # process the body parameter
1276
+ if invitation is not None:
1277
+ _body_params = invitation
1278
+
1279
+
1280
+ # set the HTTP header `Accept`
1281
+ if 'Accept' not in _header_params:
1282
+ _header_params['Accept'] = self.api_client.select_header_accept(
1283
+ [
1284
+ 'application/json'
1285
+ ]
1286
+ )
1287
+
1288
+ # set the HTTP header `Content-Type`
1289
+ if _content_type:
1290
+ _header_params['Content-Type'] = _content_type
1291
+ else:
1292
+ _default_content_type = (
1293
+ self.api_client.select_header_content_type(
1294
+ [
1295
+ 'application/json'
1296
+ ]
1297
+ )
1298
+ )
1299
+ if _default_content_type is not None:
1300
+ _header_params['Content-Type'] = _default_content_type
1301
+
1302
+ # authentication setting
1303
+ _auth_settings: List[str] = [
1304
+ 'ApiKeyAuth'
1305
+ ]
1306
+
1307
+ return self.api_client.param_serialize(
1308
+ method='POST',
1309
+ resource_path='/api/settings/invitations',
1310
+ path_params=_path_params,
1311
+ query_params=_query_params,
1312
+ header_params=_header_params,
1313
+ body=_body_params,
1314
+ post_params=_form_params,
1315
+ files=_files,
1316
+ auth_settings=_auth_settings,
1317
+ collection_formats=_collection_formats,
1318
+ _host=_host,
1319
+ _request_auth=_request_auth
1320
+ )
1321
+
1322
+
1323
+
1324
+
1325
+ @validate_call
1326
+ def remove_user_from_tenant(
1327
+ self,
1328
+ user_id: Annotated[StrictStr, Field(description="Id of the user for removal")],
1329
+ _request_timeout: Union[
1330
+ None,
1331
+ Annotated[StrictFloat, Field(gt=0)],
1332
+ Tuple[
1333
+ Annotated[StrictFloat, Field(gt=0)],
1334
+ Annotated[StrictFloat, Field(gt=0)]
1335
+ ]
1336
+ ] = None,
1337
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1338
+ _content_type: Optional[StrictStr] = None,
1339
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1340
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1341
+ ) -> None:
1342
+ """Remove user from tenant
1343
+
1344
+ Remove the users access to the tenant. Removing a user from a tenant does not delete their user account.
1345
+
1346
+ :param user_id: Id of the user for removal (required)
1347
+ :type user_id: str
1348
+ :param _request_timeout: timeout setting for this request. If one
1349
+ number provided, it will be total request
1350
+ timeout. It can also be a pair (tuple) of
1351
+ (connection, read) timeouts.
1352
+ :type _request_timeout: int, tuple(int, int), optional
1353
+ :param _request_auth: set to override the auth_settings for an a single
1354
+ request; this effectively ignores the
1355
+ authentication in the spec for a single request.
1356
+ :type _request_auth: dict, optional
1357
+ :param _content_type: force content-type for the request.
1358
+ :type _content_type: str, Optional
1359
+ :param _headers: set to override the headers for a single
1360
+ request; this effectively ignores the headers
1361
+ in the spec for a single request.
1362
+ :type _headers: dict, optional
1363
+ :param _host_index: set to override the host_index for a single
1364
+ request; this effectively ignores the host_index
1365
+ in the spec for a single request.
1366
+ :type _host_index: int, optional
1367
+ :return: Returns the result object.
1368
+ """ # noqa: E501
1369
+
1370
+ _param = self._remove_user_from_tenant_serialize(
1371
+ user_id=user_id,
1372
+ _request_auth=_request_auth,
1373
+ _content_type=_content_type,
1374
+ _headers=_headers,
1375
+ _host_index=_host_index
1376
+ )
1377
+
1378
+ _response_types_map: Dict[str, Optional[str]] = {
1379
+ }
1380
+ response_data = self.api_client.call_api(
1381
+ *_param,
1382
+ _request_timeout=_request_timeout
1383
+ )
1384
+ response_data.read()
1385
+ return self.api_client.response_deserialize(
1386
+ response_data=response_data,
1387
+ response_types_map=_response_types_map,
1388
+ ).data
1389
+
1390
+
1391
+ @validate_call
1392
+ def remove_user_from_tenant_with_http_info(
1393
+ self,
1394
+ user_id: Annotated[StrictStr, Field(description="Id of the user for removal")],
1395
+ _request_timeout: Union[
1396
+ None,
1397
+ Annotated[StrictFloat, Field(gt=0)],
1398
+ Tuple[
1399
+ Annotated[StrictFloat, Field(gt=0)],
1400
+ Annotated[StrictFloat, Field(gt=0)]
1401
+ ]
1402
+ ] = None,
1403
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1404
+ _content_type: Optional[StrictStr] = None,
1405
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1406
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1407
+ ) -> ApiResponse[None]:
1408
+ """Remove user from tenant
1409
+
1410
+ Remove the users access to the tenant. Removing a user from a tenant does not delete their user account.
1411
+
1412
+ :param user_id: Id of the user for removal (required)
1413
+ :type user_id: str
1414
+ :param _request_timeout: timeout setting for this request. If one
1415
+ number provided, it will be total request
1416
+ timeout. It can also be a pair (tuple) of
1417
+ (connection, read) timeouts.
1418
+ :type _request_timeout: int, tuple(int, int), optional
1419
+ :param _request_auth: set to override the auth_settings for an a single
1420
+ request; this effectively ignores the
1421
+ authentication in the spec for a single request.
1422
+ :type _request_auth: dict, optional
1423
+ :param _content_type: force content-type for the request.
1424
+ :type _content_type: str, Optional
1425
+ :param _headers: set to override the headers for a single
1426
+ request; this effectively ignores the headers
1427
+ in the spec for a single request.
1428
+ :type _headers: dict, optional
1429
+ :param _host_index: set to override the host_index for a single
1430
+ request; this effectively ignores the host_index
1431
+ in the spec for a single request.
1432
+ :type _host_index: int, optional
1433
+ :return: Returns the result object.
1434
+ """ # noqa: E501
1435
+
1436
+ _param = self._remove_user_from_tenant_serialize(
1437
+ user_id=user_id,
1438
+ _request_auth=_request_auth,
1439
+ _content_type=_content_type,
1440
+ _headers=_headers,
1441
+ _host_index=_host_index
1442
+ )
1443
+
1444
+ _response_types_map: Dict[str, Optional[str]] = {
1445
+ }
1446
+ response_data = self.api_client.call_api(
1447
+ *_param,
1448
+ _request_timeout=_request_timeout
1449
+ )
1450
+ response_data.read()
1451
+ return self.api_client.response_deserialize(
1452
+ response_data=response_data,
1453
+ response_types_map=_response_types_map,
1454
+ )
1455
+
1456
+
1457
+ @validate_call
1458
+ def remove_user_from_tenant_without_preload_content(
1459
+ self,
1460
+ user_id: Annotated[StrictStr, Field(description="Id of the user for removal")],
1461
+ _request_timeout: Union[
1462
+ None,
1463
+ Annotated[StrictFloat, Field(gt=0)],
1464
+ Tuple[
1465
+ Annotated[StrictFloat, Field(gt=0)],
1466
+ Annotated[StrictFloat, Field(gt=0)]
1467
+ ]
1468
+ ] = None,
1469
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1470
+ _content_type: Optional[StrictStr] = None,
1471
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1472
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1473
+ ) -> RESTResponseType:
1474
+ """Remove user from tenant
1475
+
1476
+ Remove the users access to the tenant. Removing a user from a tenant does not delete their user account.
1477
+
1478
+ :param user_id: Id of the user for removal (required)
1479
+ :type user_id: str
1480
+ :param _request_timeout: timeout setting for this request. If one
1481
+ number provided, it will be total request
1482
+ timeout. It can also be a pair (tuple) of
1483
+ (connection, read) timeouts.
1484
+ :type _request_timeout: int, tuple(int, int), optional
1485
+ :param _request_auth: set to override the auth_settings for an a single
1486
+ request; this effectively ignores the
1487
+ authentication in the spec for a single request.
1488
+ :type _request_auth: dict, optional
1489
+ :param _content_type: force content-type for the request.
1490
+ :type _content_type: str, Optional
1491
+ :param _headers: set to override the headers for a single
1492
+ request; this effectively ignores the headers
1493
+ in the spec for a single request.
1494
+ :type _headers: dict, optional
1495
+ :param _host_index: set to override the host_index for a single
1496
+ request; this effectively ignores the host_index
1497
+ in the spec for a single request.
1498
+ :type _host_index: int, optional
1499
+ :return: Returns the result object.
1500
+ """ # noqa: E501
1501
+
1502
+ _param = self._remove_user_from_tenant_serialize(
1503
+ user_id=user_id,
1504
+ _request_auth=_request_auth,
1505
+ _content_type=_content_type,
1506
+ _headers=_headers,
1507
+ _host_index=_host_index
1508
+ )
1509
+
1510
+ _response_types_map: Dict[str, Optional[str]] = {
1511
+ }
1512
+ response_data = self.api_client.call_api(
1513
+ *_param,
1514
+ _request_timeout=_request_timeout
1515
+ )
1516
+ return response_data.response
1517
+
1518
+
1519
+ def _remove_user_from_tenant_serialize(
1520
+ self,
1521
+ user_id,
1522
+ _request_auth,
1523
+ _content_type,
1524
+ _headers,
1525
+ _host_index,
1526
+ ) -> RequestSerialized:
1527
+
1528
+ _host = None
1529
+
1530
+ _collection_formats: Dict[str, str] = {
1531
+ }
1532
+
1533
+ _path_params: Dict[str, str] = {}
1534
+ _query_params: List[Tuple[str, str]] = []
1535
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1536
+ _form_params: List[Tuple[str, str]] = []
1537
+ _files: Dict[
1538
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1539
+ ] = {}
1540
+ _body_params: Optional[bytes] = None
1541
+
1542
+ # process the path parameters
1543
+ if user_id is not None:
1544
+ _path_params['userId'] = user_id
1545
+ # process the query parameters
1546
+ # process the header parameters
1547
+ # process the form parameters
1548
+ # process the body parameter
1549
+
1550
+
1551
+ # set the HTTP header `Accept`
1552
+ if 'Accept' not in _header_params:
1553
+ _header_params['Accept'] = self.api_client.select_header_accept(
1554
+ [
1555
+ 'application/json'
1556
+ ]
1557
+ )
1558
+
1559
+
1560
+ # authentication setting
1561
+ _auth_settings: List[str] = [
1562
+ 'ApiKeyAuth'
1563
+ ]
1564
+
1565
+ return self.api_client.param_serialize(
1566
+ method='DELETE',
1567
+ resource_path='/api/settings/users/{userId}',
1568
+ path_params=_path_params,
1569
+ query_params=_query_params,
1570
+ header_params=_header_params,
1571
+ body=_body_params,
1572
+ post_params=_form_params,
1573
+ files=_files,
1574
+ auth_settings=_auth_settings,
1575
+ collection_formats=_collection_formats,
1576
+ _host=_host,
1577
+ _request_auth=_request_auth
1578
+ )
1579
+
1580
+
1581
+
1582
+
1583
+ @validate_call
1584
+ def revoke_pending_invitation(
1585
+ self,
1586
+ email: Annotated[StrictStr, Field(description="Email of the invite for removal")],
1587
+ _request_timeout: Union[
1588
+ None,
1589
+ Annotated[StrictFloat, Field(gt=0)],
1590
+ Tuple[
1591
+ Annotated[StrictFloat, Field(gt=0)],
1592
+ Annotated[StrictFloat, Field(gt=0)]
1593
+ ]
1594
+ ] = None,
1595
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1596
+ _content_type: Optional[StrictStr] = None,
1597
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1598
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1599
+ ) -> None:
1600
+ """Revoke pending invitation
1601
+
1602
+ This API endpoint allows to delete an invitation, requires the users’ email as a Query parameter.
1603
+
1604
+ :param email: Email of the invite for removal (required)
1605
+ :type email: str
1606
+ :param _request_timeout: timeout setting for this request. If one
1607
+ number provided, it will be total request
1608
+ timeout. It can also be a pair (tuple) of
1609
+ (connection, read) timeouts.
1610
+ :type _request_timeout: int, tuple(int, int), optional
1611
+ :param _request_auth: set to override the auth_settings for an a single
1612
+ request; this effectively ignores the
1613
+ authentication in the spec for a single request.
1614
+ :type _request_auth: dict, optional
1615
+ :param _content_type: force content-type for the request.
1616
+ :type _content_type: str, Optional
1617
+ :param _headers: set to override the headers for a single
1618
+ request; this effectively ignores the headers
1619
+ in the spec for a single request.
1620
+ :type _headers: dict, optional
1621
+ :param _host_index: set to override the host_index for a single
1622
+ request; this effectively ignores the host_index
1623
+ in the spec for a single request.
1624
+ :type _host_index: int, optional
1625
+ :return: Returns the result object.
1626
+ """ # noqa: E501
1627
+
1628
+ _param = self._revoke_pending_invitation_serialize(
1629
+ email=email,
1630
+ _request_auth=_request_auth,
1631
+ _content_type=_content_type,
1632
+ _headers=_headers,
1633
+ _host_index=_host_index
1634
+ )
1635
+
1636
+ _response_types_map: Dict[str, Optional[str]] = {
1637
+ }
1638
+ response_data = self.api_client.call_api(
1639
+ *_param,
1640
+ _request_timeout=_request_timeout
1641
+ )
1642
+ response_data.read()
1643
+ return self.api_client.response_deserialize(
1644
+ response_data=response_data,
1645
+ response_types_map=_response_types_map,
1646
+ ).data
1647
+
1648
+
1649
+ @validate_call
1650
+ def revoke_pending_invitation_with_http_info(
1651
+ self,
1652
+ email: Annotated[StrictStr, Field(description="Email of the invite for removal")],
1653
+ _request_timeout: Union[
1654
+ None,
1655
+ Annotated[StrictFloat, Field(gt=0)],
1656
+ Tuple[
1657
+ Annotated[StrictFloat, Field(gt=0)],
1658
+ Annotated[StrictFloat, Field(gt=0)]
1659
+ ]
1660
+ ] = None,
1661
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1662
+ _content_type: Optional[StrictStr] = None,
1663
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1664
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1665
+ ) -> ApiResponse[None]:
1666
+ """Revoke pending invitation
1667
+
1668
+ This API endpoint allows to delete an invitation, requires the users’ email as a Query parameter.
1669
+
1670
+ :param email: Email of the invite for removal (required)
1671
+ :type email: str
1672
+ :param _request_timeout: timeout setting for this request. If one
1673
+ number provided, it will be total request
1674
+ timeout. It can also be a pair (tuple) of
1675
+ (connection, read) timeouts.
1676
+ :type _request_timeout: int, tuple(int, int), optional
1677
+ :param _request_auth: set to override the auth_settings for an a single
1678
+ request; this effectively ignores the
1679
+ authentication in the spec for a single request.
1680
+ :type _request_auth: dict, optional
1681
+ :param _content_type: force content-type for the request.
1682
+ :type _content_type: str, Optional
1683
+ :param _headers: set to override the headers for a single
1684
+ request; this effectively ignores the headers
1685
+ in the spec for a single request.
1686
+ :type _headers: dict, optional
1687
+ :param _host_index: set to override the host_index for a single
1688
+ request; this effectively ignores the host_index
1689
+ in the spec for a single request.
1690
+ :type _host_index: int, optional
1691
+ :return: Returns the result object.
1692
+ """ # noqa: E501
1693
+
1694
+ _param = self._revoke_pending_invitation_serialize(
1695
+ email=email,
1696
+ _request_auth=_request_auth,
1697
+ _content_type=_content_type,
1698
+ _headers=_headers,
1699
+ _host_index=_host_index
1700
+ )
1701
+
1702
+ _response_types_map: Dict[str, Optional[str]] = {
1703
+ }
1704
+ response_data = self.api_client.call_api(
1705
+ *_param,
1706
+ _request_timeout=_request_timeout
1707
+ )
1708
+ response_data.read()
1709
+ return self.api_client.response_deserialize(
1710
+ response_data=response_data,
1711
+ response_types_map=_response_types_map,
1712
+ )
1713
+
1714
+
1715
+ @validate_call
1716
+ def revoke_pending_invitation_without_preload_content(
1717
+ self,
1718
+ email: Annotated[StrictStr, Field(description="Email of the invite for removal")],
1719
+ _request_timeout: Union[
1720
+ None,
1721
+ Annotated[StrictFloat, Field(gt=0)],
1722
+ Tuple[
1723
+ Annotated[StrictFloat, Field(gt=0)],
1724
+ Annotated[StrictFloat, Field(gt=0)]
1725
+ ]
1726
+ ] = None,
1727
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1728
+ _content_type: Optional[StrictStr] = None,
1729
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1730
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1731
+ ) -> RESTResponseType:
1732
+ """Revoke pending invitation
1733
+
1734
+ This API endpoint allows to delete an invitation, requires the users’ email as a Query parameter.
1735
+
1736
+ :param email: Email of the invite for removal (required)
1737
+ :type email: str
1738
+ :param _request_timeout: timeout setting for this request. If one
1739
+ number provided, it will be total request
1740
+ timeout. It can also be a pair (tuple) of
1741
+ (connection, read) timeouts.
1742
+ :type _request_timeout: int, tuple(int, int), optional
1743
+ :param _request_auth: set to override the auth_settings for an a single
1744
+ request; this effectively ignores the
1745
+ authentication in the spec for a single request.
1746
+ :type _request_auth: dict, optional
1747
+ :param _content_type: force content-type for the request.
1748
+ :type _content_type: str, Optional
1749
+ :param _headers: set to override the headers for a single
1750
+ request; this effectively ignores the headers
1751
+ in the spec for a single request.
1752
+ :type _headers: dict, optional
1753
+ :param _host_index: set to override the host_index for a single
1754
+ request; this effectively ignores the host_index
1755
+ in the spec for a single request.
1756
+ :type _host_index: int, optional
1757
+ :return: Returns the result object.
1758
+ """ # noqa: E501
1759
+
1760
+ _param = self._revoke_pending_invitation_serialize(
1761
+ email=email,
1762
+ _request_auth=_request_auth,
1763
+ _content_type=_content_type,
1764
+ _headers=_headers,
1765
+ _host_index=_host_index
1766
+ )
1767
+
1768
+ _response_types_map: Dict[str, Optional[str]] = {
1769
+ }
1770
+ response_data = self.api_client.call_api(
1771
+ *_param,
1772
+ _request_timeout=_request_timeout
1773
+ )
1774
+ return response_data.response
1775
+
1776
+
1777
+ def _revoke_pending_invitation_serialize(
1778
+ self,
1779
+ email,
1780
+ _request_auth,
1781
+ _content_type,
1782
+ _headers,
1783
+ _host_index,
1784
+ ) -> RequestSerialized:
1785
+
1786
+ _host = None
1787
+
1788
+ _collection_formats: Dict[str, str] = {
1789
+ }
1790
+
1791
+ _path_params: Dict[str, str] = {}
1792
+ _query_params: List[Tuple[str, str]] = []
1793
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1794
+ _form_params: List[Tuple[str, str]] = []
1795
+ _files: Dict[
1796
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1797
+ ] = {}
1798
+ _body_params: Optional[bytes] = None
1799
+
1800
+ # process the path parameters
1801
+ # process the query parameters
1802
+ if email is not None:
1803
+
1804
+ _query_params.append(('email', email))
1805
+
1806
+ # process the header parameters
1807
+ # process the form parameters
1808
+ # process the body parameter
1809
+
1810
+
1811
+ # set the HTTP header `Accept`
1812
+ if 'Accept' not in _header_params:
1813
+ _header_params['Accept'] = self.api_client.select_header_accept(
1814
+ [
1815
+ 'application/json'
1816
+ ]
1817
+ )
1818
+
1819
+
1820
+ # authentication setting
1821
+ _auth_settings: List[str] = [
1822
+ 'ApiKeyAuth'
1823
+ ]
1824
+
1825
+ return self.api_client.param_serialize(
1826
+ method='DELETE',
1827
+ resource_path='/api/settings/invitations',
1828
+ path_params=_path_params,
1829
+ query_params=_query_params,
1830
+ header_params=_header_params,
1831
+ body=_body_params,
1832
+ post_params=_form_params,
1833
+ files=_files,
1834
+ auth_settings=_auth_settings,
1835
+ collection_formats=_collection_formats,
1836
+ _host=_host,
1837
+ _request_auth=_request_auth
1838
+ )
1839
+
1840
+
1841
+
1842
+
1843
+ @validate_call
1844
+ def share_and_invite_users(
1845
+ self,
1846
+ invitation: List[Invitation],
1847
+ _request_timeout: Union[
1848
+ None,
1849
+ Annotated[StrictFloat, Field(gt=0)],
1850
+ Tuple[
1851
+ Annotated[StrictFloat, Field(gt=0)],
1852
+ Annotated[StrictFloat, Field(gt=0)]
1853
+ ]
1854
+ ] = None,
1855
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1856
+ _content_type: Optional[StrictStr] = None,
1857
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1858
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1859
+ ) -> List[InvitationResponse]:
1860
+ """Send user invitations
1861
+
1862
+ This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result.
1863
+
1864
+ :param invitation: (required)
1865
+ :type invitation: List[Invitation]
1866
+ :param _request_timeout: timeout setting for this request. If one
1867
+ number provided, it will be total request
1868
+ timeout. It can also be a pair (tuple) of
1869
+ (connection, read) timeouts.
1870
+ :type _request_timeout: int, tuple(int, int), optional
1871
+ :param _request_auth: set to override the auth_settings for an a single
1872
+ request; this effectively ignores the
1873
+ authentication in the spec for a single request.
1874
+ :type _request_auth: dict, optional
1875
+ :param _content_type: force content-type for the request.
1876
+ :type _content_type: str, Optional
1877
+ :param _headers: set to override the headers for a single
1878
+ request; this effectively ignores the headers
1879
+ in the spec for a single request.
1880
+ :type _headers: dict, optional
1881
+ :param _host_index: set to override the host_index for a single
1882
+ request; this effectively ignores the host_index
1883
+ in the spec for a single request.
1884
+ :type _host_index: int, optional
1885
+ :return: Returns the result object.
1886
+ """ # noqa: E501
1887
+
1888
+ _param = self._share_and_invite_users_serialize(
1889
+ invitation=invitation,
1890
+ _request_auth=_request_auth,
1891
+ _content_type=_content_type,
1892
+ _headers=_headers,
1893
+ _host_index=_host_index
1894
+ )
1895
+
1896
+ _response_types_map: Dict[str, Optional[str]] = {
1897
+ '200': "List[InvitationResponse]",
1898
+ '400': "str",
1899
+ }
1900
+ response_data = self.api_client.call_api(
1901
+ *_param,
1902
+ _request_timeout=_request_timeout
1903
+ )
1904
+ response_data.read()
1905
+ return self.api_client.response_deserialize(
1906
+ response_data=response_data,
1907
+ response_types_map=_response_types_map,
1908
+ ).data
1909
+
1910
+
1911
+ @validate_call
1912
+ def share_and_invite_users_with_http_info(
1913
+ self,
1914
+ invitation: List[Invitation],
1915
+ _request_timeout: Union[
1916
+ None,
1917
+ Annotated[StrictFloat, Field(gt=0)],
1918
+ Tuple[
1919
+ Annotated[StrictFloat, Field(gt=0)],
1920
+ Annotated[StrictFloat, Field(gt=0)]
1921
+ ]
1922
+ ] = None,
1923
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1924
+ _content_type: Optional[StrictStr] = None,
1925
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1926
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1927
+ ) -> ApiResponse[List[InvitationResponse]]:
1928
+ """Send user invitations
1929
+
1930
+ This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result.
1931
+
1932
+ :param invitation: (required)
1933
+ :type invitation: List[Invitation]
1934
+ :param _request_timeout: timeout setting for this request. If one
1935
+ number provided, it will be total request
1936
+ timeout. It can also be a pair (tuple) of
1937
+ (connection, read) timeouts.
1938
+ :type _request_timeout: int, tuple(int, int), optional
1939
+ :param _request_auth: set to override the auth_settings for an a single
1940
+ request; this effectively ignores the
1941
+ authentication in the spec for a single request.
1942
+ :type _request_auth: dict, optional
1943
+ :param _content_type: force content-type for the request.
1944
+ :type _content_type: str, Optional
1945
+ :param _headers: set to override the headers for a single
1946
+ request; this effectively ignores the headers
1947
+ in the spec for a single request.
1948
+ :type _headers: dict, optional
1949
+ :param _host_index: set to override the host_index for a single
1950
+ request; this effectively ignores the host_index
1951
+ in the spec for a single request.
1952
+ :type _host_index: int, optional
1953
+ :return: Returns the result object.
1954
+ """ # noqa: E501
1955
+
1956
+ _param = self._share_and_invite_users_serialize(
1957
+ invitation=invitation,
1958
+ _request_auth=_request_auth,
1959
+ _content_type=_content_type,
1960
+ _headers=_headers,
1961
+ _host_index=_host_index
1962
+ )
1963
+
1964
+ _response_types_map: Dict[str, Optional[str]] = {
1965
+ '200': "List[InvitationResponse]",
1966
+ '400': "str",
1967
+ }
1968
+ response_data = self.api_client.call_api(
1969
+ *_param,
1970
+ _request_timeout=_request_timeout
1971
+ )
1972
+ response_data.read()
1973
+ return self.api_client.response_deserialize(
1974
+ response_data=response_data,
1975
+ response_types_map=_response_types_map,
1976
+ )
1977
+
1978
+
1979
+ @validate_call
1980
+ def share_and_invite_users_without_preload_content(
1981
+ self,
1982
+ invitation: List[Invitation],
1983
+ _request_timeout: Union[
1984
+ None,
1985
+ Annotated[StrictFloat, Field(gt=0)],
1986
+ Tuple[
1987
+ Annotated[StrictFloat, Field(gt=0)],
1988
+ Annotated[StrictFloat, Field(gt=0)]
1989
+ ]
1990
+ ] = None,
1991
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1992
+ _content_type: Optional[StrictStr] = None,
1993
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1994
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1995
+ ) -> RESTResponseType:
1996
+ """Send user invitations
1997
+
1998
+ This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result.
1999
+
2000
+ :param invitation: (required)
2001
+ :type invitation: List[Invitation]
2002
+ :param _request_timeout: timeout setting for this request. If one
2003
+ number provided, it will be total request
2004
+ timeout. It can also be a pair (tuple) of
2005
+ (connection, read) timeouts.
2006
+ :type _request_timeout: int, tuple(int, int), optional
2007
+ :param _request_auth: set to override the auth_settings for an a single
2008
+ request; this effectively ignores the
2009
+ authentication in the spec for a single request.
2010
+ :type _request_auth: dict, optional
2011
+ :param _content_type: force content-type for the request.
2012
+ :type _content_type: str, Optional
2013
+ :param _headers: set to override the headers for a single
2014
+ request; this effectively ignores the headers
2015
+ in the spec for a single request.
2016
+ :type _headers: dict, optional
2017
+ :param _host_index: set to override the host_index for a single
2018
+ request; this effectively ignores the host_index
2019
+ in the spec for a single request.
2020
+ :type _host_index: int, optional
2021
+ :return: Returns the result object.
2022
+ """ # noqa: E501
2023
+
2024
+ _param = self._share_and_invite_users_serialize(
2025
+ invitation=invitation,
2026
+ _request_auth=_request_auth,
2027
+ _content_type=_content_type,
2028
+ _headers=_headers,
2029
+ _host_index=_host_index
2030
+ )
2031
+
2032
+ _response_types_map: Dict[str, Optional[str]] = {
2033
+ '200': "List[InvitationResponse]",
2034
+ '400': "str",
2035
+ }
2036
+ response_data = self.api_client.call_api(
2037
+ *_param,
2038
+ _request_timeout=_request_timeout
2039
+ )
2040
+ return response_data.response
2041
+
2042
+
2043
+ def _share_and_invite_users_serialize(
2044
+ self,
2045
+ invitation,
2046
+ _request_auth,
2047
+ _content_type,
2048
+ _headers,
2049
+ _host_index,
2050
+ ) -> RequestSerialized:
2051
+
2052
+ _host = None
2053
+
2054
+ _collection_formats: Dict[str, str] = {
2055
+ 'Invitation': '',
2056
+ }
2057
+
2058
+ _path_params: Dict[str, str] = {}
2059
+ _query_params: List[Tuple[str, str]] = []
2060
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2061
+ _form_params: List[Tuple[str, str]] = []
2062
+ _files: Dict[
2063
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2064
+ ] = {}
2065
+ _body_params: Optional[bytes] = None
2066
+
2067
+ # process the path parameters
2068
+ # process the query parameters
2069
+ # process the header parameters
2070
+ # process the form parameters
2071
+ # process the body parameter
2072
+ if invitation is not None:
2073
+ _body_params = invitation
2074
+
2075
+
2076
+ # set the HTTP header `Accept`
2077
+ if 'Accept' not in _header_params:
2078
+ _header_params['Accept'] = self.api_client.select_header_accept(
2079
+ [
2080
+ 'application/json'
2081
+ ]
2082
+ )
2083
+
2084
+ # set the HTTP header `Content-Type`
2085
+ if _content_type:
2086
+ _header_params['Content-Type'] = _content_type
2087
+ else:
2088
+ _default_content_type = (
2089
+ self.api_client.select_header_content_type(
2090
+ [
2091
+ 'application/json'
2092
+ ]
2093
+ )
2094
+ )
2095
+ if _default_content_type is not None:
2096
+ _header_params['Content-Type'] = _default_content_type
2097
+
2098
+ # authentication setting
2099
+ _auth_settings: List[str] = [
2100
+ 'ApiKeyAuth'
2101
+ ]
2102
+
2103
+ return self.api_client.param_serialize(
2104
+ method='POST',
2105
+ resource_path='/api/settings/invitation/share',
2106
+ path_params=_path_params,
2107
+ query_params=_query_params,
2108
+ header_params=_header_params,
2109
+ body=_body_params,
2110
+ post_params=_form_params,
2111
+ files=_files,
2112
+ auth_settings=_auth_settings,
2113
+ collection_formats=_collection_formats,
2114
+ _host=_host,
2115
+ _request_auth=_request_auth
2116
+ )
2117
+
2118
+
2119
+
2120
+
2121
+ @validate_call
2122
+ def update_user(
2123
+ self,
2124
+ email: StrictStr,
2125
+ edit_user: Optional[EditUser] = None,
2126
+ _request_timeout: Union[
2127
+ None,
2128
+ Annotated[StrictFloat, Field(gt=0)],
2129
+ Tuple[
2130
+ Annotated[StrictFloat, Field(gt=0)],
2131
+ Annotated[StrictFloat, Field(gt=0)]
2132
+ ]
2133
+ ] = None,
2134
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2135
+ _content_type: Optional[StrictStr] = None,
2136
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2137
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2138
+ ) -> None:
2139
+ """Change user name of single user
2140
+
2141
+ Updates the full name of the user.
2142
+
2143
+ :param email: (required)
2144
+ :type email: str
2145
+ :param edit_user:
2146
+ :type edit_user: EditUser
2147
+ :param _request_timeout: timeout setting for this request. If one
2148
+ number provided, it will be total request
2149
+ timeout. It can also be a pair (tuple) of
2150
+ (connection, read) timeouts.
2151
+ :type _request_timeout: int, tuple(int, int), optional
2152
+ :param _request_auth: set to override the auth_settings for an a single
2153
+ request; this effectively ignores the
2154
+ authentication in the spec for a single request.
2155
+ :type _request_auth: dict, optional
2156
+ :param _content_type: force content-type for the request.
2157
+ :type _content_type: str, Optional
2158
+ :param _headers: set to override the headers for a single
2159
+ request; this effectively ignores the headers
2160
+ in the spec for a single request.
2161
+ :type _headers: dict, optional
2162
+ :param _host_index: set to override the host_index for a single
2163
+ request; this effectively ignores the host_index
2164
+ in the spec for a single request.
2165
+ :type _host_index: int, optional
2166
+ :return: Returns the result object.
2167
+ """ # noqa: E501
2168
+
2169
+ _param = self._update_user_serialize(
2170
+ email=email,
2171
+ edit_user=edit_user,
2172
+ _request_auth=_request_auth,
2173
+ _content_type=_content_type,
2174
+ _headers=_headers,
2175
+ _host_index=_host_index
2176
+ )
2177
+
2178
+ _response_types_map: Dict[str, Optional[str]] = {
2179
+ }
2180
+ response_data = self.api_client.call_api(
2181
+ *_param,
2182
+ _request_timeout=_request_timeout
2183
+ )
2184
+ response_data.read()
2185
+ return self.api_client.response_deserialize(
2186
+ response_data=response_data,
2187
+ response_types_map=_response_types_map,
2188
+ ).data
2189
+
2190
+
2191
+ @validate_call
2192
+ def update_user_with_http_info(
2193
+ self,
2194
+ email: StrictStr,
2195
+ edit_user: Optional[EditUser] = None,
2196
+ _request_timeout: Union[
2197
+ None,
2198
+ Annotated[StrictFloat, Field(gt=0)],
2199
+ Tuple[
2200
+ Annotated[StrictFloat, Field(gt=0)],
2201
+ Annotated[StrictFloat, Field(gt=0)]
2202
+ ]
2203
+ ] = None,
2204
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2205
+ _content_type: Optional[StrictStr] = None,
2206
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2207
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2208
+ ) -> ApiResponse[None]:
2209
+ """Change user name of single user
2210
+
2211
+ Updates the full name of the user.
2212
+
2213
+ :param email: (required)
2214
+ :type email: str
2215
+ :param edit_user:
2216
+ :type edit_user: EditUser
2217
+ :param _request_timeout: timeout setting for this request. If one
2218
+ number provided, it will be total request
2219
+ timeout. It can also be a pair (tuple) of
2220
+ (connection, read) timeouts.
2221
+ :type _request_timeout: int, tuple(int, int), optional
2222
+ :param _request_auth: set to override the auth_settings for an a single
2223
+ request; this effectively ignores the
2224
+ authentication in the spec for a single request.
2225
+ :type _request_auth: dict, optional
2226
+ :param _content_type: force content-type for the request.
2227
+ :type _content_type: str, Optional
2228
+ :param _headers: set to override the headers for a single
2229
+ request; this effectively ignores the headers
2230
+ in the spec for a single request.
2231
+ :type _headers: dict, optional
2232
+ :param _host_index: set to override the host_index for a single
2233
+ request; this effectively ignores the host_index
2234
+ in the spec for a single request.
2235
+ :type _host_index: int, optional
2236
+ :return: Returns the result object.
2237
+ """ # noqa: E501
2238
+
2239
+ _param = self._update_user_serialize(
2240
+ email=email,
2241
+ edit_user=edit_user,
2242
+ _request_auth=_request_auth,
2243
+ _content_type=_content_type,
2244
+ _headers=_headers,
2245
+ _host_index=_host_index
2246
+ )
2247
+
2248
+ _response_types_map: Dict[str, Optional[str]] = {
2249
+ }
2250
+ response_data = self.api_client.call_api(
2251
+ *_param,
2252
+ _request_timeout=_request_timeout
2253
+ )
2254
+ response_data.read()
2255
+ return self.api_client.response_deserialize(
2256
+ response_data=response_data,
2257
+ response_types_map=_response_types_map,
2258
+ )
2259
+
2260
+
2261
+ @validate_call
2262
+ def update_user_without_preload_content(
2263
+ self,
2264
+ email: StrictStr,
2265
+ edit_user: Optional[EditUser] = None,
2266
+ _request_timeout: Union[
2267
+ None,
2268
+ Annotated[StrictFloat, Field(gt=0)],
2269
+ Tuple[
2270
+ Annotated[StrictFloat, Field(gt=0)],
2271
+ Annotated[StrictFloat, Field(gt=0)]
2272
+ ]
2273
+ ] = None,
2274
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2275
+ _content_type: Optional[StrictStr] = None,
2276
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2277
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2278
+ ) -> RESTResponseType:
2279
+ """Change user name of single user
2280
+
2281
+ Updates the full name of the user.
2282
+
2283
+ :param email: (required)
2284
+ :type email: str
2285
+ :param edit_user:
2286
+ :type edit_user: EditUser
2287
+ :param _request_timeout: timeout setting for this request. If one
2288
+ number provided, it will be total request
2289
+ timeout. It can also be a pair (tuple) of
2290
+ (connection, read) timeouts.
2291
+ :type _request_timeout: int, tuple(int, int), optional
2292
+ :param _request_auth: set to override the auth_settings for an a single
2293
+ request; this effectively ignores the
2294
+ authentication in the spec for a single request.
2295
+ :type _request_auth: dict, optional
2296
+ :param _content_type: force content-type for the request.
2297
+ :type _content_type: str, Optional
2298
+ :param _headers: set to override the headers for a single
2299
+ request; this effectively ignores the headers
2300
+ in the spec for a single request.
2301
+ :type _headers: dict, optional
2302
+ :param _host_index: set to override the host_index for a single
2303
+ request; this effectively ignores the host_index
2304
+ in the spec for a single request.
2305
+ :type _host_index: int, optional
2306
+ :return: Returns the result object.
2307
+ """ # noqa: E501
2308
+
2309
+ _param = self._update_user_serialize(
2310
+ email=email,
2311
+ edit_user=edit_user,
2312
+ _request_auth=_request_auth,
2313
+ _content_type=_content_type,
2314
+ _headers=_headers,
2315
+ _host_index=_host_index
2316
+ )
2317
+
2318
+ _response_types_map: Dict[str, Optional[str]] = {
2319
+ }
2320
+ response_data = self.api_client.call_api(
2321
+ *_param,
2322
+ _request_timeout=_request_timeout
2323
+ )
2324
+ return response_data.response
2325
+
2326
+
2327
+ def _update_user_serialize(
2328
+ self,
2329
+ email,
2330
+ edit_user,
2331
+ _request_auth,
2332
+ _content_type,
2333
+ _headers,
2334
+ _host_index,
2335
+ ) -> RequestSerialized:
2336
+
2337
+ _host = None
2338
+
2339
+ _collection_formats: Dict[str, str] = {
2340
+ }
2341
+
2342
+ _path_params: Dict[str, str] = {}
2343
+ _query_params: List[Tuple[str, str]] = []
2344
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2345
+ _form_params: List[Tuple[str, str]] = []
2346
+ _files: Dict[
2347
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2348
+ ] = {}
2349
+ _body_params: Optional[bytes] = None
2350
+
2351
+ # process the path parameters
2352
+ if email is not None:
2353
+ _path_params['email'] = email
2354
+ # process the query parameters
2355
+ # process the header parameters
2356
+ # process the form parameters
2357
+ # process the body parameter
2358
+ if edit_user is not None:
2359
+ _body_params = edit_user
2360
+
2361
+
2362
+ # set the HTTP header `Accept`
2363
+ if 'Accept' not in _header_params:
2364
+ _header_params['Accept'] = self.api_client.select_header_accept(
2365
+ [
2366
+ 'application/json'
2367
+ ]
2368
+ )
2369
+
2370
+ # set the HTTP header `Content-Type`
2371
+ if _content_type:
2372
+ _header_params['Content-Type'] = _content_type
2373
+ else:
2374
+ _default_content_type = (
2375
+ self.api_client.select_header_content_type(
2376
+ [
2377
+ 'application/json'
2378
+ ]
2379
+ )
2380
+ )
2381
+ if _default_content_type is not None:
2382
+ _header_params['Content-Type'] = _default_content_type
2383
+
2384
+ # authentication setting
2385
+ _auth_settings: List[str] = [
2386
+ 'ApiKeyAuth'
2387
+ ]
2388
+
2389
+ return self.api_client.param_serialize(
2390
+ method='PUT',
2391
+ resource_path='/api/settings/users/{email}',
2392
+ path_params=_path_params,
2393
+ query_params=_query_params,
2394
+ header_params=_header_params,
2395
+ body=_body_params,
2396
+ post_params=_form_params,
2397
+ files=_files,
2398
+ auth_settings=_auth_settings,
2399
+ collection_formats=_collection_formats,
2400
+ _host=_host,
2401
+ _request_auth=_request_auth
2402
+ )
2403
+
2404
+