stackit-observability 0.10.1__tar.gz → 0.12.0__tar.gz

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 (123) hide show
  1. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/PKG-INFO +5 -2
  2. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/pyproject.toml +1 -1
  3. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/__init__.py +12 -0
  4. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/api/default_api.py +37 -25
  5. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/__init__.py +9 -0
  6. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_rule.py +1 -1
  7. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_rule_record.py +1 -1
  8. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/cert_check_response.py +8 -1
  9. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alertgroups_payload.py +1 -1
  10. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alertrules_payload.py +1 -1
  11. stackit_observability-0.12.0/src/stackit/observability/models/create_cert_check400_response.py +155 -0
  12. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_instance_payload.py +23 -5
  13. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_logs_alertgroups_payload.py +5 -5
  14. stackit_observability-0.12.0/src/stackit/observability/models/create_logs_alertgroups_payload_rules_inner.py +114 -0
  15. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/grafana_oauth.py +5 -0
  16. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/http_check_response.py +8 -1
  17. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/instance_sensitive_data.py +8 -0
  18. stackit_observability-0.10.1/src/stackit/observability/models/update_alertgroups_request_inner_rules_inner.py → stackit_observability-0.12.0/src/stackit/observability/models/partial_update_alertrules_request_inner.py +4 -4
  19. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/plan.py +8 -1
  20. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/route_serializer.py +7 -1
  21. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alertgroup_payload.py +1 -1
  22. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alertgroups_request_inner.py +1 -1
  23. stackit_observability-0.12.0/src/stackit/observability/models/update_alertgroups_request_inner_rules_inner.py +114 -0
  24. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_credentials_remote_write_config_payload.py +7 -1
  25. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_grafana_configs_payload.py +2 -2
  26. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_grafana_configs_payload_generic_oauth.py +20 -5
  27. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_instance_payload.py +23 -5
  28. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_logs_alertgroup_payload.py +5 -5
  29. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/LICENSE.md +0 -0
  30. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/NOTICE.txt +0 -0
  31. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/README.md +0 -0
  32. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/api/__init__.py +0 -0
  33. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/api_client.py +0 -0
  34. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/api_response.py +0 -0
  35. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/configuration.py +0 -0
  36. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/exceptions.py +0 -0
  37. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert.py +0 -0
  38. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_config_receivers_response.py +0 -0
  39. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_config_route_response.py +0 -0
  40. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_group.py +0 -0
  41. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_group_response.py +0 -0
  42. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_groups_response.py +0 -0
  43. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/alert_rules_response.py +0 -0
  44. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/basic_auth.py +0 -0
  45. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/cert_check_child_response.py +0 -0
  46. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alert_config_receiver_payload.py +0 -0
  47. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alert_config_receiver_payload_email_configs_inner.py +0 -0
  48. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alert_config_receiver_payload_opsgenie_configs_inner.py +0 -0
  49. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alert_config_receiver_payload_web_hook_configs_inner.py +0 -0
  50. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alert_config_route_payload.py +0 -0
  51. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_alert_config_route_payload_routes_inner.py +0 -0
  52. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_cert_check_payload.py +0 -0
  53. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_credentials_payload.py +0 -0
  54. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_credentials_response.py +0 -0
  55. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_http_check_payload.py +0 -0
  56. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_instance_response.py +0 -0
  57. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload.py +0 -0
  58. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload_basic_auth.py +0 -0
  59. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload_http_sd_configs_inner.py +0 -0
  60. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload_http_sd_configs_inner_oauth2.py +0 -0
  61. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload_http_sd_configs_inner_oauth2_tls_config.py +0 -0
  62. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload_metrics_relabel_configs_inner.py +0 -0
  63. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/create_scrape_config_payload_static_configs_inner.py +0 -0
  64. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/credentials.py +0 -0
  65. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/credentials_remote_write_config.py +0 -0
  66. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/credentials_remote_write_delete_response.py +0 -0
  67. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/delete_scrape_config_response.py +0 -0
  68. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/email_config.py +0 -0
  69. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/error.py +0 -0
  70. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/get_alert_configs_response.py +0 -0
  71. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/get_credentials_response.py +0 -0
  72. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/get_instance_response.py +0 -0
  73. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/get_metrics_storage_retention_response.py +0 -0
  74. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/get_scrape_config_response.py +0 -0
  75. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/grafana_configs.py +0 -0
  76. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/http_check_child_response.py +0 -0
  77. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/http_service_sd.py +0 -0
  78. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/inhibit_rules.py +0 -0
  79. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/instance.py +0 -0
  80. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/instance_response.py +0 -0
  81. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/job.py +0 -0
  82. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/list_acl_response.py +0 -0
  83. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/list_credentials_response.py +0 -0
  84. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/list_instances_response.py +0 -0
  85. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/list_scrape_configs_response.py +0 -0
  86. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/logs_config.py +0 -0
  87. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/logs_config_response.py +0 -0
  88. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/message.py +0 -0
  89. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/metrics_relabel_config.py +0 -0
  90. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/model_global.py +0 -0
  91. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/o_auth2.py +0 -0
  92. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/opsgenie_config.py +0 -0
  93. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/permission_denied.py +0 -0
  94. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/plan_model.py +0 -0
  95. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/plans_response.py +0 -0
  96. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/project_instance_full.py +0 -0
  97. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/receiver.py +0 -0
  98. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/receivers.py +0 -0
  99. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/route.py +0 -0
  100. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/scrape_configs_response.py +0 -0
  101. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/service_keys_list.py +0 -0
  102. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/static_configs.py +0 -0
  103. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/tls_config.py +0 -0
  104. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/trace_config.py +0 -0
  105. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/traces_config_response.py +0 -0
  106. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_acl_payload.py +0 -0
  107. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_config_receiver_payload.py +0 -0
  108. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_config_route_payload.py +0 -0
  109. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_payload.py +0 -0
  110. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_payload_global.py +0 -0
  111. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_payload_inhibit_rules.py +0 -0
  112. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_payload_receivers_inner.py +0 -0
  113. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_payload_route.py +0 -0
  114. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_payload_route_routes_inner.py +0 -0
  115. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_alert_configs_response.py +0 -0
  116. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_logs_configs_payload.py +0 -0
  117. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_metrics_storage_retention_payload.py +0 -0
  118. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_scrape_config_payload.py +0 -0
  119. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_scrape_config_payload_static_configs_inner.py +0 -0
  120. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/update_traces_configs_payload.py +0 -0
  121. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/models/web_hook.py +0 -0
  122. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/py.typed +0 -0
  123. {stackit_observability-0.10.1 → stackit_observability-0.12.0}/src/stackit/observability/rest.py +0 -0
@@ -1,7 +1,9 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: stackit-observability
3
- Version: 0.10.1
3
+ Version: 0.12.0
4
4
  Summary: STACKIT Observability API
5
+ License-File: LICENSE.md
6
+ License-File: NOTICE.txt
5
7
  Author: STACKIT Developer Tools
6
8
  Author-email: developer-tools@stackit.cloud
7
9
  Requires-Python: >=3.9,<4.0
@@ -13,6 +15,7 @@ Classifier: Programming Language :: Python :: 3.10
13
15
  Classifier: Programming Language :: Python :: 3.11
14
16
  Classifier: Programming Language :: Python :: 3.12
15
17
  Classifier: Programming Language :: Python :: 3.13
18
+ Classifier: Programming Language :: Python :: 3.14
16
19
  Requires-Dist: pydantic (>=2.9.2)
17
20
  Requires-Dist: python-dateutil (>=2.9.0.post0)
18
21
  Requires-Dist: requests (>=2.32.3)
@@ -3,7 +3,7 @@ name = "stackit-observability"
3
3
 
4
4
  [tool.poetry]
5
5
  name = "stackit-observability"
6
- version = "v0.10.1"
6
+ version = "v0.12.0"
7
7
  authors = [
8
8
  "STACKIT Developer Tools <developer-tools@stackit.cloud>",
9
9
  ]
@@ -49,6 +49,7 @@ __all__ = [
49
49
  "CreateAlertConfigRoutePayloadRoutesInner",
50
50
  "CreateAlertgroupsPayload",
51
51
  "CreateAlertrulesPayload",
52
+ "CreateCertCheck400Response",
52
53
  "CreateCertCheckPayload",
53
54
  "CreateCredentialsPayload",
54
55
  "CreateCredentialsResponse",
@@ -56,6 +57,7 @@ __all__ = [
56
57
  "CreateInstancePayload",
57
58
  "CreateInstanceResponse",
58
59
  "CreateLogsAlertgroupsPayload",
60
+ "CreateLogsAlertgroupsPayloadRulesInner",
59
61
  "CreateScrapeConfigPayload",
60
62
  "CreateScrapeConfigPayloadBasicAuth",
61
63
  "CreateScrapeConfigPayloadHttpSdConfigsInner",
@@ -95,6 +97,7 @@ __all__ = [
95
97
  "ModelGlobal",
96
98
  "OAuth2",
97
99
  "OpsgenieConfig",
100
+ "PartialUpdateAlertrulesRequestInner",
98
101
  "PermissionDenied",
99
102
  "Plan",
100
103
  "PlanModel",
@@ -203,6 +206,9 @@ from stackit.observability.models.create_alertgroups_payload import (
203
206
  from stackit.observability.models.create_alertrules_payload import (
204
207
  CreateAlertrulesPayload as CreateAlertrulesPayload,
205
208
  )
209
+ from stackit.observability.models.create_cert_check400_response import (
210
+ CreateCertCheck400Response as CreateCertCheck400Response,
211
+ )
206
212
  from stackit.observability.models.create_cert_check_payload import (
207
213
  CreateCertCheckPayload as CreateCertCheckPayload,
208
214
  )
@@ -224,6 +230,9 @@ from stackit.observability.models.create_instance_response import (
224
230
  from stackit.observability.models.create_logs_alertgroups_payload import (
225
231
  CreateLogsAlertgroupsPayload as CreateLogsAlertgroupsPayload,
226
232
  )
233
+ from stackit.observability.models.create_logs_alertgroups_payload_rules_inner import (
234
+ CreateLogsAlertgroupsPayloadRulesInner as CreateLogsAlertgroupsPayloadRulesInner,
235
+ )
227
236
  from stackit.observability.models.create_scrape_config_payload import (
228
237
  CreateScrapeConfigPayload as CreateScrapeConfigPayload,
229
238
  )
@@ -317,6 +326,9 @@ from stackit.observability.models.o_auth2 import OAuth2 as OAuth2
317
326
  from stackit.observability.models.opsgenie_config import (
318
327
  OpsgenieConfig as OpsgenieConfig,
319
328
  )
329
+ from stackit.observability.models.partial_update_alertrules_request_inner import (
330
+ PartialUpdateAlertrulesRequestInner as PartialUpdateAlertrulesRequestInner,
331
+ )
320
332
  from stackit.observability.models.permission_denied import (
321
333
  PermissionDenied as PermissionDenied,
322
334
  )
@@ -95,6 +95,9 @@ from stackit.observability.models.list_scrape_configs_response import (
95
95
  )
96
96
  from stackit.observability.models.logs_config_response import LogsConfigResponse
97
97
  from stackit.observability.models.message import Message
98
+ from stackit.observability.models.partial_update_alertrules_request_inner import (
99
+ PartialUpdateAlertrulesRequestInner,
100
+ )
98
101
  from stackit.observability.models.plans_response import PlansResponse
99
102
  from stackit.observability.models.receiver import Receiver
100
103
  from stackit.observability.models.scrape_configs_response import ScrapeConfigsResponse
@@ -118,9 +121,6 @@ from stackit.observability.models.update_alertgroup_payload import (
118
121
  from stackit.observability.models.update_alertgroups_request_inner import (
119
122
  UpdateAlertgroupsRequestInner,
120
123
  )
121
- from stackit.observability.models.update_alertgroups_request_inner_rules_inner import (
122
- UpdateAlertgroupsRequestInnerRulesInner,
123
- )
124
124
  from stackit.observability.models.update_credentials_remote_write_config_payload import (
125
125
  UpdateCredentialsRemoteWriteConfigPayload,
126
126
  )
@@ -1314,6 +1314,7 @@ class DefaultApi:
1314
1314
 
1315
1315
  _response_types_map: Dict[str, Optional[str]] = {
1316
1316
  "200": "CertCheckResponse",
1317
+ "400": "CreateCertCheck400Response",
1317
1318
  "403": "PermissionDenied",
1318
1319
  }
1319
1320
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -1383,6 +1384,7 @@ class DefaultApi:
1383
1384
 
1384
1385
  _response_types_map: Dict[str, Optional[str]] = {
1385
1386
  "200": "CertCheckResponse",
1387
+ "400": "CreateCertCheck400Response",
1386
1388
  "403": "PermissionDenied",
1387
1389
  }
1388
1390
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -1452,6 +1454,7 @@ class DefaultApi:
1452
1454
 
1453
1455
  _response_types_map: Dict[str, Optional[str]] = {
1454
1456
  "200": "CertCheckResponse",
1457
+ "400": "CreateCertCheck400Response",
1455
1458
  "403": "PermissionDenied",
1456
1459
  }
1457
1460
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -1851,6 +1854,7 @@ class DefaultApi:
1851
1854
 
1852
1855
  _response_types_map: Dict[str, Optional[str]] = {
1853
1856
  "200": "HttpCheckResponse",
1857
+ "400": "CreateCertCheck400Response",
1854
1858
  "403": "PermissionDenied",
1855
1859
  }
1856
1860
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -1920,6 +1924,7 @@ class DefaultApi:
1920
1924
 
1921
1925
  _response_types_map: Dict[str, Optional[str]] = {
1922
1926
  "200": "HttpCheckResponse",
1927
+ "400": "CreateCertCheck400Response",
1923
1928
  "403": "PermissionDenied",
1924
1929
  }
1925
1930
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -1989,6 +1994,7 @@ class DefaultApi:
1989
1994
 
1990
1995
  _response_types_map: Dict[str, Optional[str]] = {
1991
1996
  "200": "HttpCheckResponse",
1997
+ "400": "CreateCertCheck400Response",
1992
1998
  "403": "PermissionDenied",
1993
1999
  }
1994
2000
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -4243,8 +4249,8 @@ class DefaultApi:
4243
4249
 
4244
4250
  _response_types_map: Dict[str, Optional[str]] = {
4245
4251
  "200": "CertCheckResponse",
4252
+ "400": "List[str]",
4246
4253
  "403": "PermissionDenied",
4247
- "404": "Message",
4248
4254
  }
4249
4255
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4250
4256
  response_data.read()
@@ -4313,8 +4319,8 @@ class DefaultApi:
4313
4319
 
4314
4320
  _response_types_map: Dict[str, Optional[str]] = {
4315
4321
  "200": "CertCheckResponse",
4322
+ "400": "List[str]",
4316
4323
  "403": "PermissionDenied",
4317
- "404": "Message",
4318
4324
  }
4319
4325
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4320
4326
  response_data.read()
@@ -4383,8 +4389,8 @@ class DefaultApi:
4383
4389
 
4384
4390
  _response_types_map: Dict[str, Optional[str]] = {
4385
4391
  "200": "CertCheckResponse",
4392
+ "400": "List[str]",
4386
4393
  "403": "PermissionDenied",
4387
- "404": "Message",
4388
4394
  }
4389
4395
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
4390
4396
  return response_data.response
@@ -5038,8 +5044,8 @@ class DefaultApi:
5038
5044
 
5039
5045
  _response_types_map: Dict[str, Optional[str]] = {
5040
5046
  "200": "HttpCheckResponse",
5047
+ "400": "List[str]",
5041
5048
  "403": "PermissionDenied",
5042
- "404": "Message",
5043
5049
  }
5044
5050
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
5045
5051
  response_data.read()
@@ -5108,8 +5114,8 @@ class DefaultApi:
5108
5114
 
5109
5115
  _response_types_map: Dict[str, Optional[str]] = {
5110
5116
  "200": "HttpCheckResponse",
5117
+ "400": "List[str]",
5111
5118
  "403": "PermissionDenied",
5112
- "404": "Message",
5113
5119
  }
5114
5120
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
5115
5121
  response_data.read()
@@ -5178,8 +5184,8 @@ class DefaultApi:
5178
5184
 
5179
5185
  _response_types_map: Dict[str, Optional[str]] = {
5180
5186
  "200": "HttpCheckResponse",
5187
+ "400": "List[str]",
5181
5188
  "403": "PermissionDenied",
5182
- "404": "Message",
5183
5189
  }
5184
5190
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
5185
5191
  return response_data.response
@@ -10606,6 +10612,7 @@ class DefaultApi:
10606
10612
 
10607
10613
  _response_types_map: Dict[str, Optional[str]] = {
10608
10614
  "200": "CertCheckResponse",
10615
+ "400": "List[str]",
10609
10616
  "403": "PermissionDenied",
10610
10617
  }
10611
10618
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -10671,6 +10678,7 @@ class DefaultApi:
10671
10678
 
10672
10679
  _response_types_map: Dict[str, Optional[str]] = {
10673
10680
  "200": "CertCheckResponse",
10681
+ "400": "List[str]",
10674
10682
  "403": "PermissionDenied",
10675
10683
  }
10676
10684
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -10736,6 +10744,7 @@ class DefaultApi:
10736
10744
 
10737
10745
  _response_types_map: Dict[str, Optional[str]] = {
10738
10746
  "200": "CertCheckResponse",
10747
+ "400": "List[str]",
10739
10748
  "403": "PermissionDenied",
10740
10749
  }
10741
10750
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -11094,6 +11103,7 @@ class DefaultApi:
11094
11103
 
11095
11104
  _response_types_map: Dict[str, Optional[str]] = {
11096
11105
  "200": "HttpCheckResponse",
11106
+ "400": "List[str]",
11097
11107
  "403": "PermissionDenied",
11098
11108
  }
11099
11109
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -11159,6 +11169,7 @@ class DefaultApi:
11159
11169
 
11160
11170
  _response_types_map: Dict[str, Optional[str]] = {
11161
11171
  "200": "HttpCheckResponse",
11172
+ "400": "List[str]",
11162
11173
  "403": "PermissionDenied",
11163
11174
  }
11164
11175
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -11224,6 +11235,7 @@ class DefaultApi:
11224
11235
 
11225
11236
  _response_types_map: Dict[str, Optional[str]] = {
11226
11237
  "200": "HttpCheckResponse",
11238
+ "400": "List[str]",
11227
11239
  "403": "PermissionDenied",
11228
11240
  }
11229
11241
  response_data = self.api_client.call_api(*_param, _request_timeout=_request_timeout)
@@ -12509,7 +12521,7 @@ class DefaultApi:
12509
12521
  group_name: StrictStr,
12510
12522
  instance_id: StrictStr,
12511
12523
  project_id: StrictStr,
12512
- update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner],
12524
+ partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner],
12513
12525
  _request_timeout: Union[
12514
12526
  None,
12515
12527
  Annotated[StrictFloat, Field(gt=0)],
@@ -12530,8 +12542,8 @@ class DefaultApi:
12530
12542
  :type instance_id: str
12531
12543
  :param project_id: (required)
12532
12544
  :type project_id: str
12533
- :param update_alertgroups_request_inner_rules_inner: (required)
12534
- :type update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner]
12545
+ :param partial_update_alertrules_request_inner: (required)
12546
+ :type partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner]
12535
12547
  :param _request_timeout: timeout setting for this request. If one
12536
12548
  number provided, it will be total request
12537
12549
  timeout. It can also be a pair (tuple) of
@@ -12558,7 +12570,7 @@ class DefaultApi:
12558
12570
  group_name=group_name,
12559
12571
  instance_id=instance_id,
12560
12572
  project_id=project_id,
12561
- update_alertgroups_request_inner_rules_inner=update_alertgroups_request_inner_rules_inner,
12573
+ partial_update_alertrules_request_inner=partial_update_alertrules_request_inner,
12562
12574
  _request_auth=_request_auth,
12563
12575
  _content_type=_content_type,
12564
12576
  _headers=_headers,
@@ -12583,7 +12595,7 @@ class DefaultApi:
12583
12595
  group_name: StrictStr,
12584
12596
  instance_id: StrictStr,
12585
12597
  project_id: StrictStr,
12586
- update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner],
12598
+ partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner],
12587
12599
  _request_timeout: Union[
12588
12600
  None,
12589
12601
  Annotated[StrictFloat, Field(gt=0)],
@@ -12604,8 +12616,8 @@ class DefaultApi:
12604
12616
  :type instance_id: str
12605
12617
  :param project_id: (required)
12606
12618
  :type project_id: str
12607
- :param update_alertgroups_request_inner_rules_inner: (required)
12608
- :type update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner]
12619
+ :param partial_update_alertrules_request_inner: (required)
12620
+ :type partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner]
12609
12621
  :param _request_timeout: timeout setting for this request. If one
12610
12622
  number provided, it will be total request
12611
12623
  timeout. It can also be a pair (tuple) of
@@ -12632,7 +12644,7 @@ class DefaultApi:
12632
12644
  group_name=group_name,
12633
12645
  instance_id=instance_id,
12634
12646
  project_id=project_id,
12635
- update_alertgroups_request_inner_rules_inner=update_alertgroups_request_inner_rules_inner,
12647
+ partial_update_alertrules_request_inner=partial_update_alertrules_request_inner,
12636
12648
  _request_auth=_request_auth,
12637
12649
  _content_type=_content_type,
12638
12650
  _headers=_headers,
@@ -12657,7 +12669,7 @@ class DefaultApi:
12657
12669
  group_name: StrictStr,
12658
12670
  instance_id: StrictStr,
12659
12671
  project_id: StrictStr,
12660
- update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner],
12672
+ partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner],
12661
12673
  _request_timeout: Union[
12662
12674
  None,
12663
12675
  Annotated[StrictFloat, Field(gt=0)],
@@ -12678,8 +12690,8 @@ class DefaultApi:
12678
12690
  :type instance_id: str
12679
12691
  :param project_id: (required)
12680
12692
  :type project_id: str
12681
- :param update_alertgroups_request_inner_rules_inner: (required)
12682
- :type update_alertgroups_request_inner_rules_inner: List[UpdateAlertgroupsRequestInnerRulesInner]
12693
+ :param partial_update_alertrules_request_inner: (required)
12694
+ :type partial_update_alertrules_request_inner: List[PartialUpdateAlertrulesRequestInner]
12683
12695
  :param _request_timeout: timeout setting for this request. If one
12684
12696
  number provided, it will be total request
12685
12697
  timeout. It can also be a pair (tuple) of
@@ -12706,7 +12718,7 @@ class DefaultApi:
12706
12718
  group_name=group_name,
12707
12719
  instance_id=instance_id,
12708
12720
  project_id=project_id,
12709
- update_alertgroups_request_inner_rules_inner=update_alertgroups_request_inner_rules_inner,
12721
+ partial_update_alertrules_request_inner=partial_update_alertrules_request_inner,
12710
12722
  _request_auth=_request_auth,
12711
12723
  _content_type=_content_type,
12712
12724
  _headers=_headers,
@@ -12726,7 +12738,7 @@ class DefaultApi:
12726
12738
  group_name,
12727
12739
  instance_id,
12728
12740
  project_id,
12729
- update_alertgroups_request_inner_rules_inner,
12741
+ partial_update_alertrules_request_inner,
12730
12742
  _request_auth,
12731
12743
  _content_type,
12732
12744
  _headers,
@@ -12736,7 +12748,7 @@ class DefaultApi:
12736
12748
  _host = None
12737
12749
 
12738
12750
  _collection_formats: Dict[str, str] = {
12739
- "UpdateAlertgroupsRequestInnerRulesInner": "",
12751
+ "PartialUpdateAlertrulesRequestInner": "",
12740
12752
  }
12741
12753
 
12742
12754
  _path_params: Dict[str, str] = {}
@@ -12757,8 +12769,8 @@ class DefaultApi:
12757
12769
  # process the header parameters
12758
12770
  # process the form parameters
12759
12771
  # process the body parameter
12760
- if update_alertgroups_request_inner_rules_inner is not None:
12761
- _body_params = update_alertgroups_request_inner_rules_inner
12772
+ if partial_update_alertrules_request_inner is not None:
12773
+ _body_params = partial_update_alertrules_request_inner
12762
12774
 
12763
12775
  # set the HTTP header `Accept`
12764
12776
  if "Accept" not in _header_params:
@@ -57,6 +57,9 @@ from stackit.observability.models.create_alertgroups_payload import (
57
57
  from stackit.observability.models.create_alertrules_payload import (
58
58
  CreateAlertrulesPayload,
59
59
  )
60
+ from stackit.observability.models.create_cert_check400_response import (
61
+ CreateCertCheck400Response,
62
+ )
60
63
  from stackit.observability.models.create_cert_check_payload import (
61
64
  CreateCertCheckPayload,
62
65
  )
@@ -74,6 +77,9 @@ from stackit.observability.models.create_instance_response import CreateInstance
74
77
  from stackit.observability.models.create_logs_alertgroups_payload import (
75
78
  CreateLogsAlertgroupsPayload,
76
79
  )
80
+ from stackit.observability.models.create_logs_alertgroups_payload_rules_inner import (
81
+ CreateLogsAlertgroupsPayloadRulesInner,
82
+ )
77
83
  from stackit.observability.models.create_scrape_config_payload import (
78
84
  CreateScrapeConfigPayload,
79
85
  )
@@ -145,6 +151,9 @@ from stackit.observability.models.metrics_relabel_config import MetricsRelabelCo
145
151
  from stackit.observability.models.model_global import ModelGlobal
146
152
  from stackit.observability.models.o_auth2 import OAuth2
147
153
  from stackit.observability.models.opsgenie_config import OpsgenieConfig
154
+ from stackit.observability.models.partial_update_alertrules_request_inner import (
155
+ PartialUpdateAlertrulesRequestInner,
156
+ )
148
157
  from stackit.observability.models.permission_denied import PermissionDenied
149
158
  from stackit.observability.models.plan import Plan
150
159
  from stackit.observability.models.plan_model import PlanModel
@@ -29,7 +29,7 @@ class AlertRule(BaseModel):
29
29
 
30
30
  alert: Annotated[str, Field(min_length=1, strict=True, max_length=200)]
31
31
  annotations: Optional[Dict[str, Annotated[str, Field(min_length=1, strict=True)]]] = None
32
- expr: Annotated[str, Field(min_length=1, strict=True, max_length=600)]
32
+ expr: Annotated[str, Field(min_length=1, strict=True, max_length=2000)]
33
33
  var_for: Optional[Annotated[str, Field(min_length=2, strict=True, max_length=8)]] = Field(default="0s", alias="for")
34
34
  labels: Optional[Dict[str, Annotated[str, Field(min_length=1, strict=True)]]] = None
35
35
  __properties: ClassVar[List[str]] = ["alert", "annotations", "expr", "for", "labels"]
@@ -29,7 +29,7 @@ class AlertRuleRecord(BaseModel):
29
29
 
30
30
  alert: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=200)]] = None
31
31
  annotations: Optional[Dict[str, Annotated[str, Field(min_length=1, strict=True)]]] = None
32
- expr: Annotated[str, Field(min_length=1, strict=True, max_length=600)]
32
+ expr: Annotated[str, Field(min_length=1, strict=True, max_length=2000)]
33
33
  var_for: Optional[Annotated[str, Field(min_length=2, strict=True, max_length=8)]] = Field(default=None, alias="for")
34
34
  labels: Optional[Dict[str, Annotated[str, Field(min_length=1, strict=True)]]] = None
35
35
  record: Optional[Annotated[str, Field(min_length=1, strict=True, max_length=300)]] = None
@@ -31,9 +31,10 @@ class CertCheckResponse(BaseModel):
31
31
  CertCheckResponse
32
32
  """ # noqa: E501
33
33
 
34
+ cert_check: Optional[CertCheckChildResponse] = Field(default=None, alias="certCheck")
34
35
  cert_checks: Annotated[List[CertCheckChildResponse], Field(max_length=100)] = Field(alias="certChecks")
35
36
  message: Annotated[str, Field(min_length=1, strict=True)]
36
- __properties: ClassVar[List[str]] = ["certChecks", "message"]
37
+ __properties: ClassVar[List[str]] = ["certCheck", "certChecks", "message"]
37
38
 
38
39
  model_config = ConfigDict(
39
40
  populate_by_name=True,
@@ -72,6 +73,9 @@ class CertCheckResponse(BaseModel):
72
73
  exclude=excluded_fields,
73
74
  exclude_none=True,
74
75
  )
76
+ # override the default output from pydantic by calling `to_dict()` of cert_check
77
+ if self.cert_check:
78
+ _dict["certCheck"] = self.cert_check.to_dict()
75
79
  # override the default output from pydantic by calling `to_dict()` of each item in cert_checks (list)
76
80
  _items = []
77
81
  if self.cert_checks:
@@ -92,6 +96,9 @@ class CertCheckResponse(BaseModel):
92
96
 
93
97
  _obj = cls.model_validate(
94
98
  {
99
+ "certCheck": (
100
+ CertCheckChildResponse.from_dict(obj["certCheck"]) if obj.get("certCheck") is not None else None
101
+ ),
95
102
  "certChecks": (
96
103
  [CertCheckChildResponse.from_dict(_item) for _item in obj["certChecks"]]
97
104
  if obj.get("certChecks") is not None
@@ -28,7 +28,7 @@ from stackit.observability.models.update_alertgroups_request_inner_rules_inner i
28
28
 
29
29
  class CreateAlertgroupsPayload(BaseModel):
30
30
  """
31
- Alert group that should be created or updated `Additional Validators:` * total config should not be bigger than 500000 characters as string since this the limitation of prometheus.
31
+ Alert group that should be created or updated. `Additional Validators:` * total config should not be bigger than 500000 characters as string since this the limitation of prometheus.
32
32
  """ # noqa: E501
33
33
 
34
34
  interval: Optional[Annotated[str, Field(min_length=2, strict=True, max_length=8)]] = Field(
@@ -34,7 +34,7 @@ class CreateAlertrulesPayload(BaseModel):
34
34
  default=None,
35
35
  description="map of key:value. Annotations to add to each alert. `Additional Validators:` * should not contain more than 5 keys * each key and value should not be longer than 200 characters",
36
36
  )
37
- expr: Annotated[str, Field(min_length=1, strict=True, max_length=600)] = Field(
37
+ expr: Annotated[str, Field(min_length=1, strict=True, max_length=2000)] = Field(
38
38
  description="The PromQL expression to evaluate. Every evaluation cycle this is evaluated at the current time, and all resultant time series become pending/firing alerts."
39
39
  )
40
40
  var_for: Optional[Annotated[str, Field(min_length=2, strict=True, max_length=8)]] = Field(
@@ -0,0 +1,155 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ STACKIT Observability API
5
+
6
+ API endpoints for Observability on STACKIT
7
+
8
+ The version of the OpenAPI document: 1.1.1
9
+ Contact: stackit-argus@mail.schwarz
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+ from __future__ import annotations
16
+
17
+ import json
18
+ import pprint
19
+ from typing import Any, Dict, List, Optional, Set, Union
20
+
21
+ from pydantic import (
22
+ BaseModel,
23
+ ConfigDict,
24
+ StrictStr,
25
+ ValidationError,
26
+ field_validator,
27
+ )
28
+ from typing_extensions import Self
29
+
30
+
31
+ CREATECERTCHECK400RESPONSE_ONE_OF_SCHEMAS = ["Dict[str, List[str]]", "List[str]"]
32
+
33
+
34
+ class CreateCertCheck400Response(BaseModel):
35
+ """
36
+ CreateCertCheck400Response
37
+ """
38
+
39
+ # data type: Dict[str, List[str]]
40
+ oneof_schema_1_validator: Optional[Dict[str, List[StrictStr]]] = None
41
+ # data type: List[str]
42
+ oneof_schema_2_validator: Optional[List[StrictStr]] = None
43
+ actual_instance: Optional[Union[Dict[str, List[str]], List[str]]] = None
44
+ one_of_schemas: Set[str] = {"Dict[str, List[str]]", "List[str]"}
45
+
46
+ model_config = ConfigDict(
47
+ validate_assignment=True,
48
+ protected_namespaces=(),
49
+ )
50
+
51
+ def __init__(self, *args, **kwargs) -> None:
52
+ if args:
53
+ if len(args) > 1:
54
+ raise ValueError("If a position argument is used, only 1 is allowed to set `actual_instance`")
55
+ if kwargs:
56
+ raise ValueError("If a position argument is used, keyword arguments cannot be used.")
57
+ super().__init__(actual_instance=args[0])
58
+ else:
59
+ super().__init__(**kwargs)
60
+
61
+ @field_validator("actual_instance")
62
+ def actual_instance_must_validate_oneof(cls, v):
63
+ instance = CreateCertCheck400Response.model_construct()
64
+ error_messages = []
65
+ match = 0
66
+ # validate data type: Dict[str, List[str]]
67
+ try:
68
+ instance.oneof_schema_1_validator = v
69
+ match += 1
70
+ except (ValidationError, ValueError) as e:
71
+ error_messages.append(str(e))
72
+ # validate data type: List[str]
73
+ try:
74
+ instance.oneof_schema_2_validator = v
75
+ match += 1
76
+ except (ValidationError, ValueError) as e:
77
+ error_messages.append(str(e))
78
+ if match == 0:
79
+ # no match
80
+ raise ValueError(
81
+ "No match found when setting `actual_instance` in CreateCertCheck400Response with oneOf schemas: Dict[str, List[str]], List[str]. Details: "
82
+ + ", ".join(error_messages)
83
+ )
84
+ else:
85
+ return v
86
+
87
+ @classmethod
88
+ def from_dict(cls, obj: Union[str, Dict[str, Any]]) -> Self:
89
+ return cls.from_json(json.dumps(obj))
90
+
91
+ @classmethod
92
+ def from_json(cls, json_str: str) -> Self:
93
+ """Returns the object represented by the json string"""
94
+ instance = cls.model_construct()
95
+ error_messages = []
96
+ match = 0
97
+
98
+ # deserialize data into Dict[str, List[str]]
99
+ try:
100
+ # validation
101
+ instance.oneof_schema_1_validator = json.loads(json_str)
102
+ # assign value to actual_instance
103
+ instance.actual_instance = instance.oneof_schema_1_validator
104
+ match += 1
105
+ except (ValidationError, ValueError) as e:
106
+ error_messages.append(str(e))
107
+ # deserialize data into List[str]
108
+ try:
109
+ # validation
110
+ instance.oneof_schema_2_validator = json.loads(json_str)
111
+ # assign value to actual_instance
112
+ instance.actual_instance = instance.oneof_schema_2_validator
113
+ match += 1
114
+ except (ValidationError, ValueError) as e:
115
+ error_messages.append(str(e))
116
+
117
+ if match > 1:
118
+ # more than 1 match
119
+ raise ValueError(
120
+ "Multiple matches found when deserializing the JSON string into CreateCertCheck400Response with oneOf schemas: Dict[str, List[str]], List[str]. Details: "
121
+ + ", ".join(error_messages)
122
+ )
123
+ elif match == 0:
124
+ # no match
125
+ raise ValueError(
126
+ "No match found when deserializing the JSON string into CreateCertCheck400Response with oneOf schemas: Dict[str, List[str]], List[str]. Details: "
127
+ + ", ".join(error_messages)
128
+ )
129
+ else:
130
+ return instance
131
+
132
+ def to_json(self) -> str:
133
+ """Returns the JSON representation of the actual instance"""
134
+ if self.actual_instance is None:
135
+ return "null"
136
+
137
+ if hasattr(self.actual_instance, "to_json") and callable(self.actual_instance.to_json):
138
+ return self.actual_instance.to_json()
139
+ else:
140
+ return json.dumps(self.actual_instance)
141
+
142
+ def to_dict(self) -> Optional[Union[Dict[str, Any], Dict[str, List[str]], List[str]]]:
143
+ """Returns the dict representation of the actual instance"""
144
+ if self.actual_instance is None:
145
+ return None
146
+
147
+ if hasattr(self.actual_instance, "to_dict") and callable(self.actual_instance.to_dict):
148
+ return self.actual_instance.to_dict()
149
+ else:
150
+ # primitive type
151
+ return self.actual_instance
152
+
153
+ def to_str(self) -> str:
154
+ """Returns the string representation of the actual instance"""
155
+ return pprint.pformat(self.model_dump())