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,2683 @@
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
22
+ from typing_extensions import Annotated
23
+ from instana_client.models.maintenance_config import MaintenanceConfig
24
+ from instana_client.models.maintenance_config_v2 import MaintenanceConfigV2
25
+ from instana_client.models.maintenance_config_v2_with_state_and_occurrence import MaintenanceConfigV2WithStateAndOccurrence
26
+ from instana_client.models.maintenance_config_with_last_updated import MaintenanceConfigWithLastUpdated
27
+ from instana_client.models.validated_maintenance_config_v2_with_state_and_occurrence import ValidatedMaintenanceConfigV2WithStateAndOccurrence
28
+ from instana_client.models.validated_maintenance_config_with_status import ValidatedMaintenanceConfigWithStatus
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 MaintenanceConfigurationApi:
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 delete_maintenance_config(
50
+ self,
51
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to delete.")],
52
+ _request_timeout: Union[
53
+ None,
54
+ Annotated[StrictFloat, Field(gt=0)],
55
+ Tuple[
56
+ Annotated[StrictFloat, Field(gt=0)],
57
+ Annotated[StrictFloat, Field(gt=0)]
58
+ ]
59
+ ] = None,
60
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
61
+ _content_type: Optional[StrictStr] = None,
62
+ _headers: Optional[Dict[StrictStr, Any]] = None,
63
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
64
+ ) -> None:
65
+ """(Deprecated) Delete maintenance configuration
66
+
67
+
68
+ :param id: ID of the Maintenance Window Configuration to delete. (required)
69
+ :type id: str
70
+ :param _request_timeout: timeout setting for this request. If one
71
+ number provided, it will be total request
72
+ timeout. It can also be a pair (tuple) of
73
+ (connection, read) timeouts.
74
+ :type _request_timeout: int, tuple(int, int), optional
75
+ :param _request_auth: set to override the auth_settings for an a single
76
+ request; this effectively ignores the
77
+ authentication in the spec for a single request.
78
+ :type _request_auth: dict, optional
79
+ :param _content_type: force content-type for the request.
80
+ :type _content_type: str, Optional
81
+ :param _headers: set to override the headers for a single
82
+ request; this effectively ignores the headers
83
+ in the spec for a single request.
84
+ :type _headers: dict, optional
85
+ :param _host_index: set to override the host_index for a single
86
+ request; this effectively ignores the host_index
87
+ in the spec for a single request.
88
+ :type _host_index: int, optional
89
+ :return: Returns the result object.
90
+ """ # noqa: E501
91
+ warnings.warn("DELETE /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
92
+
93
+ _param = self._delete_maintenance_config_serialize(
94
+ id=id,
95
+ _request_auth=_request_auth,
96
+ _content_type=_content_type,
97
+ _headers=_headers,
98
+ _host_index=_host_index
99
+ )
100
+
101
+ _response_types_map: Dict[str, Optional[str]] = {
102
+ }
103
+ response_data = self.api_client.call_api(
104
+ *_param,
105
+ _request_timeout=_request_timeout
106
+ )
107
+ response_data.read()
108
+ return self.api_client.response_deserialize(
109
+ response_data=response_data,
110
+ response_types_map=_response_types_map,
111
+ ).data
112
+
113
+
114
+ @validate_call
115
+ def delete_maintenance_config_with_http_info(
116
+ self,
117
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to delete.")],
118
+ _request_timeout: Union[
119
+ None,
120
+ Annotated[StrictFloat, Field(gt=0)],
121
+ Tuple[
122
+ Annotated[StrictFloat, Field(gt=0)],
123
+ Annotated[StrictFloat, Field(gt=0)]
124
+ ]
125
+ ] = None,
126
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
127
+ _content_type: Optional[StrictStr] = None,
128
+ _headers: Optional[Dict[StrictStr, Any]] = None,
129
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
130
+ ) -> ApiResponse[None]:
131
+ """(Deprecated) Delete maintenance configuration
132
+
133
+
134
+ :param id: ID of the Maintenance Window Configuration to delete. (required)
135
+ :type id: str
136
+ :param _request_timeout: timeout setting for this request. If one
137
+ number provided, it will be total request
138
+ timeout. It can also be a pair (tuple) of
139
+ (connection, read) timeouts.
140
+ :type _request_timeout: int, tuple(int, int), optional
141
+ :param _request_auth: set to override the auth_settings for an a single
142
+ request; this effectively ignores the
143
+ authentication in the spec for a single request.
144
+ :type _request_auth: dict, optional
145
+ :param _content_type: force content-type for the request.
146
+ :type _content_type: str, Optional
147
+ :param _headers: set to override the headers for a single
148
+ request; this effectively ignores the headers
149
+ in the spec for a single request.
150
+ :type _headers: dict, optional
151
+ :param _host_index: set to override the host_index for a single
152
+ request; this effectively ignores the host_index
153
+ in the spec for a single request.
154
+ :type _host_index: int, optional
155
+ :return: Returns the result object.
156
+ """ # noqa: E501
157
+ warnings.warn("DELETE /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
158
+
159
+ _param = self._delete_maintenance_config_serialize(
160
+ id=id,
161
+ _request_auth=_request_auth,
162
+ _content_type=_content_type,
163
+ _headers=_headers,
164
+ _host_index=_host_index
165
+ )
166
+
167
+ _response_types_map: Dict[str, Optional[str]] = {
168
+ }
169
+ response_data = self.api_client.call_api(
170
+ *_param,
171
+ _request_timeout=_request_timeout
172
+ )
173
+ response_data.read()
174
+ return self.api_client.response_deserialize(
175
+ response_data=response_data,
176
+ response_types_map=_response_types_map,
177
+ )
178
+
179
+
180
+ @validate_call
181
+ def delete_maintenance_config_without_preload_content(
182
+ self,
183
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to delete.")],
184
+ _request_timeout: Union[
185
+ None,
186
+ Annotated[StrictFloat, Field(gt=0)],
187
+ Tuple[
188
+ Annotated[StrictFloat, Field(gt=0)],
189
+ Annotated[StrictFloat, Field(gt=0)]
190
+ ]
191
+ ] = None,
192
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
193
+ _content_type: Optional[StrictStr] = None,
194
+ _headers: Optional[Dict[StrictStr, Any]] = None,
195
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
196
+ ) -> RESTResponseType:
197
+ """(Deprecated) Delete maintenance configuration
198
+
199
+
200
+ :param id: ID of the Maintenance Window Configuration to delete. (required)
201
+ :type id: str
202
+ :param _request_timeout: timeout setting for this request. If one
203
+ number provided, it will be total request
204
+ timeout. It can also be a pair (tuple) of
205
+ (connection, read) timeouts.
206
+ :type _request_timeout: int, tuple(int, int), optional
207
+ :param _request_auth: set to override the auth_settings for an a single
208
+ request; this effectively ignores the
209
+ authentication in the spec for a single request.
210
+ :type _request_auth: dict, optional
211
+ :param _content_type: force content-type for the request.
212
+ :type _content_type: str, Optional
213
+ :param _headers: set to override the headers for a single
214
+ request; this effectively ignores the headers
215
+ in the spec for a single request.
216
+ :type _headers: dict, optional
217
+ :param _host_index: set to override the host_index for a single
218
+ request; this effectively ignores the host_index
219
+ in the spec for a single request.
220
+ :type _host_index: int, optional
221
+ :return: Returns the result object.
222
+ """ # noqa: E501
223
+ warnings.warn("DELETE /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
224
+
225
+ _param = self._delete_maintenance_config_serialize(
226
+ id=id,
227
+ _request_auth=_request_auth,
228
+ _content_type=_content_type,
229
+ _headers=_headers,
230
+ _host_index=_host_index
231
+ )
232
+
233
+ _response_types_map: Dict[str, Optional[str]] = {
234
+ }
235
+ response_data = self.api_client.call_api(
236
+ *_param,
237
+ _request_timeout=_request_timeout
238
+ )
239
+ return response_data.response
240
+
241
+
242
+ def _delete_maintenance_config_serialize(
243
+ self,
244
+ id,
245
+ _request_auth,
246
+ _content_type,
247
+ _headers,
248
+ _host_index,
249
+ ) -> RequestSerialized:
250
+
251
+ _host = None
252
+
253
+ _collection_formats: Dict[str, str] = {
254
+ }
255
+
256
+ _path_params: Dict[str, str] = {}
257
+ _query_params: List[Tuple[str, str]] = []
258
+ _header_params: Dict[str, Optional[str]] = _headers or {}
259
+ _form_params: List[Tuple[str, str]] = []
260
+ _files: Dict[
261
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
262
+ ] = {}
263
+ _body_params: Optional[bytes] = None
264
+
265
+ # process the path parameters
266
+ if id is not None:
267
+ _path_params['id'] = id
268
+ # process the query parameters
269
+ # process the header parameters
270
+ # process the form parameters
271
+ # process the body parameter
272
+
273
+
274
+ # set the HTTP header `Accept`
275
+ if 'Accept' not in _header_params:
276
+ _header_params['Accept'] = self.api_client.select_header_accept(
277
+ [
278
+ 'application/json'
279
+ ]
280
+ )
281
+
282
+
283
+ # authentication setting
284
+ _auth_settings: List[str] = [
285
+ 'ApiKeyAuth'
286
+ ]
287
+
288
+ return self.api_client.param_serialize(
289
+ method='DELETE',
290
+ resource_path='/api/settings/maintenance/{id}',
291
+ path_params=_path_params,
292
+ query_params=_query_params,
293
+ header_params=_header_params,
294
+ body=_body_params,
295
+ post_params=_form_params,
296
+ files=_files,
297
+ auth_settings=_auth_settings,
298
+ collection_formats=_collection_formats,
299
+ _host=_host,
300
+ _request_auth=_request_auth
301
+ )
302
+
303
+
304
+
305
+
306
+ @validate_call
307
+ def delete_maintenance_config_v2(
308
+ self,
309
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to delete.")],
310
+ _request_timeout: Union[
311
+ None,
312
+ Annotated[StrictFloat, Field(gt=0)],
313
+ Tuple[
314
+ Annotated[StrictFloat, Field(gt=0)],
315
+ Annotated[StrictFloat, Field(gt=0)]
316
+ ]
317
+ ] = None,
318
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
319
+ _content_type: Optional[StrictStr] = None,
320
+ _headers: Optional[Dict[StrictStr, Any]] = None,
321
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
322
+ ) -> None:
323
+ """Delete maintenance configuration
324
+
325
+ This endpoint deletes a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to delete.
326
+
327
+ :param id: Id of the Maintenance Window configuration to delete. (required)
328
+ :type id: str
329
+ :param _request_timeout: timeout setting for this request. If one
330
+ number provided, it will be total request
331
+ timeout. It can also be a pair (tuple) of
332
+ (connection, read) timeouts.
333
+ :type _request_timeout: int, tuple(int, int), optional
334
+ :param _request_auth: set to override the auth_settings for an a single
335
+ request; this effectively ignores the
336
+ authentication in the spec for a single request.
337
+ :type _request_auth: dict, optional
338
+ :param _content_type: force content-type for the request.
339
+ :type _content_type: str, Optional
340
+ :param _headers: set to override the headers for a single
341
+ request; this effectively ignores the headers
342
+ in the spec for a single request.
343
+ :type _headers: dict, optional
344
+ :param _host_index: set to override the host_index for a single
345
+ request; this effectively ignores the host_index
346
+ in the spec for a single request.
347
+ :type _host_index: int, optional
348
+ :return: Returns the result object.
349
+ """ # noqa: E501
350
+
351
+ _param = self._delete_maintenance_config_v2_serialize(
352
+ id=id,
353
+ _request_auth=_request_auth,
354
+ _content_type=_content_type,
355
+ _headers=_headers,
356
+ _host_index=_host_index
357
+ )
358
+
359
+ _response_types_map: Dict[str, Optional[str]] = {
360
+ }
361
+ response_data = self.api_client.call_api(
362
+ *_param,
363
+ _request_timeout=_request_timeout
364
+ )
365
+ response_data.read()
366
+ return self.api_client.response_deserialize(
367
+ response_data=response_data,
368
+ response_types_map=_response_types_map,
369
+ ).data
370
+
371
+
372
+ @validate_call
373
+ def delete_maintenance_config_v2_with_http_info(
374
+ self,
375
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to delete.")],
376
+ _request_timeout: Union[
377
+ None,
378
+ Annotated[StrictFloat, Field(gt=0)],
379
+ Tuple[
380
+ Annotated[StrictFloat, Field(gt=0)],
381
+ Annotated[StrictFloat, Field(gt=0)]
382
+ ]
383
+ ] = None,
384
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
385
+ _content_type: Optional[StrictStr] = None,
386
+ _headers: Optional[Dict[StrictStr, Any]] = None,
387
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
388
+ ) -> ApiResponse[None]:
389
+ """Delete maintenance configuration
390
+
391
+ This endpoint deletes a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to delete.
392
+
393
+ :param id: Id of the Maintenance Window configuration to delete. (required)
394
+ :type id: str
395
+ :param _request_timeout: timeout setting for this request. If one
396
+ number provided, it will be total request
397
+ timeout. It can also be a pair (tuple) of
398
+ (connection, read) timeouts.
399
+ :type _request_timeout: int, tuple(int, int), optional
400
+ :param _request_auth: set to override the auth_settings for an a single
401
+ request; this effectively ignores the
402
+ authentication in the spec for a single request.
403
+ :type _request_auth: dict, optional
404
+ :param _content_type: force content-type for the request.
405
+ :type _content_type: str, Optional
406
+ :param _headers: set to override the headers for a single
407
+ request; this effectively ignores the headers
408
+ in the spec for a single request.
409
+ :type _headers: dict, optional
410
+ :param _host_index: set to override the host_index for a single
411
+ request; this effectively ignores the host_index
412
+ in the spec for a single request.
413
+ :type _host_index: int, optional
414
+ :return: Returns the result object.
415
+ """ # noqa: E501
416
+
417
+ _param = self._delete_maintenance_config_v2_serialize(
418
+ id=id,
419
+ _request_auth=_request_auth,
420
+ _content_type=_content_type,
421
+ _headers=_headers,
422
+ _host_index=_host_index
423
+ )
424
+
425
+ _response_types_map: Dict[str, Optional[str]] = {
426
+ }
427
+ response_data = self.api_client.call_api(
428
+ *_param,
429
+ _request_timeout=_request_timeout
430
+ )
431
+ response_data.read()
432
+ return self.api_client.response_deserialize(
433
+ response_data=response_data,
434
+ response_types_map=_response_types_map,
435
+ )
436
+
437
+
438
+ @validate_call
439
+ def delete_maintenance_config_v2_without_preload_content(
440
+ self,
441
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to delete.")],
442
+ _request_timeout: Union[
443
+ None,
444
+ Annotated[StrictFloat, Field(gt=0)],
445
+ Tuple[
446
+ Annotated[StrictFloat, Field(gt=0)],
447
+ Annotated[StrictFloat, Field(gt=0)]
448
+ ]
449
+ ] = None,
450
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
451
+ _content_type: Optional[StrictStr] = None,
452
+ _headers: Optional[Dict[StrictStr, Any]] = None,
453
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
454
+ ) -> RESTResponseType:
455
+ """Delete maintenance configuration
456
+
457
+ This endpoint deletes a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to delete.
458
+
459
+ :param id: Id of the Maintenance Window configuration to delete. (required)
460
+ :type id: str
461
+ :param _request_timeout: timeout setting for this request. If one
462
+ number provided, it will be total request
463
+ timeout. It can also be a pair (tuple) of
464
+ (connection, read) timeouts.
465
+ :type _request_timeout: int, tuple(int, int), optional
466
+ :param _request_auth: set to override the auth_settings for an a single
467
+ request; this effectively ignores the
468
+ authentication in the spec for a single request.
469
+ :type _request_auth: dict, optional
470
+ :param _content_type: force content-type for the request.
471
+ :type _content_type: str, Optional
472
+ :param _headers: set to override the headers for a single
473
+ request; this effectively ignores the headers
474
+ in the spec for a single request.
475
+ :type _headers: dict, optional
476
+ :param _host_index: set to override the host_index for a single
477
+ request; this effectively ignores the host_index
478
+ in the spec for a single request.
479
+ :type _host_index: int, optional
480
+ :return: Returns the result object.
481
+ """ # noqa: E501
482
+
483
+ _param = self._delete_maintenance_config_v2_serialize(
484
+ id=id,
485
+ _request_auth=_request_auth,
486
+ _content_type=_content_type,
487
+ _headers=_headers,
488
+ _host_index=_host_index
489
+ )
490
+
491
+ _response_types_map: Dict[str, Optional[str]] = {
492
+ }
493
+ response_data = self.api_client.call_api(
494
+ *_param,
495
+ _request_timeout=_request_timeout
496
+ )
497
+ return response_data.response
498
+
499
+
500
+ def _delete_maintenance_config_v2_serialize(
501
+ self,
502
+ id,
503
+ _request_auth,
504
+ _content_type,
505
+ _headers,
506
+ _host_index,
507
+ ) -> RequestSerialized:
508
+
509
+ _host = None
510
+
511
+ _collection_formats: Dict[str, str] = {
512
+ }
513
+
514
+ _path_params: Dict[str, str] = {}
515
+ _query_params: List[Tuple[str, str]] = []
516
+ _header_params: Dict[str, Optional[str]] = _headers or {}
517
+ _form_params: List[Tuple[str, str]] = []
518
+ _files: Dict[
519
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
520
+ ] = {}
521
+ _body_params: Optional[bytes] = None
522
+
523
+ # process the path parameters
524
+ if id is not None:
525
+ _path_params['id'] = id
526
+ # process the query parameters
527
+ # process the header parameters
528
+ # process the form parameters
529
+ # process the body parameter
530
+
531
+
532
+ # set the HTTP header `Accept`
533
+ if 'Accept' not in _header_params:
534
+ _header_params['Accept'] = self.api_client.select_header_accept(
535
+ [
536
+ 'application/json'
537
+ ]
538
+ )
539
+
540
+
541
+ # authentication setting
542
+ _auth_settings: List[str] = [
543
+ 'ApiKeyAuth'
544
+ ]
545
+
546
+ return self.api_client.param_serialize(
547
+ method='DELETE',
548
+ resource_path='/api/settings/v2/maintenance/{id}',
549
+ path_params=_path_params,
550
+ query_params=_query_params,
551
+ header_params=_header_params,
552
+ body=_body_params,
553
+ post_params=_form_params,
554
+ files=_files,
555
+ auth_settings=_auth_settings,
556
+ collection_formats=_collection_formats,
557
+ _host=_host,
558
+ _request_auth=_request_auth
559
+ )
560
+
561
+
562
+
563
+
564
+ @validate_call
565
+ def get_maintenance_config(
566
+ self,
567
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to get.")],
568
+ _request_timeout: Union[
569
+ None,
570
+ Annotated[StrictFloat, Field(gt=0)],
571
+ Tuple[
572
+ Annotated[StrictFloat, Field(gt=0)],
573
+ Annotated[StrictFloat, Field(gt=0)]
574
+ ]
575
+ ] = None,
576
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
577
+ _content_type: Optional[StrictStr] = None,
578
+ _headers: Optional[Dict[StrictStr, Any]] = None,
579
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
580
+ ) -> MaintenanceConfigWithLastUpdated:
581
+ """(Deprecated) Maintenance configuration
582
+
583
+
584
+ :param id: ID of the Maintenance Window Configuration to get. (required)
585
+ :type id: str
586
+ :param _request_timeout: timeout setting for this request. If one
587
+ number provided, it will be total request
588
+ timeout. It can also be a pair (tuple) of
589
+ (connection, read) timeouts.
590
+ :type _request_timeout: int, tuple(int, int), optional
591
+ :param _request_auth: set to override the auth_settings for an a single
592
+ request; this effectively ignores the
593
+ authentication in the spec for a single request.
594
+ :type _request_auth: dict, optional
595
+ :param _content_type: force content-type for the request.
596
+ :type _content_type: str, Optional
597
+ :param _headers: set to override the headers for a single
598
+ request; this effectively ignores the headers
599
+ in the spec for a single request.
600
+ :type _headers: dict, optional
601
+ :param _host_index: set to override the host_index for a single
602
+ request; this effectively ignores the host_index
603
+ in the spec for a single request.
604
+ :type _host_index: int, optional
605
+ :return: Returns the result object.
606
+ """ # noqa: E501
607
+ warnings.warn("GET /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
608
+
609
+ _param = self._get_maintenance_config_serialize(
610
+ id=id,
611
+ _request_auth=_request_auth,
612
+ _content_type=_content_type,
613
+ _headers=_headers,
614
+ _host_index=_host_index
615
+ )
616
+
617
+ _response_types_map: Dict[str, Optional[str]] = {
618
+ '200': "MaintenanceConfigWithLastUpdated",
619
+ }
620
+ response_data = self.api_client.call_api(
621
+ *_param,
622
+ _request_timeout=_request_timeout
623
+ )
624
+ response_data.read()
625
+ return self.api_client.response_deserialize(
626
+ response_data=response_data,
627
+ response_types_map=_response_types_map,
628
+ ).data
629
+
630
+
631
+ @validate_call
632
+ def get_maintenance_config_with_http_info(
633
+ self,
634
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to get.")],
635
+ _request_timeout: Union[
636
+ None,
637
+ Annotated[StrictFloat, Field(gt=0)],
638
+ Tuple[
639
+ Annotated[StrictFloat, Field(gt=0)],
640
+ Annotated[StrictFloat, Field(gt=0)]
641
+ ]
642
+ ] = None,
643
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
644
+ _content_type: Optional[StrictStr] = None,
645
+ _headers: Optional[Dict[StrictStr, Any]] = None,
646
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
647
+ ) -> ApiResponse[MaintenanceConfigWithLastUpdated]:
648
+ """(Deprecated) Maintenance configuration
649
+
650
+
651
+ :param id: ID of the Maintenance Window Configuration to get. (required)
652
+ :type id: str
653
+ :param _request_timeout: timeout setting for this request. If one
654
+ number provided, it will be total request
655
+ timeout. It can also be a pair (tuple) of
656
+ (connection, read) timeouts.
657
+ :type _request_timeout: int, tuple(int, int), optional
658
+ :param _request_auth: set to override the auth_settings for an a single
659
+ request; this effectively ignores the
660
+ authentication in the spec for a single request.
661
+ :type _request_auth: dict, optional
662
+ :param _content_type: force content-type for the request.
663
+ :type _content_type: str, Optional
664
+ :param _headers: set to override the headers for a single
665
+ request; this effectively ignores the headers
666
+ in the spec for a single request.
667
+ :type _headers: dict, optional
668
+ :param _host_index: set to override the host_index for a single
669
+ request; this effectively ignores the host_index
670
+ in the spec for a single request.
671
+ :type _host_index: int, optional
672
+ :return: Returns the result object.
673
+ """ # noqa: E501
674
+ warnings.warn("GET /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
675
+
676
+ _param = self._get_maintenance_config_serialize(
677
+ id=id,
678
+ _request_auth=_request_auth,
679
+ _content_type=_content_type,
680
+ _headers=_headers,
681
+ _host_index=_host_index
682
+ )
683
+
684
+ _response_types_map: Dict[str, Optional[str]] = {
685
+ '200': "MaintenanceConfigWithLastUpdated",
686
+ }
687
+ response_data = self.api_client.call_api(
688
+ *_param,
689
+ _request_timeout=_request_timeout
690
+ )
691
+ response_data.read()
692
+ return self.api_client.response_deserialize(
693
+ response_data=response_data,
694
+ response_types_map=_response_types_map,
695
+ )
696
+
697
+
698
+ @validate_call
699
+ def get_maintenance_config_without_preload_content(
700
+ self,
701
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to get.")],
702
+ _request_timeout: Union[
703
+ None,
704
+ Annotated[StrictFloat, Field(gt=0)],
705
+ Tuple[
706
+ Annotated[StrictFloat, Field(gt=0)],
707
+ Annotated[StrictFloat, Field(gt=0)]
708
+ ]
709
+ ] = None,
710
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
711
+ _content_type: Optional[StrictStr] = None,
712
+ _headers: Optional[Dict[StrictStr, Any]] = None,
713
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
714
+ ) -> RESTResponseType:
715
+ """(Deprecated) Maintenance configuration
716
+
717
+
718
+ :param id: ID of the Maintenance Window Configuration to get. (required)
719
+ :type id: str
720
+ :param _request_timeout: timeout setting for this request. If one
721
+ number provided, it will be total request
722
+ timeout. It can also be a pair (tuple) of
723
+ (connection, read) timeouts.
724
+ :type _request_timeout: int, tuple(int, int), optional
725
+ :param _request_auth: set to override the auth_settings for an a single
726
+ request; this effectively ignores the
727
+ authentication in the spec for a single request.
728
+ :type _request_auth: dict, optional
729
+ :param _content_type: force content-type for the request.
730
+ :type _content_type: str, Optional
731
+ :param _headers: set to override the headers for a single
732
+ request; this effectively ignores the headers
733
+ in the spec for a single request.
734
+ :type _headers: dict, optional
735
+ :param _host_index: set to override the host_index for a single
736
+ request; this effectively ignores the host_index
737
+ in the spec for a single request.
738
+ :type _host_index: int, optional
739
+ :return: Returns the result object.
740
+ """ # noqa: E501
741
+ warnings.warn("GET /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
742
+
743
+ _param = self._get_maintenance_config_serialize(
744
+ id=id,
745
+ _request_auth=_request_auth,
746
+ _content_type=_content_type,
747
+ _headers=_headers,
748
+ _host_index=_host_index
749
+ )
750
+
751
+ _response_types_map: Dict[str, Optional[str]] = {
752
+ '200': "MaintenanceConfigWithLastUpdated",
753
+ }
754
+ response_data = self.api_client.call_api(
755
+ *_param,
756
+ _request_timeout=_request_timeout
757
+ )
758
+ return response_data.response
759
+
760
+
761
+ def _get_maintenance_config_serialize(
762
+ self,
763
+ id,
764
+ _request_auth,
765
+ _content_type,
766
+ _headers,
767
+ _host_index,
768
+ ) -> RequestSerialized:
769
+
770
+ _host = None
771
+
772
+ _collection_formats: Dict[str, str] = {
773
+ }
774
+
775
+ _path_params: Dict[str, str] = {}
776
+ _query_params: List[Tuple[str, str]] = []
777
+ _header_params: Dict[str, Optional[str]] = _headers or {}
778
+ _form_params: List[Tuple[str, str]] = []
779
+ _files: Dict[
780
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
781
+ ] = {}
782
+ _body_params: Optional[bytes] = None
783
+
784
+ # process the path parameters
785
+ if id is not None:
786
+ _path_params['id'] = id
787
+ # process the query parameters
788
+ # process the header parameters
789
+ # process the form parameters
790
+ # process the body parameter
791
+
792
+
793
+ # set the HTTP header `Accept`
794
+ if 'Accept' not in _header_params:
795
+ _header_params['Accept'] = self.api_client.select_header_accept(
796
+ [
797
+ 'application/json'
798
+ ]
799
+ )
800
+
801
+
802
+ # authentication setting
803
+ _auth_settings: List[str] = [
804
+ 'ApiKeyAuth'
805
+ ]
806
+
807
+ return self.api_client.param_serialize(
808
+ method='GET',
809
+ resource_path='/api/settings/maintenance/{id}',
810
+ path_params=_path_params,
811
+ query_params=_query_params,
812
+ header_params=_header_params,
813
+ body=_body_params,
814
+ post_params=_form_params,
815
+ files=_files,
816
+ auth_settings=_auth_settings,
817
+ collection_formats=_collection_formats,
818
+ _host=_host,
819
+ _request_auth=_request_auth
820
+ )
821
+
822
+
823
+
824
+
825
+ @validate_call
826
+ def get_maintenance_config_v2(
827
+ self,
828
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window Configuration to get.")],
829
+ _request_timeout: Union[
830
+ None,
831
+ Annotated[StrictFloat, Field(gt=0)],
832
+ Tuple[
833
+ Annotated[StrictFloat, Field(gt=0)],
834
+ Annotated[StrictFloat, Field(gt=0)]
835
+ ]
836
+ ] = None,
837
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
838
+ _content_type: Optional[StrictStr] = None,
839
+ _headers: Optional[Dict[StrictStr, Any]] = None,
840
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
841
+ ) -> MaintenanceConfigV2WithStateAndOccurrence:
842
+ """Get maintenance configuration
843
+
844
+ This endpoint retrieves a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to fetch.
845
+
846
+ :param id: Id of the Maintenance Window Configuration to get. (required)
847
+ :type id: str
848
+ :param _request_timeout: timeout setting for this request. If one
849
+ number provided, it will be total request
850
+ timeout. It can also be a pair (tuple) of
851
+ (connection, read) timeouts.
852
+ :type _request_timeout: int, tuple(int, int), optional
853
+ :param _request_auth: set to override the auth_settings for an a single
854
+ request; this effectively ignores the
855
+ authentication in the spec for a single request.
856
+ :type _request_auth: dict, optional
857
+ :param _content_type: force content-type for the request.
858
+ :type _content_type: str, Optional
859
+ :param _headers: set to override the headers for a single
860
+ request; this effectively ignores the headers
861
+ in the spec for a single request.
862
+ :type _headers: dict, optional
863
+ :param _host_index: set to override the host_index for a single
864
+ request; this effectively ignores the host_index
865
+ in the spec for a single request.
866
+ :type _host_index: int, optional
867
+ :return: Returns the result object.
868
+ """ # noqa: E501
869
+
870
+ _param = self._get_maintenance_config_v2_serialize(
871
+ id=id,
872
+ _request_auth=_request_auth,
873
+ _content_type=_content_type,
874
+ _headers=_headers,
875
+ _host_index=_host_index
876
+ )
877
+
878
+ _response_types_map: Dict[str, Optional[str]] = {
879
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
880
+ }
881
+ response_data = self.api_client.call_api(
882
+ *_param,
883
+ _request_timeout=_request_timeout
884
+ )
885
+ response_data.read()
886
+ return self.api_client.response_deserialize(
887
+ response_data=response_data,
888
+ response_types_map=_response_types_map,
889
+ ).data
890
+
891
+
892
+ @validate_call
893
+ def get_maintenance_config_v2_with_http_info(
894
+ self,
895
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window Configuration to get.")],
896
+ _request_timeout: Union[
897
+ None,
898
+ Annotated[StrictFloat, Field(gt=0)],
899
+ Tuple[
900
+ Annotated[StrictFloat, Field(gt=0)],
901
+ Annotated[StrictFloat, Field(gt=0)]
902
+ ]
903
+ ] = None,
904
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
905
+ _content_type: Optional[StrictStr] = None,
906
+ _headers: Optional[Dict[StrictStr, Any]] = None,
907
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
908
+ ) -> ApiResponse[MaintenanceConfigV2WithStateAndOccurrence]:
909
+ """Get maintenance configuration
910
+
911
+ This endpoint retrieves a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to fetch.
912
+
913
+ :param id: Id of the Maintenance Window Configuration to get. (required)
914
+ :type id: str
915
+ :param _request_timeout: timeout setting for this request. If one
916
+ number provided, it will be total request
917
+ timeout. It can also be a pair (tuple) of
918
+ (connection, read) timeouts.
919
+ :type _request_timeout: int, tuple(int, int), optional
920
+ :param _request_auth: set to override the auth_settings for an a single
921
+ request; this effectively ignores the
922
+ authentication in the spec for a single request.
923
+ :type _request_auth: dict, optional
924
+ :param _content_type: force content-type for the request.
925
+ :type _content_type: str, Optional
926
+ :param _headers: set to override the headers for a single
927
+ request; this effectively ignores the headers
928
+ in the spec for a single request.
929
+ :type _headers: dict, optional
930
+ :param _host_index: set to override the host_index for a single
931
+ request; this effectively ignores the host_index
932
+ in the spec for a single request.
933
+ :type _host_index: int, optional
934
+ :return: Returns the result object.
935
+ """ # noqa: E501
936
+
937
+ _param = self._get_maintenance_config_v2_serialize(
938
+ id=id,
939
+ _request_auth=_request_auth,
940
+ _content_type=_content_type,
941
+ _headers=_headers,
942
+ _host_index=_host_index
943
+ )
944
+
945
+ _response_types_map: Dict[str, Optional[str]] = {
946
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
947
+ }
948
+ response_data = self.api_client.call_api(
949
+ *_param,
950
+ _request_timeout=_request_timeout
951
+ )
952
+ response_data.read()
953
+ return self.api_client.response_deserialize(
954
+ response_data=response_data,
955
+ response_types_map=_response_types_map,
956
+ )
957
+
958
+
959
+ @validate_call
960
+ def get_maintenance_config_v2_without_preload_content(
961
+ self,
962
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window Configuration to get.")],
963
+ _request_timeout: Union[
964
+ None,
965
+ Annotated[StrictFloat, Field(gt=0)],
966
+ Tuple[
967
+ Annotated[StrictFloat, Field(gt=0)],
968
+ Annotated[StrictFloat, Field(gt=0)]
969
+ ]
970
+ ] = None,
971
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
972
+ _content_type: Optional[StrictStr] = None,
973
+ _headers: Optional[Dict[StrictStr, Any]] = None,
974
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
975
+ ) -> RESTResponseType:
976
+ """Get maintenance configuration
977
+
978
+ This endpoint retrieves a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to fetch.
979
+
980
+ :param id: Id of the Maintenance Window Configuration to get. (required)
981
+ :type id: str
982
+ :param _request_timeout: timeout setting for this request. If one
983
+ number provided, it will be total request
984
+ timeout. It can also be a pair (tuple) of
985
+ (connection, read) timeouts.
986
+ :type _request_timeout: int, tuple(int, int), optional
987
+ :param _request_auth: set to override the auth_settings for an a single
988
+ request; this effectively ignores the
989
+ authentication in the spec for a single request.
990
+ :type _request_auth: dict, optional
991
+ :param _content_type: force content-type for the request.
992
+ :type _content_type: str, Optional
993
+ :param _headers: set to override the headers for a single
994
+ request; this effectively ignores the headers
995
+ in the spec for a single request.
996
+ :type _headers: dict, optional
997
+ :param _host_index: set to override the host_index for a single
998
+ request; this effectively ignores the host_index
999
+ in the spec for a single request.
1000
+ :type _host_index: int, optional
1001
+ :return: Returns the result object.
1002
+ """ # noqa: E501
1003
+
1004
+ _param = self._get_maintenance_config_v2_serialize(
1005
+ id=id,
1006
+ _request_auth=_request_auth,
1007
+ _content_type=_content_type,
1008
+ _headers=_headers,
1009
+ _host_index=_host_index
1010
+ )
1011
+
1012
+ _response_types_map: Dict[str, Optional[str]] = {
1013
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
1014
+ }
1015
+ response_data = self.api_client.call_api(
1016
+ *_param,
1017
+ _request_timeout=_request_timeout
1018
+ )
1019
+ return response_data.response
1020
+
1021
+
1022
+ def _get_maintenance_config_v2_serialize(
1023
+ self,
1024
+ id,
1025
+ _request_auth,
1026
+ _content_type,
1027
+ _headers,
1028
+ _host_index,
1029
+ ) -> RequestSerialized:
1030
+
1031
+ _host = None
1032
+
1033
+ _collection_formats: Dict[str, str] = {
1034
+ }
1035
+
1036
+ _path_params: Dict[str, str] = {}
1037
+ _query_params: List[Tuple[str, str]] = []
1038
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1039
+ _form_params: List[Tuple[str, str]] = []
1040
+ _files: Dict[
1041
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1042
+ ] = {}
1043
+ _body_params: Optional[bytes] = None
1044
+
1045
+ # process the path parameters
1046
+ if id is not None:
1047
+ _path_params['id'] = id
1048
+ # process the query parameters
1049
+ # process the header parameters
1050
+ # process the form parameters
1051
+ # process the body parameter
1052
+
1053
+
1054
+ # set the HTTP header `Accept`
1055
+ if 'Accept' not in _header_params:
1056
+ _header_params['Accept'] = self.api_client.select_header_accept(
1057
+ [
1058
+ 'application/json'
1059
+ ]
1060
+ )
1061
+
1062
+
1063
+ # authentication setting
1064
+ _auth_settings: List[str] = [
1065
+ 'ApiKeyAuth'
1066
+ ]
1067
+
1068
+ return self.api_client.param_serialize(
1069
+ method='GET',
1070
+ resource_path='/api/settings/v2/maintenance/{id}',
1071
+ path_params=_path_params,
1072
+ query_params=_query_params,
1073
+ header_params=_header_params,
1074
+ body=_body_params,
1075
+ post_params=_form_params,
1076
+ files=_files,
1077
+ auth_settings=_auth_settings,
1078
+ collection_formats=_collection_formats,
1079
+ _host=_host,
1080
+ _request_auth=_request_auth
1081
+ )
1082
+
1083
+
1084
+
1085
+
1086
+ @validate_call
1087
+ def get_maintenance_configs(
1088
+ self,
1089
+ _request_timeout: Union[
1090
+ None,
1091
+ Annotated[StrictFloat, Field(gt=0)],
1092
+ Tuple[
1093
+ Annotated[StrictFloat, Field(gt=0)],
1094
+ Annotated[StrictFloat, Field(gt=0)]
1095
+ ]
1096
+ ] = None,
1097
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1098
+ _content_type: Optional[StrictStr] = None,
1099
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1100
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1101
+ ) -> List[ValidatedMaintenanceConfigWithStatus]:
1102
+ """(Deprecated) All maintenance configurations
1103
+
1104
+
1105
+ :param _request_timeout: timeout setting for this request. If one
1106
+ number provided, it will be total request
1107
+ timeout. It can also be a pair (tuple) of
1108
+ (connection, read) timeouts.
1109
+ :type _request_timeout: int, tuple(int, int), optional
1110
+ :param _request_auth: set to override the auth_settings for an a single
1111
+ request; this effectively ignores the
1112
+ authentication in the spec for a single request.
1113
+ :type _request_auth: dict, optional
1114
+ :param _content_type: force content-type for the request.
1115
+ :type _content_type: str, Optional
1116
+ :param _headers: set to override the headers for a single
1117
+ request; this effectively ignores the headers
1118
+ in the spec for a single request.
1119
+ :type _headers: dict, optional
1120
+ :param _host_index: set to override the host_index for a single
1121
+ request; this effectively ignores the host_index
1122
+ in the spec for a single request.
1123
+ :type _host_index: int, optional
1124
+ :return: Returns the result object.
1125
+ """ # noqa: E501
1126
+ warnings.warn("GET /api/settings/maintenance is deprecated.", DeprecationWarning)
1127
+
1128
+ _param = self._get_maintenance_configs_serialize(
1129
+ _request_auth=_request_auth,
1130
+ _content_type=_content_type,
1131
+ _headers=_headers,
1132
+ _host_index=_host_index
1133
+ )
1134
+
1135
+ _response_types_map: Dict[str, Optional[str]] = {
1136
+ '200': "List[ValidatedMaintenanceConfigWithStatus]",
1137
+ }
1138
+ response_data = self.api_client.call_api(
1139
+ *_param,
1140
+ _request_timeout=_request_timeout
1141
+ )
1142
+ response_data.read()
1143
+ return self.api_client.response_deserialize(
1144
+ response_data=response_data,
1145
+ response_types_map=_response_types_map,
1146
+ ).data
1147
+
1148
+
1149
+ @validate_call
1150
+ def get_maintenance_configs_with_http_info(
1151
+ self,
1152
+ _request_timeout: Union[
1153
+ None,
1154
+ Annotated[StrictFloat, Field(gt=0)],
1155
+ Tuple[
1156
+ Annotated[StrictFloat, Field(gt=0)],
1157
+ Annotated[StrictFloat, Field(gt=0)]
1158
+ ]
1159
+ ] = None,
1160
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1161
+ _content_type: Optional[StrictStr] = None,
1162
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1163
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1164
+ ) -> ApiResponse[List[ValidatedMaintenanceConfigWithStatus]]:
1165
+ """(Deprecated) All maintenance configurations
1166
+
1167
+
1168
+ :param _request_timeout: timeout setting for this request. If one
1169
+ number provided, it will be total request
1170
+ timeout. It can also be a pair (tuple) of
1171
+ (connection, read) timeouts.
1172
+ :type _request_timeout: int, tuple(int, int), optional
1173
+ :param _request_auth: set to override the auth_settings for an a single
1174
+ request; this effectively ignores the
1175
+ authentication in the spec for a single request.
1176
+ :type _request_auth: dict, optional
1177
+ :param _content_type: force content-type for the request.
1178
+ :type _content_type: str, Optional
1179
+ :param _headers: set to override the headers for a single
1180
+ request; this effectively ignores the headers
1181
+ in the spec for a single request.
1182
+ :type _headers: dict, optional
1183
+ :param _host_index: set to override the host_index for a single
1184
+ request; this effectively ignores the host_index
1185
+ in the spec for a single request.
1186
+ :type _host_index: int, optional
1187
+ :return: Returns the result object.
1188
+ """ # noqa: E501
1189
+ warnings.warn("GET /api/settings/maintenance is deprecated.", DeprecationWarning)
1190
+
1191
+ _param = self._get_maintenance_configs_serialize(
1192
+ _request_auth=_request_auth,
1193
+ _content_type=_content_type,
1194
+ _headers=_headers,
1195
+ _host_index=_host_index
1196
+ )
1197
+
1198
+ _response_types_map: Dict[str, Optional[str]] = {
1199
+ '200': "List[ValidatedMaintenanceConfigWithStatus]",
1200
+ }
1201
+ response_data = self.api_client.call_api(
1202
+ *_param,
1203
+ _request_timeout=_request_timeout
1204
+ )
1205
+ response_data.read()
1206
+ return self.api_client.response_deserialize(
1207
+ response_data=response_data,
1208
+ response_types_map=_response_types_map,
1209
+ )
1210
+
1211
+
1212
+ @validate_call
1213
+ def get_maintenance_configs_without_preload_content(
1214
+ self,
1215
+ _request_timeout: Union[
1216
+ None,
1217
+ Annotated[StrictFloat, Field(gt=0)],
1218
+ Tuple[
1219
+ Annotated[StrictFloat, Field(gt=0)],
1220
+ Annotated[StrictFloat, Field(gt=0)]
1221
+ ]
1222
+ ] = None,
1223
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1224
+ _content_type: Optional[StrictStr] = None,
1225
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1226
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1227
+ ) -> RESTResponseType:
1228
+ """(Deprecated) All maintenance configurations
1229
+
1230
+
1231
+ :param _request_timeout: timeout setting for this request. If one
1232
+ number provided, it will be total request
1233
+ timeout. It can also be a pair (tuple) of
1234
+ (connection, read) timeouts.
1235
+ :type _request_timeout: int, tuple(int, int), optional
1236
+ :param _request_auth: set to override the auth_settings for an a single
1237
+ request; this effectively ignores the
1238
+ authentication in the spec for a single request.
1239
+ :type _request_auth: dict, optional
1240
+ :param _content_type: force content-type for the request.
1241
+ :type _content_type: str, Optional
1242
+ :param _headers: set to override the headers for a single
1243
+ request; this effectively ignores the headers
1244
+ in the spec for a single request.
1245
+ :type _headers: dict, optional
1246
+ :param _host_index: set to override the host_index for a single
1247
+ request; this effectively ignores the host_index
1248
+ in the spec for a single request.
1249
+ :type _host_index: int, optional
1250
+ :return: Returns the result object.
1251
+ """ # noqa: E501
1252
+ warnings.warn("GET /api/settings/maintenance is deprecated.", DeprecationWarning)
1253
+
1254
+ _param = self._get_maintenance_configs_serialize(
1255
+ _request_auth=_request_auth,
1256
+ _content_type=_content_type,
1257
+ _headers=_headers,
1258
+ _host_index=_host_index
1259
+ )
1260
+
1261
+ _response_types_map: Dict[str, Optional[str]] = {
1262
+ '200': "List[ValidatedMaintenanceConfigWithStatus]",
1263
+ }
1264
+ response_data = self.api_client.call_api(
1265
+ *_param,
1266
+ _request_timeout=_request_timeout
1267
+ )
1268
+ return response_data.response
1269
+
1270
+
1271
+ def _get_maintenance_configs_serialize(
1272
+ self,
1273
+ _request_auth,
1274
+ _content_type,
1275
+ _headers,
1276
+ _host_index,
1277
+ ) -> RequestSerialized:
1278
+
1279
+ _host = None
1280
+
1281
+ _collection_formats: Dict[str, str] = {
1282
+ }
1283
+
1284
+ _path_params: Dict[str, str] = {}
1285
+ _query_params: List[Tuple[str, str]] = []
1286
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1287
+ _form_params: List[Tuple[str, str]] = []
1288
+ _files: Dict[
1289
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1290
+ ] = {}
1291
+ _body_params: Optional[bytes] = None
1292
+
1293
+ # process the path parameters
1294
+ # process the query parameters
1295
+ # process the header parameters
1296
+ # process the form parameters
1297
+ # process the body parameter
1298
+
1299
+
1300
+ # set the HTTP header `Accept`
1301
+ if 'Accept' not in _header_params:
1302
+ _header_params['Accept'] = self.api_client.select_header_accept(
1303
+ [
1304
+ 'application/json'
1305
+ ]
1306
+ )
1307
+
1308
+
1309
+ # authentication setting
1310
+ _auth_settings: List[str] = [
1311
+ 'ApiKeyAuth'
1312
+ ]
1313
+
1314
+ return self.api_client.param_serialize(
1315
+ method='GET',
1316
+ resource_path='/api/settings/maintenance',
1317
+ path_params=_path_params,
1318
+ query_params=_query_params,
1319
+ header_params=_header_params,
1320
+ body=_body_params,
1321
+ post_params=_form_params,
1322
+ files=_files,
1323
+ auth_settings=_auth_settings,
1324
+ collection_formats=_collection_formats,
1325
+ _host=_host,
1326
+ _request_auth=_request_auth
1327
+ )
1328
+
1329
+
1330
+
1331
+
1332
+ @validate_call
1333
+ def get_maintenance_configs_v2(
1334
+ self,
1335
+ _request_timeout: Union[
1336
+ None,
1337
+ Annotated[StrictFloat, Field(gt=0)],
1338
+ Tuple[
1339
+ Annotated[StrictFloat, Field(gt=0)],
1340
+ Annotated[StrictFloat, Field(gt=0)]
1341
+ ]
1342
+ ] = None,
1343
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1344
+ _content_type: Optional[StrictStr] = None,
1345
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1346
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1347
+ ) -> List[ValidatedMaintenanceConfigV2WithStateAndOccurrence]:
1348
+ """All maintenance configurations
1349
+
1350
+ This endpoint retrieves all available maintenance configurations.
1351
+
1352
+ :param _request_timeout: timeout setting for this request. If one
1353
+ number provided, it will be total request
1354
+ timeout. It can also be a pair (tuple) of
1355
+ (connection, read) timeouts.
1356
+ :type _request_timeout: int, tuple(int, int), optional
1357
+ :param _request_auth: set to override the auth_settings for an a single
1358
+ request; this effectively ignores the
1359
+ authentication in the spec for a single request.
1360
+ :type _request_auth: dict, optional
1361
+ :param _content_type: force content-type for the request.
1362
+ :type _content_type: str, Optional
1363
+ :param _headers: set to override the headers for a single
1364
+ request; this effectively ignores the headers
1365
+ in the spec for a single request.
1366
+ :type _headers: dict, optional
1367
+ :param _host_index: set to override the host_index for a single
1368
+ request; this effectively ignores the host_index
1369
+ in the spec for a single request.
1370
+ :type _host_index: int, optional
1371
+ :return: Returns the result object.
1372
+ """ # noqa: E501
1373
+
1374
+ _param = self._get_maintenance_configs_v2_serialize(
1375
+ _request_auth=_request_auth,
1376
+ _content_type=_content_type,
1377
+ _headers=_headers,
1378
+ _host_index=_host_index
1379
+ )
1380
+
1381
+ _response_types_map: Dict[str, Optional[str]] = {
1382
+ '200': "List[ValidatedMaintenanceConfigV2WithStateAndOccurrence]",
1383
+ }
1384
+ response_data = self.api_client.call_api(
1385
+ *_param,
1386
+ _request_timeout=_request_timeout
1387
+ )
1388
+ response_data.read()
1389
+ return self.api_client.response_deserialize(
1390
+ response_data=response_data,
1391
+ response_types_map=_response_types_map,
1392
+ ).data
1393
+
1394
+
1395
+ @validate_call
1396
+ def get_maintenance_configs_v2_with_http_info(
1397
+ self,
1398
+ _request_timeout: Union[
1399
+ None,
1400
+ Annotated[StrictFloat, Field(gt=0)],
1401
+ Tuple[
1402
+ Annotated[StrictFloat, Field(gt=0)],
1403
+ Annotated[StrictFloat, Field(gt=0)]
1404
+ ]
1405
+ ] = None,
1406
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1407
+ _content_type: Optional[StrictStr] = None,
1408
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1409
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1410
+ ) -> ApiResponse[List[ValidatedMaintenanceConfigV2WithStateAndOccurrence]]:
1411
+ """All maintenance configurations
1412
+
1413
+ This endpoint retrieves all available maintenance configurations.
1414
+
1415
+ :param _request_timeout: timeout setting for this request. If one
1416
+ number provided, it will be total request
1417
+ timeout. It can also be a pair (tuple) of
1418
+ (connection, read) timeouts.
1419
+ :type _request_timeout: int, tuple(int, int), optional
1420
+ :param _request_auth: set to override the auth_settings for an a single
1421
+ request; this effectively ignores the
1422
+ authentication in the spec for a single request.
1423
+ :type _request_auth: dict, optional
1424
+ :param _content_type: force content-type for the request.
1425
+ :type _content_type: str, Optional
1426
+ :param _headers: set to override the headers for a single
1427
+ request; this effectively ignores the headers
1428
+ in the spec for a single request.
1429
+ :type _headers: dict, optional
1430
+ :param _host_index: set to override the host_index for a single
1431
+ request; this effectively ignores the host_index
1432
+ in the spec for a single request.
1433
+ :type _host_index: int, optional
1434
+ :return: Returns the result object.
1435
+ """ # noqa: E501
1436
+
1437
+ _param = self._get_maintenance_configs_v2_serialize(
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
+ '200': "List[ValidatedMaintenanceConfigV2WithStateAndOccurrence]",
1446
+ }
1447
+ response_data = self.api_client.call_api(
1448
+ *_param,
1449
+ _request_timeout=_request_timeout
1450
+ )
1451
+ response_data.read()
1452
+ return self.api_client.response_deserialize(
1453
+ response_data=response_data,
1454
+ response_types_map=_response_types_map,
1455
+ )
1456
+
1457
+
1458
+ @validate_call
1459
+ def get_maintenance_configs_v2_without_preload_content(
1460
+ self,
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
+ """All maintenance configurations
1475
+
1476
+ This endpoint retrieves all available maintenance configurations.
1477
+
1478
+ :param _request_timeout: timeout setting for this request. If one
1479
+ number provided, it will be total request
1480
+ timeout. It can also be a pair (tuple) of
1481
+ (connection, read) timeouts.
1482
+ :type _request_timeout: int, tuple(int, int), optional
1483
+ :param _request_auth: set to override the auth_settings for an a single
1484
+ request; this effectively ignores the
1485
+ authentication in the spec for a single request.
1486
+ :type _request_auth: dict, optional
1487
+ :param _content_type: force content-type for the request.
1488
+ :type _content_type: str, Optional
1489
+ :param _headers: set to override the headers for a single
1490
+ request; this effectively ignores the headers
1491
+ in the spec for a single request.
1492
+ :type _headers: dict, optional
1493
+ :param _host_index: set to override the host_index for a single
1494
+ request; this effectively ignores the host_index
1495
+ in the spec for a single request.
1496
+ :type _host_index: int, optional
1497
+ :return: Returns the result object.
1498
+ """ # noqa: E501
1499
+
1500
+ _param = self._get_maintenance_configs_v2_serialize(
1501
+ _request_auth=_request_auth,
1502
+ _content_type=_content_type,
1503
+ _headers=_headers,
1504
+ _host_index=_host_index
1505
+ )
1506
+
1507
+ _response_types_map: Dict[str, Optional[str]] = {
1508
+ '200': "List[ValidatedMaintenanceConfigV2WithStateAndOccurrence]",
1509
+ }
1510
+ response_data = self.api_client.call_api(
1511
+ *_param,
1512
+ _request_timeout=_request_timeout
1513
+ )
1514
+ return response_data.response
1515
+
1516
+
1517
+ def _get_maintenance_configs_v2_serialize(
1518
+ self,
1519
+ _request_auth,
1520
+ _content_type,
1521
+ _headers,
1522
+ _host_index,
1523
+ ) -> RequestSerialized:
1524
+
1525
+ _host = None
1526
+
1527
+ _collection_formats: Dict[str, str] = {
1528
+ }
1529
+
1530
+ _path_params: Dict[str, str] = {}
1531
+ _query_params: List[Tuple[str, str]] = []
1532
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1533
+ _form_params: List[Tuple[str, str]] = []
1534
+ _files: Dict[
1535
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1536
+ ] = {}
1537
+ _body_params: Optional[bytes] = None
1538
+
1539
+ # process the path parameters
1540
+ # process the query parameters
1541
+ # process the header parameters
1542
+ # process the form parameters
1543
+ # process the body parameter
1544
+
1545
+
1546
+ # set the HTTP header `Accept`
1547
+ if 'Accept' not in _header_params:
1548
+ _header_params['Accept'] = self.api_client.select_header_accept(
1549
+ [
1550
+ 'application/json'
1551
+ ]
1552
+ )
1553
+
1554
+
1555
+ # authentication setting
1556
+ _auth_settings: List[str] = [
1557
+ 'ApiKeyAuth'
1558
+ ]
1559
+
1560
+ return self.api_client.param_serialize(
1561
+ method='GET',
1562
+ resource_path='/api/settings/v2/maintenance',
1563
+ path_params=_path_params,
1564
+ query_params=_query_params,
1565
+ header_params=_header_params,
1566
+ body=_body_params,
1567
+ post_params=_form_params,
1568
+ files=_files,
1569
+ auth_settings=_auth_settings,
1570
+ collection_formats=_collection_formats,
1571
+ _host=_host,
1572
+ _request_auth=_request_auth
1573
+ )
1574
+
1575
+
1576
+
1577
+
1578
+ @validate_call
1579
+ def pause_recurrent_maintenance_configuration(
1580
+ self,
1581
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to pause.")],
1582
+ _request_timeout: Union[
1583
+ None,
1584
+ Annotated[StrictFloat, Field(gt=0)],
1585
+ Tuple[
1586
+ Annotated[StrictFloat, Field(gt=0)],
1587
+ Annotated[StrictFloat, Field(gt=0)]
1588
+ ]
1589
+ ] = None,
1590
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1591
+ _content_type: Optional[StrictStr] = None,
1592
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1593
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1594
+ ) -> MaintenanceConfigV2WithStateAndOccurrence:
1595
+ """Pause maintenance configuration
1596
+
1597
+ This endpoint pauses a maintenance configuration given its ID. When you pause a maintenance configuration, you will start receiving alerts again for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to pause.
1598
+
1599
+ :param id: Id of the Maintenance Window configuration to pause. (required)
1600
+ :type id: str
1601
+ :param _request_timeout: timeout setting for this request. If one
1602
+ number provided, it will be total request
1603
+ timeout. It can also be a pair (tuple) of
1604
+ (connection, read) timeouts.
1605
+ :type _request_timeout: int, tuple(int, int), optional
1606
+ :param _request_auth: set to override the auth_settings for an a single
1607
+ request; this effectively ignores the
1608
+ authentication in the spec for a single request.
1609
+ :type _request_auth: dict, optional
1610
+ :param _content_type: force content-type for the request.
1611
+ :type _content_type: str, Optional
1612
+ :param _headers: set to override the headers for a single
1613
+ request; this effectively ignores the headers
1614
+ in the spec for a single request.
1615
+ :type _headers: dict, optional
1616
+ :param _host_index: set to override the host_index for a single
1617
+ request; this effectively ignores the host_index
1618
+ in the spec for a single request.
1619
+ :type _host_index: int, optional
1620
+ :return: Returns the result object.
1621
+ """ # noqa: E501
1622
+
1623
+ _param = self._pause_recurrent_maintenance_configuration_serialize(
1624
+ id=id,
1625
+ _request_auth=_request_auth,
1626
+ _content_type=_content_type,
1627
+ _headers=_headers,
1628
+ _host_index=_host_index
1629
+ )
1630
+
1631
+ _response_types_map: Dict[str, Optional[str]] = {
1632
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
1633
+ }
1634
+ response_data = self.api_client.call_api(
1635
+ *_param,
1636
+ _request_timeout=_request_timeout
1637
+ )
1638
+ response_data.read()
1639
+ return self.api_client.response_deserialize(
1640
+ response_data=response_data,
1641
+ response_types_map=_response_types_map,
1642
+ ).data
1643
+
1644
+
1645
+ @validate_call
1646
+ def pause_recurrent_maintenance_configuration_with_http_info(
1647
+ self,
1648
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to pause.")],
1649
+ _request_timeout: Union[
1650
+ None,
1651
+ Annotated[StrictFloat, Field(gt=0)],
1652
+ Tuple[
1653
+ Annotated[StrictFloat, Field(gt=0)],
1654
+ Annotated[StrictFloat, Field(gt=0)]
1655
+ ]
1656
+ ] = None,
1657
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1658
+ _content_type: Optional[StrictStr] = None,
1659
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1660
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1661
+ ) -> ApiResponse[MaintenanceConfigV2WithStateAndOccurrence]:
1662
+ """Pause maintenance configuration
1663
+
1664
+ This endpoint pauses a maintenance configuration given its ID. When you pause a maintenance configuration, you will start receiving alerts again for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to pause.
1665
+
1666
+ :param id: Id of the Maintenance Window configuration to pause. (required)
1667
+ :type id: str
1668
+ :param _request_timeout: timeout setting for this request. If one
1669
+ number provided, it will be total request
1670
+ timeout. It can also be a pair (tuple) of
1671
+ (connection, read) timeouts.
1672
+ :type _request_timeout: int, tuple(int, int), optional
1673
+ :param _request_auth: set to override the auth_settings for an a single
1674
+ request; this effectively ignores the
1675
+ authentication in the spec for a single request.
1676
+ :type _request_auth: dict, optional
1677
+ :param _content_type: force content-type for the request.
1678
+ :type _content_type: str, Optional
1679
+ :param _headers: set to override the headers for a single
1680
+ request; this effectively ignores the headers
1681
+ in the spec for a single request.
1682
+ :type _headers: dict, optional
1683
+ :param _host_index: set to override the host_index for a single
1684
+ request; this effectively ignores the host_index
1685
+ in the spec for a single request.
1686
+ :type _host_index: int, optional
1687
+ :return: Returns the result object.
1688
+ """ # noqa: E501
1689
+
1690
+ _param = self._pause_recurrent_maintenance_configuration_serialize(
1691
+ id=id,
1692
+ _request_auth=_request_auth,
1693
+ _content_type=_content_type,
1694
+ _headers=_headers,
1695
+ _host_index=_host_index
1696
+ )
1697
+
1698
+ _response_types_map: Dict[str, Optional[str]] = {
1699
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
1700
+ }
1701
+ response_data = self.api_client.call_api(
1702
+ *_param,
1703
+ _request_timeout=_request_timeout
1704
+ )
1705
+ response_data.read()
1706
+ return self.api_client.response_deserialize(
1707
+ response_data=response_data,
1708
+ response_types_map=_response_types_map,
1709
+ )
1710
+
1711
+
1712
+ @validate_call
1713
+ def pause_recurrent_maintenance_configuration_without_preload_content(
1714
+ self,
1715
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to pause.")],
1716
+ _request_timeout: Union[
1717
+ None,
1718
+ Annotated[StrictFloat, Field(gt=0)],
1719
+ Tuple[
1720
+ Annotated[StrictFloat, Field(gt=0)],
1721
+ Annotated[StrictFloat, Field(gt=0)]
1722
+ ]
1723
+ ] = None,
1724
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1725
+ _content_type: Optional[StrictStr] = None,
1726
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1727
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1728
+ ) -> RESTResponseType:
1729
+ """Pause maintenance configuration
1730
+
1731
+ This endpoint pauses a maintenance configuration given its ID. When you pause a maintenance configuration, you will start receiving alerts again for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to pause.
1732
+
1733
+ :param id: Id of the Maintenance Window configuration to pause. (required)
1734
+ :type id: str
1735
+ :param _request_timeout: timeout setting for this request. If one
1736
+ number provided, it will be total request
1737
+ timeout. It can also be a pair (tuple) of
1738
+ (connection, read) timeouts.
1739
+ :type _request_timeout: int, tuple(int, int), optional
1740
+ :param _request_auth: set to override the auth_settings for an a single
1741
+ request; this effectively ignores the
1742
+ authentication in the spec for a single request.
1743
+ :type _request_auth: dict, optional
1744
+ :param _content_type: force content-type for the request.
1745
+ :type _content_type: str, Optional
1746
+ :param _headers: set to override the headers for a single
1747
+ request; this effectively ignores the headers
1748
+ in the spec for a single request.
1749
+ :type _headers: dict, optional
1750
+ :param _host_index: set to override the host_index for a single
1751
+ request; this effectively ignores the host_index
1752
+ in the spec for a single request.
1753
+ :type _host_index: int, optional
1754
+ :return: Returns the result object.
1755
+ """ # noqa: E501
1756
+
1757
+ _param = self._pause_recurrent_maintenance_configuration_serialize(
1758
+ id=id,
1759
+ _request_auth=_request_auth,
1760
+ _content_type=_content_type,
1761
+ _headers=_headers,
1762
+ _host_index=_host_index
1763
+ )
1764
+
1765
+ _response_types_map: Dict[str, Optional[str]] = {
1766
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
1767
+ }
1768
+ response_data = self.api_client.call_api(
1769
+ *_param,
1770
+ _request_timeout=_request_timeout
1771
+ )
1772
+ return response_data.response
1773
+
1774
+
1775
+ def _pause_recurrent_maintenance_configuration_serialize(
1776
+ self,
1777
+ id,
1778
+ _request_auth,
1779
+ _content_type,
1780
+ _headers,
1781
+ _host_index,
1782
+ ) -> RequestSerialized:
1783
+
1784
+ _host = None
1785
+
1786
+ _collection_formats: Dict[str, str] = {
1787
+ }
1788
+
1789
+ _path_params: Dict[str, str] = {}
1790
+ _query_params: List[Tuple[str, str]] = []
1791
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1792
+ _form_params: List[Tuple[str, str]] = []
1793
+ _files: Dict[
1794
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1795
+ ] = {}
1796
+ _body_params: Optional[bytes] = None
1797
+
1798
+ # process the path parameters
1799
+ if id is not None:
1800
+ _path_params['id'] = id
1801
+ # process the query parameters
1802
+ # process the header parameters
1803
+ # process the form parameters
1804
+ # process the body parameter
1805
+
1806
+
1807
+ # set the HTTP header `Accept`
1808
+ if 'Accept' not in _header_params:
1809
+ _header_params['Accept'] = self.api_client.select_header_accept(
1810
+ [
1811
+ 'application/json'
1812
+ ]
1813
+ )
1814
+
1815
+
1816
+ # authentication setting
1817
+ _auth_settings: List[str] = [
1818
+ 'ApiKeyAuth'
1819
+ ]
1820
+
1821
+ return self.api_client.param_serialize(
1822
+ method='PUT',
1823
+ resource_path='/api/settings/v2/maintenance/{id}/pause',
1824
+ path_params=_path_params,
1825
+ query_params=_query_params,
1826
+ header_params=_header_params,
1827
+ body=_body_params,
1828
+ post_params=_form_params,
1829
+ files=_files,
1830
+ auth_settings=_auth_settings,
1831
+ collection_formats=_collection_formats,
1832
+ _host=_host,
1833
+ _request_auth=_request_auth
1834
+ )
1835
+
1836
+
1837
+
1838
+
1839
+ @validate_call
1840
+ def put_maintenance_config(
1841
+ self,
1842
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to update.")],
1843
+ maintenance_config: MaintenanceConfig,
1844
+ _request_timeout: Union[
1845
+ None,
1846
+ Annotated[StrictFloat, Field(gt=0)],
1847
+ Tuple[
1848
+ Annotated[StrictFloat, Field(gt=0)],
1849
+ Annotated[StrictFloat, Field(gt=0)]
1850
+ ]
1851
+ ] = None,
1852
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1853
+ _content_type: Optional[StrictStr] = None,
1854
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1855
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1856
+ ) -> None:
1857
+ """(Deprecated) Create or update maintenance configuration
1858
+
1859
+
1860
+ :param id: ID of the Maintenance Window Configuration to update. (required)
1861
+ :type id: str
1862
+ :param maintenance_config: (required)
1863
+ :type maintenance_config: MaintenanceConfig
1864
+ :param _request_timeout: timeout setting for this request. If one
1865
+ number provided, it will be total request
1866
+ timeout. It can also be a pair (tuple) of
1867
+ (connection, read) timeouts.
1868
+ :type _request_timeout: int, tuple(int, int), optional
1869
+ :param _request_auth: set to override the auth_settings for an a single
1870
+ request; this effectively ignores the
1871
+ authentication in the spec for a single request.
1872
+ :type _request_auth: dict, optional
1873
+ :param _content_type: force content-type for the request.
1874
+ :type _content_type: str, Optional
1875
+ :param _headers: set to override the headers for a single
1876
+ request; this effectively ignores the headers
1877
+ in the spec for a single request.
1878
+ :type _headers: dict, optional
1879
+ :param _host_index: set to override the host_index for a single
1880
+ request; this effectively ignores the host_index
1881
+ in the spec for a single request.
1882
+ :type _host_index: int, optional
1883
+ :return: Returns the result object.
1884
+ """ # noqa: E501
1885
+ warnings.warn("PUT /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
1886
+
1887
+ _param = self._put_maintenance_config_serialize(
1888
+ id=id,
1889
+ maintenance_config=maintenance_config,
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': None,
1898
+ '202': None,
1899
+ '400': None,
1900
+ }
1901
+ response_data = self.api_client.call_api(
1902
+ *_param,
1903
+ _request_timeout=_request_timeout
1904
+ )
1905
+ response_data.read()
1906
+ return self.api_client.response_deserialize(
1907
+ response_data=response_data,
1908
+ response_types_map=_response_types_map,
1909
+ ).data
1910
+
1911
+
1912
+ @validate_call
1913
+ def put_maintenance_config_with_http_info(
1914
+ self,
1915
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to update.")],
1916
+ maintenance_config: MaintenanceConfig,
1917
+ _request_timeout: Union[
1918
+ None,
1919
+ Annotated[StrictFloat, Field(gt=0)],
1920
+ Tuple[
1921
+ Annotated[StrictFloat, Field(gt=0)],
1922
+ Annotated[StrictFloat, Field(gt=0)]
1923
+ ]
1924
+ ] = None,
1925
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1926
+ _content_type: Optional[StrictStr] = None,
1927
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1928
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1929
+ ) -> ApiResponse[None]:
1930
+ """(Deprecated) Create or update maintenance configuration
1931
+
1932
+
1933
+ :param id: ID of the Maintenance Window Configuration to update. (required)
1934
+ :type id: str
1935
+ :param maintenance_config: (required)
1936
+ :type maintenance_config: MaintenanceConfig
1937
+ :param _request_timeout: timeout setting for this request. If one
1938
+ number provided, it will be total request
1939
+ timeout. It can also be a pair (tuple) of
1940
+ (connection, read) timeouts.
1941
+ :type _request_timeout: int, tuple(int, int), optional
1942
+ :param _request_auth: set to override the auth_settings for an a single
1943
+ request; this effectively ignores the
1944
+ authentication in the spec for a single request.
1945
+ :type _request_auth: dict, optional
1946
+ :param _content_type: force content-type for the request.
1947
+ :type _content_type: str, Optional
1948
+ :param _headers: set to override the headers for a single
1949
+ request; this effectively ignores the headers
1950
+ in the spec for a single request.
1951
+ :type _headers: dict, optional
1952
+ :param _host_index: set to override the host_index for a single
1953
+ request; this effectively ignores the host_index
1954
+ in the spec for a single request.
1955
+ :type _host_index: int, optional
1956
+ :return: Returns the result object.
1957
+ """ # noqa: E501
1958
+ warnings.warn("PUT /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
1959
+
1960
+ _param = self._put_maintenance_config_serialize(
1961
+ id=id,
1962
+ maintenance_config=maintenance_config,
1963
+ _request_auth=_request_auth,
1964
+ _content_type=_content_type,
1965
+ _headers=_headers,
1966
+ _host_index=_host_index
1967
+ )
1968
+
1969
+ _response_types_map: Dict[str, Optional[str]] = {
1970
+ '200': None,
1971
+ '202': None,
1972
+ '400': None,
1973
+ }
1974
+ response_data = self.api_client.call_api(
1975
+ *_param,
1976
+ _request_timeout=_request_timeout
1977
+ )
1978
+ response_data.read()
1979
+ return self.api_client.response_deserialize(
1980
+ response_data=response_data,
1981
+ response_types_map=_response_types_map,
1982
+ )
1983
+
1984
+
1985
+ @validate_call
1986
+ def put_maintenance_config_without_preload_content(
1987
+ self,
1988
+ id: Annotated[StrictStr, Field(description="ID of the Maintenance Window Configuration to update.")],
1989
+ maintenance_config: MaintenanceConfig,
1990
+ _request_timeout: Union[
1991
+ None,
1992
+ Annotated[StrictFloat, Field(gt=0)],
1993
+ Tuple[
1994
+ Annotated[StrictFloat, Field(gt=0)],
1995
+ Annotated[StrictFloat, Field(gt=0)]
1996
+ ]
1997
+ ] = None,
1998
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1999
+ _content_type: Optional[StrictStr] = None,
2000
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2001
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2002
+ ) -> RESTResponseType:
2003
+ """(Deprecated) Create or update maintenance configuration
2004
+
2005
+
2006
+ :param id: ID of the Maintenance Window Configuration to update. (required)
2007
+ :type id: str
2008
+ :param maintenance_config: (required)
2009
+ :type maintenance_config: MaintenanceConfig
2010
+ :param _request_timeout: timeout setting for this request. If one
2011
+ number provided, it will be total request
2012
+ timeout. It can also be a pair (tuple) of
2013
+ (connection, read) timeouts.
2014
+ :type _request_timeout: int, tuple(int, int), optional
2015
+ :param _request_auth: set to override the auth_settings for an a single
2016
+ request; this effectively ignores the
2017
+ authentication in the spec for a single request.
2018
+ :type _request_auth: dict, optional
2019
+ :param _content_type: force content-type for the request.
2020
+ :type _content_type: str, Optional
2021
+ :param _headers: set to override the headers for a single
2022
+ request; this effectively ignores the headers
2023
+ in the spec for a single request.
2024
+ :type _headers: dict, optional
2025
+ :param _host_index: set to override the host_index for a single
2026
+ request; this effectively ignores the host_index
2027
+ in the spec for a single request.
2028
+ :type _host_index: int, optional
2029
+ :return: Returns the result object.
2030
+ """ # noqa: E501
2031
+ warnings.warn("PUT /api/settings/maintenance/{id} is deprecated.", DeprecationWarning)
2032
+
2033
+ _param = self._put_maintenance_config_serialize(
2034
+ id=id,
2035
+ maintenance_config=maintenance_config,
2036
+ _request_auth=_request_auth,
2037
+ _content_type=_content_type,
2038
+ _headers=_headers,
2039
+ _host_index=_host_index
2040
+ )
2041
+
2042
+ _response_types_map: Dict[str, Optional[str]] = {
2043
+ '200': None,
2044
+ '202': None,
2045
+ '400': None,
2046
+ }
2047
+ response_data = self.api_client.call_api(
2048
+ *_param,
2049
+ _request_timeout=_request_timeout
2050
+ )
2051
+ return response_data.response
2052
+
2053
+
2054
+ def _put_maintenance_config_serialize(
2055
+ self,
2056
+ id,
2057
+ maintenance_config,
2058
+ _request_auth,
2059
+ _content_type,
2060
+ _headers,
2061
+ _host_index,
2062
+ ) -> RequestSerialized:
2063
+
2064
+ _host = None
2065
+
2066
+ _collection_formats: Dict[str, str] = {
2067
+ }
2068
+
2069
+ _path_params: Dict[str, str] = {}
2070
+ _query_params: List[Tuple[str, str]] = []
2071
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2072
+ _form_params: List[Tuple[str, str]] = []
2073
+ _files: Dict[
2074
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2075
+ ] = {}
2076
+ _body_params: Optional[bytes] = None
2077
+
2078
+ # process the path parameters
2079
+ if id is not None:
2080
+ _path_params['id'] = id
2081
+ # process the query parameters
2082
+ # process the header parameters
2083
+ # process the form parameters
2084
+ # process the body parameter
2085
+ if maintenance_config is not None:
2086
+ _body_params = maintenance_config
2087
+
2088
+
2089
+
2090
+ # set the HTTP header `Content-Type`
2091
+ if _content_type:
2092
+ _header_params['Content-Type'] = _content_type
2093
+ else:
2094
+ _default_content_type = (
2095
+ self.api_client.select_header_content_type(
2096
+ [
2097
+ 'application/json'
2098
+ ]
2099
+ )
2100
+ )
2101
+ if _default_content_type is not None:
2102
+ _header_params['Content-Type'] = _default_content_type
2103
+
2104
+ # authentication setting
2105
+ _auth_settings: List[str] = [
2106
+ 'ApiKeyAuth'
2107
+ ]
2108
+
2109
+ return self.api_client.param_serialize(
2110
+ method='PUT',
2111
+ resource_path='/api/settings/maintenance/{id}',
2112
+ path_params=_path_params,
2113
+ query_params=_query_params,
2114
+ header_params=_header_params,
2115
+ body=_body_params,
2116
+ post_params=_form_params,
2117
+ files=_files,
2118
+ auth_settings=_auth_settings,
2119
+ collection_formats=_collection_formats,
2120
+ _host=_host,
2121
+ _request_auth=_request_auth
2122
+ )
2123
+
2124
+
2125
+
2126
+
2127
+ @validate_call
2128
+ def put_maintenance_config_v2(
2129
+ self,
2130
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to update.")],
2131
+ maintenance_config_v2: MaintenanceConfigV2,
2132
+ _request_timeout: Union[
2133
+ None,
2134
+ Annotated[StrictFloat, Field(gt=0)],
2135
+ Tuple[
2136
+ Annotated[StrictFloat, Field(gt=0)],
2137
+ Annotated[StrictFloat, Field(gt=0)]
2138
+ ]
2139
+ ] = None,
2140
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2141
+ _content_type: Optional[StrictStr] = None,
2142
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2143
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2144
+ ) -> None:
2145
+ """Create or update maintenance configuration
2146
+
2147
+ This endpoint creates or updates a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to create or update. ### Maintenance Configuration Input This is a description for the fields in the request body: **id**: maintenance configuration unique id **name**: maintenance configuration name **query**: dynamic focus query used to filter alert notifications that will be muted **scheduling**: defines when the maintenance configuration will be scheduled - **start**: time in milliseconds from epoch - **duration**: duration of each maintenance window occurrence in the maintenance configuration - **amount**: the amount of time - **unit**: the unit of time - **type**: `ONE_TIME` or `RECURRENT` - **rrule**: for `RECURRENT` mainteance configurations, the RRULE standard from the [iCalendar Spec](https://datatracker.ietf.org/doc/html/rfc5545) - **paused**: indicates whether maintenance configuration is paused or not **tagFilterExpressionEnabled (OPTIONAL) (Closed Beta)**: indicates whether tagFilterExpression is used to filter alert notifications **tagFilterExpression (OPTIONAL) (Closed Beta)**: tag filter expression used to filter alert notifications that will be muted (this field needs to be provided if **tagFilterExpressionEnabled** is set to true) ### **Scope** There are four supported scopes; application perspective, dynamic focus query, synthetic tests, all entities. Below is the configuration corresponding to each scope: **1. Application Perspective**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **2. Dynamic Focus Query**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **3. Synthetic Tests**    dfq: \"\"    tfeEnabled: true    tfe: a valid tag filter expression **4. All Entities**    dfq: \"\"    tfeEnabled: false    tfe: null ### **RRULE Support** You can use the [RRULE tool](https://icalendar.org/rrule-tool.html) for generating RRULEs. The following RRULE tokens are supported: `FREQ`, `UNTIL`, `COUNT`, `INTERVAL`, `BYDAY`, `BYMONTHDAY`, `BYMONTH`. **Additional Constraints:** 1. For `MONTHLY` and `YEARLY`, you can only specify one value for `BYDAY` and `BYMONTHDAY`. 2. The maximum `INTERVAL` allowed is as follows: - DAILY is 365 - WEEKLY is 52 - MONTHLY is 12 - YEARLY is 1 3. If an `UNTIL` date is specified, the value needs to be in UTC. ### **Tag Filter Expression Support** We support the following tag filters: - synthetic.syntheticType - synthetic.testName - synthetic.locationLabelAggregated - synthetic.tags
2148
+
2149
+ :param id: Id of the Maintenance Window configuration to update. (required)
2150
+ :type id: str
2151
+ :param maintenance_config_v2: (required)
2152
+ :type maintenance_config_v2: MaintenanceConfigV2
2153
+ :param _request_timeout: timeout setting for this request. If one
2154
+ number provided, it will be total request
2155
+ timeout. It can also be a pair (tuple) of
2156
+ (connection, read) timeouts.
2157
+ :type _request_timeout: int, tuple(int, int), optional
2158
+ :param _request_auth: set to override the auth_settings for an a single
2159
+ request; this effectively ignores the
2160
+ authentication in the spec for a single request.
2161
+ :type _request_auth: dict, optional
2162
+ :param _content_type: force content-type for the request.
2163
+ :type _content_type: str, Optional
2164
+ :param _headers: set to override the headers for a single
2165
+ request; this effectively ignores the headers
2166
+ in the spec for a single request.
2167
+ :type _headers: dict, optional
2168
+ :param _host_index: set to override the host_index for a single
2169
+ request; this effectively ignores the host_index
2170
+ in the spec for a single request.
2171
+ :type _host_index: int, optional
2172
+ :return: Returns the result object.
2173
+ """ # noqa: E501
2174
+
2175
+ _param = self._put_maintenance_config_v2_serialize(
2176
+ id=id,
2177
+ maintenance_config_v2=maintenance_config_v2,
2178
+ _request_auth=_request_auth,
2179
+ _content_type=_content_type,
2180
+ _headers=_headers,
2181
+ _host_index=_host_index
2182
+ )
2183
+
2184
+ _response_types_map: Dict[str, Optional[str]] = {
2185
+ '200': None,
2186
+ '202': None,
2187
+ '400': None,
2188
+ '422': None,
2189
+ }
2190
+ response_data = self.api_client.call_api(
2191
+ *_param,
2192
+ _request_timeout=_request_timeout
2193
+ )
2194
+ response_data.read()
2195
+ return self.api_client.response_deserialize(
2196
+ response_data=response_data,
2197
+ response_types_map=_response_types_map,
2198
+ ).data
2199
+
2200
+
2201
+ @validate_call
2202
+ def put_maintenance_config_v2_with_http_info(
2203
+ self,
2204
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to update.")],
2205
+ maintenance_config_v2: MaintenanceConfigV2,
2206
+ _request_timeout: Union[
2207
+ None,
2208
+ Annotated[StrictFloat, Field(gt=0)],
2209
+ Tuple[
2210
+ Annotated[StrictFloat, Field(gt=0)],
2211
+ Annotated[StrictFloat, Field(gt=0)]
2212
+ ]
2213
+ ] = None,
2214
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2215
+ _content_type: Optional[StrictStr] = None,
2216
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2217
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2218
+ ) -> ApiResponse[None]:
2219
+ """Create or update maintenance configuration
2220
+
2221
+ This endpoint creates or updates a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to create or update. ### Maintenance Configuration Input This is a description for the fields in the request body: **id**: maintenance configuration unique id **name**: maintenance configuration name **query**: dynamic focus query used to filter alert notifications that will be muted **scheduling**: defines when the maintenance configuration will be scheduled - **start**: time in milliseconds from epoch - **duration**: duration of each maintenance window occurrence in the maintenance configuration - **amount**: the amount of time - **unit**: the unit of time - **type**: `ONE_TIME` or `RECURRENT` - **rrule**: for `RECURRENT` mainteance configurations, the RRULE standard from the [iCalendar Spec](https://datatracker.ietf.org/doc/html/rfc5545) - **paused**: indicates whether maintenance configuration is paused or not **tagFilterExpressionEnabled (OPTIONAL) (Closed Beta)**: indicates whether tagFilterExpression is used to filter alert notifications **tagFilterExpression (OPTIONAL) (Closed Beta)**: tag filter expression used to filter alert notifications that will be muted (this field needs to be provided if **tagFilterExpressionEnabled** is set to true) ### **Scope** There are four supported scopes; application perspective, dynamic focus query, synthetic tests, all entities. Below is the configuration corresponding to each scope: **1. Application Perspective**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **2. Dynamic Focus Query**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **3. Synthetic Tests**    dfq: \"\"    tfeEnabled: true    tfe: a valid tag filter expression **4. All Entities**    dfq: \"\"    tfeEnabled: false    tfe: null ### **RRULE Support** You can use the [RRULE tool](https://icalendar.org/rrule-tool.html) for generating RRULEs. The following RRULE tokens are supported: `FREQ`, `UNTIL`, `COUNT`, `INTERVAL`, `BYDAY`, `BYMONTHDAY`, `BYMONTH`. **Additional Constraints:** 1. For `MONTHLY` and `YEARLY`, you can only specify one value for `BYDAY` and `BYMONTHDAY`. 2. The maximum `INTERVAL` allowed is as follows: - DAILY is 365 - WEEKLY is 52 - MONTHLY is 12 - YEARLY is 1 3. If an `UNTIL` date is specified, the value needs to be in UTC. ### **Tag Filter Expression Support** We support the following tag filters: - synthetic.syntheticType - synthetic.testName - synthetic.locationLabelAggregated - synthetic.tags
2222
+
2223
+ :param id: Id of the Maintenance Window configuration to update. (required)
2224
+ :type id: str
2225
+ :param maintenance_config_v2: (required)
2226
+ :type maintenance_config_v2: MaintenanceConfigV2
2227
+ :param _request_timeout: timeout setting for this request. If one
2228
+ number provided, it will be total request
2229
+ timeout. It can also be a pair (tuple) of
2230
+ (connection, read) timeouts.
2231
+ :type _request_timeout: int, tuple(int, int), optional
2232
+ :param _request_auth: set to override the auth_settings for an a single
2233
+ request; this effectively ignores the
2234
+ authentication in the spec for a single request.
2235
+ :type _request_auth: dict, optional
2236
+ :param _content_type: force content-type for the request.
2237
+ :type _content_type: str, Optional
2238
+ :param _headers: set to override the headers for a single
2239
+ request; this effectively ignores the headers
2240
+ in the spec for a single request.
2241
+ :type _headers: dict, optional
2242
+ :param _host_index: set to override the host_index for a single
2243
+ request; this effectively ignores the host_index
2244
+ in the spec for a single request.
2245
+ :type _host_index: int, optional
2246
+ :return: Returns the result object.
2247
+ """ # noqa: E501
2248
+
2249
+ _param = self._put_maintenance_config_v2_serialize(
2250
+ id=id,
2251
+ maintenance_config_v2=maintenance_config_v2,
2252
+ _request_auth=_request_auth,
2253
+ _content_type=_content_type,
2254
+ _headers=_headers,
2255
+ _host_index=_host_index
2256
+ )
2257
+
2258
+ _response_types_map: Dict[str, Optional[str]] = {
2259
+ '200': None,
2260
+ '202': None,
2261
+ '400': None,
2262
+ '422': None,
2263
+ }
2264
+ response_data = self.api_client.call_api(
2265
+ *_param,
2266
+ _request_timeout=_request_timeout
2267
+ )
2268
+ response_data.read()
2269
+ return self.api_client.response_deserialize(
2270
+ response_data=response_data,
2271
+ response_types_map=_response_types_map,
2272
+ )
2273
+
2274
+
2275
+ @validate_call
2276
+ def put_maintenance_config_v2_without_preload_content(
2277
+ self,
2278
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to update.")],
2279
+ maintenance_config_v2: MaintenanceConfigV2,
2280
+ _request_timeout: Union[
2281
+ None,
2282
+ Annotated[StrictFloat, Field(gt=0)],
2283
+ Tuple[
2284
+ Annotated[StrictFloat, Field(gt=0)],
2285
+ Annotated[StrictFloat, Field(gt=0)]
2286
+ ]
2287
+ ] = None,
2288
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2289
+ _content_type: Optional[StrictStr] = None,
2290
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2291
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2292
+ ) -> RESTResponseType:
2293
+ """Create or update maintenance configuration
2294
+
2295
+ This endpoint creates or updates a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to create or update. ### Maintenance Configuration Input This is a description for the fields in the request body: **id**: maintenance configuration unique id **name**: maintenance configuration name **query**: dynamic focus query used to filter alert notifications that will be muted **scheduling**: defines when the maintenance configuration will be scheduled - **start**: time in milliseconds from epoch - **duration**: duration of each maintenance window occurrence in the maintenance configuration - **amount**: the amount of time - **unit**: the unit of time - **type**: `ONE_TIME` or `RECURRENT` - **rrule**: for `RECURRENT` mainteance configurations, the RRULE standard from the [iCalendar Spec](https://datatracker.ietf.org/doc/html/rfc5545) - **paused**: indicates whether maintenance configuration is paused or not **tagFilterExpressionEnabled (OPTIONAL) (Closed Beta)**: indicates whether tagFilterExpression is used to filter alert notifications **tagFilterExpression (OPTIONAL) (Closed Beta)**: tag filter expression used to filter alert notifications that will be muted (this field needs to be provided if **tagFilterExpressionEnabled** is set to true) ### **Scope** There are four supported scopes; application perspective, dynamic focus query, synthetic tests, all entities. Below is the configuration corresponding to each scope: **1. Application Perspective**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **2. Dynamic Focus Query**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **3. Synthetic Tests**    dfq: \"\"    tfeEnabled: true    tfe: a valid tag filter expression **4. All Entities**    dfq: \"\"    tfeEnabled: false    tfe: null ### **RRULE Support** You can use the [RRULE tool](https://icalendar.org/rrule-tool.html) for generating RRULEs. The following RRULE tokens are supported: `FREQ`, `UNTIL`, `COUNT`, `INTERVAL`, `BYDAY`, `BYMONTHDAY`, `BYMONTH`. **Additional Constraints:** 1. For `MONTHLY` and `YEARLY`, you can only specify one value for `BYDAY` and `BYMONTHDAY`. 2. The maximum `INTERVAL` allowed is as follows: - DAILY is 365 - WEEKLY is 52 - MONTHLY is 12 - YEARLY is 1 3. If an `UNTIL` date is specified, the value needs to be in UTC. ### **Tag Filter Expression Support** We support the following tag filters: - synthetic.syntheticType - synthetic.testName - synthetic.locationLabelAggregated - synthetic.tags
2296
+
2297
+ :param id: Id of the Maintenance Window configuration to update. (required)
2298
+ :type id: str
2299
+ :param maintenance_config_v2: (required)
2300
+ :type maintenance_config_v2: MaintenanceConfigV2
2301
+ :param _request_timeout: timeout setting for this request. If one
2302
+ number provided, it will be total request
2303
+ timeout. It can also be a pair (tuple) of
2304
+ (connection, read) timeouts.
2305
+ :type _request_timeout: int, tuple(int, int), optional
2306
+ :param _request_auth: set to override the auth_settings for an a single
2307
+ request; this effectively ignores the
2308
+ authentication in the spec for a single request.
2309
+ :type _request_auth: dict, optional
2310
+ :param _content_type: force content-type for the request.
2311
+ :type _content_type: str, Optional
2312
+ :param _headers: set to override the headers for a single
2313
+ request; this effectively ignores the headers
2314
+ in the spec for a single request.
2315
+ :type _headers: dict, optional
2316
+ :param _host_index: set to override the host_index for a single
2317
+ request; this effectively ignores the host_index
2318
+ in the spec for a single request.
2319
+ :type _host_index: int, optional
2320
+ :return: Returns the result object.
2321
+ """ # noqa: E501
2322
+
2323
+ _param = self._put_maintenance_config_v2_serialize(
2324
+ id=id,
2325
+ maintenance_config_v2=maintenance_config_v2,
2326
+ _request_auth=_request_auth,
2327
+ _content_type=_content_type,
2328
+ _headers=_headers,
2329
+ _host_index=_host_index
2330
+ )
2331
+
2332
+ _response_types_map: Dict[str, Optional[str]] = {
2333
+ '200': None,
2334
+ '202': None,
2335
+ '400': None,
2336
+ '422': None,
2337
+ }
2338
+ response_data = self.api_client.call_api(
2339
+ *_param,
2340
+ _request_timeout=_request_timeout
2341
+ )
2342
+ return response_data.response
2343
+
2344
+
2345
+ def _put_maintenance_config_v2_serialize(
2346
+ self,
2347
+ id,
2348
+ maintenance_config_v2,
2349
+ _request_auth,
2350
+ _content_type,
2351
+ _headers,
2352
+ _host_index,
2353
+ ) -> RequestSerialized:
2354
+
2355
+ _host = None
2356
+
2357
+ _collection_formats: Dict[str, str] = {
2358
+ }
2359
+
2360
+ _path_params: Dict[str, str] = {}
2361
+ _query_params: List[Tuple[str, str]] = []
2362
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2363
+ _form_params: List[Tuple[str, str]] = []
2364
+ _files: Dict[
2365
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2366
+ ] = {}
2367
+ _body_params: Optional[bytes] = None
2368
+
2369
+ # process the path parameters
2370
+ if id is not None:
2371
+ _path_params['id'] = id
2372
+ # process the query parameters
2373
+ # process the header parameters
2374
+ # process the form parameters
2375
+ # process the body parameter
2376
+ if maintenance_config_v2 is not None:
2377
+ _body_params = maintenance_config_v2
2378
+
2379
+
2380
+ # set the HTTP header `Accept`
2381
+ if 'Accept' not in _header_params:
2382
+ _header_params['Accept'] = self.api_client.select_header_accept(
2383
+ [
2384
+ 'application/json'
2385
+ ]
2386
+ )
2387
+
2388
+ # set the HTTP header `Content-Type`
2389
+ if _content_type:
2390
+ _header_params['Content-Type'] = _content_type
2391
+ else:
2392
+ _default_content_type = (
2393
+ self.api_client.select_header_content_type(
2394
+ [
2395
+ 'application/json'
2396
+ ]
2397
+ )
2398
+ )
2399
+ if _default_content_type is not None:
2400
+ _header_params['Content-Type'] = _default_content_type
2401
+
2402
+ # authentication setting
2403
+ _auth_settings: List[str] = [
2404
+ 'ApiKeyAuth'
2405
+ ]
2406
+
2407
+ return self.api_client.param_serialize(
2408
+ method='PUT',
2409
+ resource_path='/api/settings/v2/maintenance/{id}',
2410
+ path_params=_path_params,
2411
+ query_params=_query_params,
2412
+ header_params=_header_params,
2413
+ body=_body_params,
2414
+ post_params=_form_params,
2415
+ files=_files,
2416
+ auth_settings=_auth_settings,
2417
+ collection_formats=_collection_formats,
2418
+ _host=_host,
2419
+ _request_auth=_request_auth
2420
+ )
2421
+
2422
+
2423
+
2424
+
2425
+ @validate_call
2426
+ def resume_recurrent_maintenance_configuration(
2427
+ self,
2428
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to resume.")],
2429
+ _request_timeout: Union[
2430
+ None,
2431
+ Annotated[StrictFloat, Field(gt=0)],
2432
+ Tuple[
2433
+ Annotated[StrictFloat, Field(gt=0)],
2434
+ Annotated[StrictFloat, Field(gt=0)]
2435
+ ]
2436
+ ] = None,
2437
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2438
+ _content_type: Optional[StrictStr] = None,
2439
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2440
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2441
+ ) -> MaintenanceConfigV2WithStateAndOccurrence:
2442
+ """Resume maintenance configuration
2443
+
2444
+ This endpoint resumes a maintenance configuration given its ID. If the maintenance configuration becomes active when you resume the maintenance configuration, you will not receive alerts for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to resume.
2445
+
2446
+ :param id: Id of the Maintenance Window configuration to resume. (required)
2447
+ :type id: str
2448
+ :param _request_timeout: timeout setting for this request. If one
2449
+ number provided, it will be total request
2450
+ timeout. It can also be a pair (tuple) of
2451
+ (connection, read) timeouts.
2452
+ :type _request_timeout: int, tuple(int, int), optional
2453
+ :param _request_auth: set to override the auth_settings for an a single
2454
+ request; this effectively ignores the
2455
+ authentication in the spec for a single request.
2456
+ :type _request_auth: dict, optional
2457
+ :param _content_type: force content-type for the request.
2458
+ :type _content_type: str, Optional
2459
+ :param _headers: set to override the headers for a single
2460
+ request; this effectively ignores the headers
2461
+ in the spec for a single request.
2462
+ :type _headers: dict, optional
2463
+ :param _host_index: set to override the host_index for a single
2464
+ request; this effectively ignores the host_index
2465
+ in the spec for a single request.
2466
+ :type _host_index: int, optional
2467
+ :return: Returns the result object.
2468
+ """ # noqa: E501
2469
+
2470
+ _param = self._resume_recurrent_maintenance_configuration_serialize(
2471
+ id=id,
2472
+ _request_auth=_request_auth,
2473
+ _content_type=_content_type,
2474
+ _headers=_headers,
2475
+ _host_index=_host_index
2476
+ )
2477
+
2478
+ _response_types_map: Dict[str, Optional[str]] = {
2479
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
2480
+ }
2481
+ response_data = self.api_client.call_api(
2482
+ *_param,
2483
+ _request_timeout=_request_timeout
2484
+ )
2485
+ response_data.read()
2486
+ return self.api_client.response_deserialize(
2487
+ response_data=response_data,
2488
+ response_types_map=_response_types_map,
2489
+ ).data
2490
+
2491
+
2492
+ @validate_call
2493
+ def resume_recurrent_maintenance_configuration_with_http_info(
2494
+ self,
2495
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to resume.")],
2496
+ _request_timeout: Union[
2497
+ None,
2498
+ Annotated[StrictFloat, Field(gt=0)],
2499
+ Tuple[
2500
+ Annotated[StrictFloat, Field(gt=0)],
2501
+ Annotated[StrictFloat, Field(gt=0)]
2502
+ ]
2503
+ ] = None,
2504
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2505
+ _content_type: Optional[StrictStr] = None,
2506
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2507
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2508
+ ) -> ApiResponse[MaintenanceConfigV2WithStateAndOccurrence]:
2509
+ """Resume maintenance configuration
2510
+
2511
+ This endpoint resumes a maintenance configuration given its ID. If the maintenance configuration becomes active when you resume the maintenance configuration, you will not receive alerts for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to resume.
2512
+
2513
+ :param id: Id of the Maintenance Window configuration to resume. (required)
2514
+ :type id: str
2515
+ :param _request_timeout: timeout setting for this request. If one
2516
+ number provided, it will be total request
2517
+ timeout. It can also be a pair (tuple) of
2518
+ (connection, read) timeouts.
2519
+ :type _request_timeout: int, tuple(int, int), optional
2520
+ :param _request_auth: set to override the auth_settings for an a single
2521
+ request; this effectively ignores the
2522
+ authentication in the spec for a single request.
2523
+ :type _request_auth: dict, optional
2524
+ :param _content_type: force content-type for the request.
2525
+ :type _content_type: str, Optional
2526
+ :param _headers: set to override the headers for a single
2527
+ request; this effectively ignores the headers
2528
+ in the spec for a single request.
2529
+ :type _headers: dict, optional
2530
+ :param _host_index: set to override the host_index for a single
2531
+ request; this effectively ignores the host_index
2532
+ in the spec for a single request.
2533
+ :type _host_index: int, optional
2534
+ :return: Returns the result object.
2535
+ """ # noqa: E501
2536
+
2537
+ _param = self._resume_recurrent_maintenance_configuration_serialize(
2538
+ id=id,
2539
+ _request_auth=_request_auth,
2540
+ _content_type=_content_type,
2541
+ _headers=_headers,
2542
+ _host_index=_host_index
2543
+ )
2544
+
2545
+ _response_types_map: Dict[str, Optional[str]] = {
2546
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
2547
+ }
2548
+ response_data = self.api_client.call_api(
2549
+ *_param,
2550
+ _request_timeout=_request_timeout
2551
+ )
2552
+ response_data.read()
2553
+ return self.api_client.response_deserialize(
2554
+ response_data=response_data,
2555
+ response_types_map=_response_types_map,
2556
+ )
2557
+
2558
+
2559
+ @validate_call
2560
+ def resume_recurrent_maintenance_configuration_without_preload_content(
2561
+ self,
2562
+ id: Annotated[StrictStr, Field(description="Id of the Maintenance Window configuration to resume.")],
2563
+ _request_timeout: Union[
2564
+ None,
2565
+ Annotated[StrictFloat, Field(gt=0)],
2566
+ Tuple[
2567
+ Annotated[StrictFloat, Field(gt=0)],
2568
+ Annotated[StrictFloat, Field(gt=0)]
2569
+ ]
2570
+ ] = None,
2571
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2572
+ _content_type: Optional[StrictStr] = None,
2573
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2574
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2575
+ ) -> RESTResponseType:
2576
+ """Resume maintenance configuration
2577
+
2578
+ This endpoint resumes a maintenance configuration given its ID. If the maintenance configuration becomes active when you resume the maintenance configuration, you will not receive alerts for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to resume.
2579
+
2580
+ :param id: Id of the Maintenance Window configuration to resume. (required)
2581
+ :type id: str
2582
+ :param _request_timeout: timeout setting for this request. If one
2583
+ number provided, it will be total request
2584
+ timeout. It can also be a pair (tuple) of
2585
+ (connection, read) timeouts.
2586
+ :type _request_timeout: int, tuple(int, int), optional
2587
+ :param _request_auth: set to override the auth_settings for an a single
2588
+ request; this effectively ignores the
2589
+ authentication in the spec for a single request.
2590
+ :type _request_auth: dict, optional
2591
+ :param _content_type: force content-type for the request.
2592
+ :type _content_type: str, Optional
2593
+ :param _headers: set to override the headers for a single
2594
+ request; this effectively ignores the headers
2595
+ in the spec for a single request.
2596
+ :type _headers: dict, optional
2597
+ :param _host_index: set to override the host_index for a single
2598
+ request; this effectively ignores the host_index
2599
+ in the spec for a single request.
2600
+ :type _host_index: int, optional
2601
+ :return: Returns the result object.
2602
+ """ # noqa: E501
2603
+
2604
+ _param = self._resume_recurrent_maintenance_configuration_serialize(
2605
+ id=id,
2606
+ _request_auth=_request_auth,
2607
+ _content_type=_content_type,
2608
+ _headers=_headers,
2609
+ _host_index=_host_index
2610
+ )
2611
+
2612
+ _response_types_map: Dict[str, Optional[str]] = {
2613
+ '200': "MaintenanceConfigV2WithStateAndOccurrence",
2614
+ }
2615
+ response_data = self.api_client.call_api(
2616
+ *_param,
2617
+ _request_timeout=_request_timeout
2618
+ )
2619
+ return response_data.response
2620
+
2621
+
2622
+ def _resume_recurrent_maintenance_configuration_serialize(
2623
+ self,
2624
+ id,
2625
+ _request_auth,
2626
+ _content_type,
2627
+ _headers,
2628
+ _host_index,
2629
+ ) -> RequestSerialized:
2630
+
2631
+ _host = None
2632
+
2633
+ _collection_formats: Dict[str, str] = {
2634
+ }
2635
+
2636
+ _path_params: Dict[str, str] = {}
2637
+ _query_params: List[Tuple[str, str]] = []
2638
+ _header_params: Dict[str, Optional[str]] = _headers or {}
2639
+ _form_params: List[Tuple[str, str]] = []
2640
+ _files: Dict[
2641
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
2642
+ ] = {}
2643
+ _body_params: Optional[bytes] = None
2644
+
2645
+ # process the path parameters
2646
+ if id is not None:
2647
+ _path_params['id'] = id
2648
+ # process the query parameters
2649
+ # process the header parameters
2650
+ # process the form parameters
2651
+ # process the body parameter
2652
+
2653
+
2654
+ # set the HTTP header `Accept`
2655
+ if 'Accept' not in _header_params:
2656
+ _header_params['Accept'] = self.api_client.select_header_accept(
2657
+ [
2658
+ 'application/json'
2659
+ ]
2660
+ )
2661
+
2662
+
2663
+ # authentication setting
2664
+ _auth_settings: List[str] = [
2665
+ 'ApiKeyAuth'
2666
+ ]
2667
+
2668
+ return self.api_client.param_serialize(
2669
+ method='PUT',
2670
+ resource_path='/api/settings/v2/maintenance/{id}/resume',
2671
+ path_params=_path_params,
2672
+ query_params=_query_params,
2673
+ header_params=_header_params,
2674
+ body=_body_params,
2675
+ post_params=_form_params,
2676
+ files=_files,
2677
+ auth_settings=_auth_settings,
2678
+ collection_formats=_collection_formats,
2679
+ _host=_host,
2680
+ _request_auth=_request_auth
2681
+ )
2682
+
2683
+