cribl-control-plane 0.3.0b3__py3-none-any.whl → 0.3.0b12__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.

Potentially problematic release.


This version of cribl-control-plane might be problematic. Click here for more details.

Files changed (158) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/groups_sdk.py +2 -2
  3. cribl_control_plane/lakedatasets.py +28 -0
  4. cribl_control_plane/models/__init__.py +124 -5
  5. cribl_control_plane/models/cacheconnection.py +20 -0
  6. cribl_control_plane/models/configgroup.py +20 -1
  7. cribl_control_plane/models/configgroupcloud.py +11 -1
  8. cribl_control_plane/models/createconfiggroupbyproductop.py +13 -2
  9. cribl_control_plane/models/cribllakedataset.py +15 -1
  10. cribl_control_plane/models/cribllakedatasetupdate.py +15 -1
  11. cribl_control_plane/models/datasetmetadata.py +11 -1
  12. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +11 -0
  13. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +20 -0
  14. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +20 -0
  15. cribl_control_plane/models/getconfiggroupbyproductandidop.py +11 -0
  16. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +11 -0
  17. cribl_control_plane/models/getsummaryop.py +11 -0
  18. cribl_control_plane/models/groupcreaterequest.py +20 -1
  19. cribl_control_plane/models/hbcriblinfo.py +11 -1
  20. cribl_control_plane/models/healthserverstatus.py +20 -1
  21. cribl_control_plane/models/input.py +15 -15
  22. cribl_control_plane/models/inputappscope.py +76 -17
  23. cribl_control_plane/models/inputazureblob.py +29 -1
  24. cribl_control_plane/models/inputcollection.py +20 -1
  25. cribl_control_plane/models/inputconfluentcloud.py +188 -1
  26. cribl_control_plane/models/inputcribl.py +20 -1
  27. cribl_control_plane/models/inputcriblhttp.py +58 -17
  28. cribl_control_plane/models/inputcribllakehttp.py +58 -17
  29. cribl_control_plane/models/inputcriblmetrics.py +20 -1
  30. cribl_control_plane/models/inputcribltcp.py +58 -17
  31. cribl_control_plane/models/inputcrowdstrike.py +47 -1
  32. cribl_control_plane/models/inputdatadogagent.py +58 -17
  33. cribl_control_plane/models/inputdatagen.py +20 -1
  34. cribl_control_plane/models/inputedgeprometheus.py +138 -37
  35. cribl_control_plane/models/inputelastic.py +108 -27
  36. cribl_control_plane/models/inputeventhub.py +176 -1
  37. cribl_control_plane/models/inputexec.py +29 -1
  38. cribl_control_plane/models/inputfile.py +40 -7
  39. cribl_control_plane/models/inputfirehose.py +58 -17
  40. cribl_control_plane/models/inputgooglepubsub.py +29 -1
  41. cribl_control_plane/models/inputgrafana.py +149 -32
  42. cribl_control_plane/models/inputhttp.py +58 -17
  43. cribl_control_plane/models/inputhttpraw.py +58 -17
  44. cribl_control_plane/models/inputjournalfiles.py +20 -1
  45. cribl_control_plane/models/inputkafka.py +182 -1
  46. cribl_control_plane/models/inputkinesis.py +65 -1
  47. cribl_control_plane/models/inputkubeevents.py +20 -1
  48. cribl_control_plane/models/inputkubelogs.py +29 -1
  49. cribl_control_plane/models/inputkubemetrics.py +29 -1
  50. cribl_control_plane/models/inputloki.py +67 -17
  51. cribl_control_plane/models/inputmetrics.py +58 -17
  52. cribl_control_plane/models/inputmodeldriventelemetry.py +58 -17
  53. cribl_control_plane/models/inputmsk.py +74 -1
  54. cribl_control_plane/models/inputnetflow.py +20 -1
  55. cribl_control_plane/models/inputoffice365mgmt.py +56 -1
  56. cribl_control_plane/models/inputoffice365msgtrace.py +56 -1
  57. cribl_control_plane/models/inputoffice365service.py +56 -1
  58. cribl_control_plane/models/inputopentelemetry.py +84 -16
  59. cribl_control_plane/models/inputprometheus.py +131 -37
  60. cribl_control_plane/models/inputprometheusrw.py +67 -17
  61. cribl_control_plane/models/inputrawudp.py +20 -1
  62. cribl_control_plane/models/inputs3.py +38 -1
  63. cribl_control_plane/models/inputs3inventory.py +47 -1
  64. cribl_control_plane/models/inputsecuritylake.py +47 -1
  65. cribl_control_plane/models/inputsnmp.py +29 -1
  66. cribl_control_plane/models/inputsplunk.py +76 -17
  67. cribl_control_plane/models/inputsplunkhec.py +66 -16
  68. cribl_control_plane/models/inputsplunksearch.py +56 -1
  69. cribl_control_plane/models/inputsqs.py +47 -1
  70. cribl_control_plane/models/inputsyslog.py +113 -32
  71. cribl_control_plane/models/inputsystemmetrics.py +110 -9
  72. cribl_control_plane/models/inputsystemstate.py +29 -1
  73. cribl_control_plane/models/inputtcp.py +77 -17
  74. cribl_control_plane/models/inputtcpjson.py +67 -17
  75. cribl_control_plane/models/inputwef.py +65 -1
  76. cribl_control_plane/models/inputwindowsmetrics.py +101 -9
  77. cribl_control_plane/models/inputwineventlogs.py +52 -1
  78. cribl_control_plane/models/inputwiz.py +38 -1
  79. cribl_control_plane/models/inputwizwebhook.py +58 -17
  80. cribl_control_plane/models/inputzscalerhec.py +66 -16
  81. cribl_control_plane/models/jobinfo.py +10 -4
  82. cribl_control_plane/models/jobstatus.py +34 -3
  83. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  84. cribl_control_plane/models/listconfiggroupbyproductop.py +11 -0
  85. cribl_control_plane/models/masterworkerentry.py +11 -1
  86. cribl_control_plane/models/nodeupgradestatus.py +38 -0
  87. cribl_control_plane/models/output.py +21 -21
  88. cribl_control_plane/models/outputazureblob.py +90 -1
  89. cribl_control_plane/models/outputazuredataexplorer.py +430 -93
  90. cribl_control_plane/models/outputazureeventhub.py +267 -22
  91. cribl_control_plane/models/outputazurelogs.py +105 -22
  92. cribl_control_plane/models/outputchronicle.py +105 -22
  93. cribl_control_plane/models/outputclickhouse.py +141 -22
  94. cribl_control_plane/models/outputcloudwatch.py +96 -22
  95. cribl_control_plane/models/outputconfluentcloud.py +292 -23
  96. cribl_control_plane/models/outputcriblhttp.py +123 -22
  97. cribl_control_plane/models/outputcribllake.py +76 -1
  98. cribl_control_plane/models/outputcribltcp.py +123 -22
  99. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +117 -23
  100. cribl_control_plane/models/outputdatabricks.py +76 -5
  101. cribl_control_plane/models/outputdatadog.py +132 -22
  102. cribl_control_plane/models/outputdataset.py +123 -22
  103. cribl_control_plane/models/outputdiskspool.py +11 -1
  104. cribl_control_plane/models/outputdls3.py +117 -1
  105. cribl_control_plane/models/outputdynatracehttp.py +141 -22
  106. cribl_control_plane/models/outputdynatraceotlp.py +141 -22
  107. cribl_control_plane/models/outputelastic.py +148 -22
  108. cribl_control_plane/models/outputelasticcloud.py +130 -22
  109. cribl_control_plane/models/outputexabeam.py +47 -1
  110. cribl_control_plane/models/outputfilesystem.py +72 -1
  111. cribl_control_plane/models/outputgooglechronicle.py +148 -23
  112. cribl_control_plane/models/outputgooglecloudlogging.py +115 -23
  113. cribl_control_plane/models/outputgooglecloudstorage.py +108 -1
  114. cribl_control_plane/models/outputgooglepubsub.py +96 -22
  115. cribl_control_plane/models/outputgrafanacloud.py +244 -43
  116. cribl_control_plane/models/outputgraphite.py +96 -22
  117. cribl_control_plane/models/outputhoneycomb.py +105 -22
  118. cribl_control_plane/models/outputhumiohec.py +114 -22
  119. cribl_control_plane/models/outputinfluxdb.py +114 -22
  120. cribl_control_plane/models/outputkafka.py +283 -20
  121. cribl_control_plane/models/outputkinesis.py +121 -22
  122. cribl_control_plane/models/outputloki.py +112 -20
  123. cribl_control_plane/models/outputminio.py +117 -1
  124. cribl_control_plane/models/outputmsk.py +175 -20
  125. cribl_control_plane/models/outputnewrelic.py +123 -22
  126. cribl_control_plane/models/outputnewrelicevents.py +115 -23
  127. cribl_control_plane/models/outputopentelemetry.py +159 -22
  128. cribl_control_plane/models/outputprometheus.py +105 -22
  129. cribl_control_plane/models/outputring.py +29 -1
  130. cribl_control_plane/models/outputs3.py +117 -1
  131. cribl_control_plane/models/outputsecuritylake.py +85 -1
  132. cribl_control_plane/models/outputsentinel.py +123 -22
  133. cribl_control_plane/models/outputsentineloneaisiem.py +124 -23
  134. cribl_control_plane/models/outputservicenow.py +150 -22
  135. cribl_control_plane/models/outputsignalfx.py +105 -22
  136. cribl_control_plane/models/outputsns.py +103 -20
  137. cribl_control_plane/models/outputsplunk.py +141 -22
  138. cribl_control_plane/models/outputsplunkhec.py +198 -22
  139. cribl_control_plane/models/outputsplunklb.py +170 -22
  140. cribl_control_plane/models/outputsqs.py +112 -20
  141. cribl_control_plane/models/outputstatsd.py +96 -22
  142. cribl_control_plane/models/outputstatsdext.py +96 -22
  143. cribl_control_plane/models/outputsumologic.py +105 -22
  144. cribl_control_plane/models/outputsyslog.py +238 -99
  145. cribl_control_plane/models/outputtcpjson.py +132 -22
  146. cribl_control_plane/models/outputwavefront.py +105 -22
  147. cribl_control_plane/models/outputwebhook.py +141 -22
  148. cribl_control_plane/models/outputxsiam.py +103 -20
  149. cribl_control_plane/models/resourcepolicy.py +11 -0
  150. cribl_control_plane/models/runnablejobcollection.py +68 -9
  151. cribl_control_plane/models/runnablejobexecutor.py +32 -9
  152. cribl_control_plane/models/runnablejobscheduledsearch.py +23 -9
  153. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +11 -0
  154. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +11 -0
  155. cribl_control_plane/sdk.py +2 -2
  156. {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/METADATA +25 -7
  157. {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/RECORD +158 -157
  158. {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b12.dist-info}/WHEEL +0 -0
@@ -1,13 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
- from typing import Any, List, Optional
11
+ from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
12
13
 
13
14
 
@@ -106,6 +107,24 @@ class InputMetricsPq(BaseModel):
106
107
  Optional[InputMetricsPqControls], pydantic.Field(alias="pqControls")
107
108
  ] = None
108
109
 
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputMetricsMode(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputMetricsCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputMetricsMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
111
130
  TL_SV1 = "TLSv1"
@@ -123,6 +142,12 @@ class InputMetricsMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
142
 
124
143
  class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
125
144
  disabled: NotRequired[bool]
145
+ request_cert: NotRequired[bool]
146
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
147
+ reject_unauthorized: NotRequired[bool]
148
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
149
+ common_name_regex: NotRequired[str]
150
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
126
151
  certificate_name: NotRequired[str]
127
152
  r"""The name of the predefined certificate"""
128
153
  priv_key_path: NotRequired[str]
@@ -133,10 +158,6 @@ class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
133
158
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
134
159
  ca_path: NotRequired[str]
135
160
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
136
- request_cert: NotRequired[bool]
137
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
138
- reject_unauthorized: NotRequired[Any]
139
- common_name_regex: NotRequired[Any]
140
161
  min_version: NotRequired[InputMetricsMinimumTLSVersion]
141
162
  max_version: NotRequired[InputMetricsMaximumTLSVersion]
142
163
 
@@ -144,6 +165,19 @@ class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
144
165
  class InputMetricsTLSSettingsServerSide(BaseModel):
145
166
  disabled: Optional[bool] = True
146
167
 
168
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
169
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
170
+
171
+ reject_unauthorized: Annotated[
172
+ Optional[bool], pydantic.Field(alias="rejectUnauthorized")
173
+ ] = True
174
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
175
+
176
+ common_name_regex: Annotated[
177
+ Optional[str], pydantic.Field(alias="commonNameRegex")
178
+ ] = "/.*/"
179
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
180
+
147
181
  certificate_name: Annotated[
148
182
  Optional[str], pydantic.Field(alias="certificateName")
149
183
  ] = None
@@ -161,17 +195,6 @@ class InputMetricsTLSSettingsServerSide(BaseModel):
161
195
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
162
196
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
163
197
 
164
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
165
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
166
-
167
- reject_unauthorized: Annotated[
168
- Optional[Any], pydantic.Field(alias="rejectUnauthorized")
169
- ] = None
170
-
171
- common_name_regex: Annotated[
172
- Optional[Any], pydantic.Field(alias="commonNameRegex")
173
- ] = None
174
-
175
198
  min_version: Annotated[
176
199
  Annotated[
177
200
  Optional[InputMetricsMinimumTLSVersion],
@@ -188,6 +211,24 @@ class InputMetricsTLSSettingsServerSide(BaseModel):
188
211
  pydantic.Field(alias="maxVersion"),
189
212
  ] = None
190
213
 
214
+ @field_serializer("min_version")
215
+ def serialize_min_version(self, value):
216
+ if isinstance(value, str):
217
+ try:
218
+ return models.InputMetricsMinimumTLSVersion(value)
219
+ except ValueError:
220
+ return value
221
+ return value
222
+
223
+ @field_serializer("max_version")
224
+ def serialize_max_version(self, value):
225
+ if isinstance(value, str):
226
+ try:
227
+ return models.InputMetricsMaximumTLSVersion(value)
228
+ except ValueError:
229
+ return value
230
+ return value
231
+
191
232
 
192
233
  class InputMetricsMetadatumTypedDict(TypedDict):
193
234
  name: str
@@ -1,13 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
- from typing import Any, List, Optional
11
+ from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
12
13
 
13
14
 
@@ -109,6 +110,24 @@ class InputModelDrivenTelemetryPq(BaseModel):
109
110
  pydantic.Field(alias="pqControls"),
110
111
  ] = None
111
112
 
113
+ @field_serializer("mode")
114
+ def serialize_mode(self, value):
115
+ if isinstance(value, str):
116
+ try:
117
+ return models.InputModelDrivenTelemetryMode(value)
118
+ except ValueError:
119
+ return value
120
+ return value
121
+
122
+ @field_serializer("compress")
123
+ def serialize_compress(self, value):
124
+ if isinstance(value, str):
125
+ try:
126
+ return models.InputModelDrivenTelemetryCompression(value)
127
+ except ValueError:
128
+ return value
129
+ return value
130
+
112
131
 
113
132
  class InputModelDrivenTelemetryMinimumTLSVersion(
114
133
  str, Enum, metaclass=utils.OpenEnumMeta
@@ -130,6 +149,12 @@ class InputModelDrivenTelemetryMaximumTLSVersion(
130
149
 
131
150
  class InputModelDrivenTelemetryTLSSettingsServerSideTypedDict(TypedDict):
132
151
  disabled: NotRequired[bool]
152
+ request_cert: NotRequired[bool]
153
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
154
+ reject_unauthorized: NotRequired[bool]
155
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
156
+ common_name_regex: NotRequired[str]
157
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
133
158
  certificate_name: NotRequired[str]
134
159
  r"""The name of the predefined certificate"""
135
160
  priv_key_path: NotRequired[str]
@@ -140,10 +165,6 @@ class InputModelDrivenTelemetryTLSSettingsServerSideTypedDict(TypedDict):
140
165
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
141
166
  ca_path: NotRequired[str]
142
167
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
143
- request_cert: NotRequired[bool]
144
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
145
- reject_unauthorized: NotRequired[Any]
146
- common_name_regex: NotRequired[Any]
147
168
  min_version: NotRequired[InputModelDrivenTelemetryMinimumTLSVersion]
148
169
  max_version: NotRequired[InputModelDrivenTelemetryMaximumTLSVersion]
149
170
 
@@ -151,6 +172,19 @@ class InputModelDrivenTelemetryTLSSettingsServerSideTypedDict(TypedDict):
151
172
  class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
152
173
  disabled: Optional[bool] = True
153
174
 
175
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
176
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
177
+
178
+ reject_unauthorized: Annotated[
179
+ Optional[bool], pydantic.Field(alias="rejectUnauthorized")
180
+ ] = True
181
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
182
+
183
+ common_name_regex: Annotated[
184
+ Optional[str], pydantic.Field(alias="commonNameRegex")
185
+ ] = "/.*/"
186
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
187
+
154
188
  certificate_name: Annotated[
155
189
  Optional[str], pydantic.Field(alias="certificateName")
156
190
  ] = None
@@ -168,17 +202,6 @@ class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
168
202
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
169
203
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
170
204
 
171
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
172
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
173
-
174
- reject_unauthorized: Annotated[
175
- Optional[Any], pydantic.Field(alias="rejectUnauthorized")
176
- ] = None
177
-
178
- common_name_regex: Annotated[
179
- Optional[Any], pydantic.Field(alias="commonNameRegex")
180
- ] = None
181
-
182
205
  min_version: Annotated[
183
206
  Annotated[
184
207
  Optional[InputModelDrivenTelemetryMinimumTLSVersion],
@@ -195,6 +218,24 @@ class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
195
218
  pydantic.Field(alias="maxVersion"),
196
219
  ] = None
197
220
 
221
+ @field_serializer("min_version")
222
+ def serialize_min_version(self, value):
223
+ if isinstance(value, str):
224
+ try:
225
+ return models.InputModelDrivenTelemetryMinimumTLSVersion(value)
226
+ except ValueError:
227
+ return value
228
+ return value
229
+
230
+ @field_serializer("max_version")
231
+ def serialize_max_version(self, value):
232
+ if isinstance(value, str):
233
+ try:
234
+ return models.InputModelDrivenTelemetryMaximumTLSVersion(value)
235
+ except ValueError:
236
+ return value
237
+ return value
238
+
198
239
 
199
240
  class InputModelDrivenTelemetryMetadatumTypedDict(TypedDict):
200
241
  name: str
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -106,6 +107,24 @@ class InputMskPq(BaseModel):
106
107
  Optional[InputMskPqControls], pydantic.Field(alias="pqControls")
107
108
  ] = None
108
109
 
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputMskMode(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputMskCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputMskMetadatumTypedDict(TypedDict):
111
130
  name: str
@@ -225,6 +244,24 @@ class InputMskKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
225
244
  pydantic.Field(alias="maxVersion"),
226
245
  ] = None
227
246
 
247
+ @field_serializer("min_version")
248
+ def serialize_min_version(self, value):
249
+ if isinstance(value, str):
250
+ try:
251
+ return models.InputMskKafkaSchemaRegistryMinimumTLSVersion(value)
252
+ except ValueError:
253
+ return value
254
+ return value
255
+
256
+ @field_serializer("max_version")
257
+ def serialize_max_version(self, value):
258
+ if isinstance(value, str):
259
+ try:
260
+ return models.InputMskKafkaSchemaRegistryMaximumTLSVersion(value)
261
+ except ValueError:
262
+ return value
263
+ return value
264
+
228
265
 
229
266
  class InputMskKafkaSchemaRegistryAuthenticationTypedDict(TypedDict):
230
267
  disabled: NotRequired[bool]
@@ -368,6 +405,24 @@ class InputMskTLSSettingsClientSide(BaseModel):
368
405
  pydantic.Field(alias="maxVersion"),
369
406
  ] = None
370
407
 
408
+ @field_serializer("min_version")
409
+ def serialize_min_version(self, value):
410
+ if isinstance(value, str):
411
+ try:
412
+ return models.InputMskMinimumTLSVersion(value)
413
+ except ValueError:
414
+ return value
415
+ return value
416
+
417
+ @field_serializer("max_version")
418
+ def serialize_max_version(self, value):
419
+ if isinstance(value, str):
420
+ try:
421
+ return models.InputMskMaximumTLSVersion(value)
422
+ except ValueError:
423
+ return value
424
+ return value
425
+
371
426
 
372
427
  class InputMskTypedDict(TypedDict):
373
428
  type: InputMskType
@@ -672,3 +727,21 @@ class InputMsk(BaseModel):
672
727
 
673
728
  aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
674
729
  r"""Select or create a stored secret that references your access key and secret key"""
730
+
731
+ @field_serializer("aws_authentication_method")
732
+ def serialize_aws_authentication_method(self, value):
733
+ if isinstance(value, str):
734
+ try:
735
+ return models.InputMskAuthenticationMethod(value)
736
+ except ValueError:
737
+ return value
738
+ return value
739
+
740
+ @field_serializer("signature_version")
741
+ def serialize_signature_version(self, value):
742
+ if isinstance(value, str):
743
+ try:
744
+ return models.InputMskSignatureVersion(value)
745
+ except ValueError:
746
+ return value
747
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -106,6 +107,24 @@ class InputNetflowPq(BaseModel):
106
107
  Optional[InputNetflowPqControls], pydantic.Field(alias="pqControls")
107
108
  ] = None
108
109
 
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputNetflowMode(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputNetflowCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputNetflowMetadatumTypedDict(TypedDict):
111
130
  name: str
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -107,6 +108,24 @@ class InputOffice365MgmtPq(BaseModel):
107
108
  Optional[InputOffice365MgmtPqControls], pydantic.Field(alias="pqControls")
108
109
  ] = None
109
110
 
111
+ @field_serializer("mode")
112
+ def serialize_mode(self, value):
113
+ if isinstance(value, str):
114
+ try:
115
+ return models.InputOffice365MgmtMode(value)
116
+ except ValueError:
117
+ return value
118
+ return value
119
+
120
+ @field_serializer("compress")
121
+ def serialize_compress(self, value):
122
+ if isinstance(value, str):
123
+ try:
124
+ return models.InputOffice365MgmtCompression(value)
125
+ except ValueError:
126
+ return value
127
+ return value
128
+
110
129
 
111
130
  class InputOffice365MgmtSubscriptionPlan(str, Enum, metaclass=utils.OpenEnumMeta):
112
131
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
@@ -174,6 +193,15 @@ class InputOffice365MgmtContentConfig(BaseModel):
174
193
 
175
194
  enabled: Optional[bool] = None
176
195
 
196
+ @field_serializer("log_level")
197
+ def serialize_log_level(self, value):
198
+ if isinstance(value, str):
199
+ try:
200
+ return models.InputOffice365MgmtLogLevel(value)
201
+ except ValueError:
202
+ return value
203
+ return value
204
+
177
205
 
178
206
  class InputOffice365MgmtRetryType(str, Enum, metaclass=utils.OpenEnumMeta):
179
207
  r"""The algorithm to use when performing HTTP retries"""
@@ -238,6 +266,15 @@ class InputOffice365MgmtRetryRules(BaseModel):
238
266
  ] = False
239
267
  r"""Retry request when a connection reset (ECONNRESET) error occurs"""
240
268
 
269
+ @field_serializer("type")
270
+ def serialize_type(self, value):
271
+ if isinstance(value, str):
272
+ try:
273
+ return models.InputOffice365MgmtRetryType(value)
274
+ except ValueError:
275
+ return value
276
+ return value
277
+
241
278
 
242
279
  class InputOffice365MgmtAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
243
280
  r"""Enter client secret directly, or select a stored secret"""
@@ -406,3 +443,21 @@ class InputOffice365Mgmt(BaseModel):
406
443
 
407
444
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
408
445
  r"""Select or create a stored text secret"""
446
+
447
+ @field_serializer("plan_type")
448
+ def serialize_plan_type(self, value):
449
+ if isinstance(value, str):
450
+ try:
451
+ return models.InputOffice365MgmtSubscriptionPlan(value)
452
+ except ValueError:
453
+ return value
454
+ return value
455
+
456
+ @field_serializer("auth_type")
457
+ def serialize_auth_type(self, value):
458
+ if isinstance(value, str):
459
+ try:
460
+ return models.InputOffice365MgmtAuthenticationMethod(value)
461
+ except ValueError:
462
+ return value
463
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -107,6 +108,24 @@ class InputOffice365MsgTracePq(BaseModel):
107
108
  Optional[InputOffice365MsgTracePqControls], pydantic.Field(alias="pqControls")
108
109
  ] = None
109
110
 
111
+ @field_serializer("mode")
112
+ def serialize_mode(self, value):
113
+ if isinstance(value, str):
114
+ try:
115
+ return models.InputOffice365MsgTraceMode(value)
116
+ except ValueError:
117
+ return value
118
+ return value
119
+
120
+ @field_serializer("compress")
121
+ def serialize_compress(self, value):
122
+ if isinstance(value, str):
123
+ try:
124
+ return models.InputOffice365MsgTraceCompression(value)
125
+ except ValueError:
126
+ return value
127
+ return value
128
+
110
129
 
111
130
  class InputOffice365MsgTraceAuthenticationMethod(
112
131
  str, Enum, metaclass=utils.OpenEnumMeta
@@ -207,6 +226,15 @@ class InputOffice365MsgTraceRetryRules(BaseModel):
207
226
  ] = False
208
227
  r"""Retry request when a connection reset (ECONNRESET) error occurs"""
209
228
 
229
+ @field_serializer("type")
230
+ def serialize_type(self, value):
231
+ if isinstance(value, str):
232
+ try:
233
+ return models.InputOffice365MsgTraceRetryType(value)
234
+ except ValueError:
235
+ return value
236
+ return value
237
+
210
238
 
211
239
  class InputOffice365MsgTraceSubscriptionPlan(str, Enum, metaclass=utils.OpenEnumMeta):
212
240
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
@@ -469,3 +497,30 @@ class InputOffice365MsgTrace(BaseModel):
469
497
  cert_options: Annotated[
470
498
  Optional[CertOptions], pydantic.Field(alias="certOptions")
471
499
  ] = None
500
+
501
+ @field_serializer("auth_type")
502
+ def serialize_auth_type(self, value):
503
+ if isinstance(value, str):
504
+ try:
505
+ return models.InputOffice365MsgTraceAuthenticationMethod(value)
506
+ except ValueError:
507
+ return value
508
+ return value
509
+
510
+ @field_serializer("log_level")
511
+ def serialize_log_level(self, value):
512
+ if isinstance(value, str):
513
+ try:
514
+ return models.InputOffice365MsgTraceLogLevel(value)
515
+ except ValueError:
516
+ return value
517
+ return value
518
+
519
+ @field_serializer("plan_type")
520
+ def serialize_plan_type(self, value):
521
+ if isinstance(value, str):
522
+ try:
523
+ return models.InputOffice365MsgTraceSubscriptionPlan(value)
524
+ except ValueError:
525
+ return value
526
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -107,6 +108,24 @@ class InputOffice365ServicePq(BaseModel):
107
108
  Optional[InputOffice365ServicePqControls], pydantic.Field(alias="pqControls")
108
109
  ] = None
109
110
 
111
+ @field_serializer("mode")
112
+ def serialize_mode(self, value):
113
+ if isinstance(value, str):
114
+ try:
115
+ return models.InputOffice365ServiceMode(value)
116
+ except ValueError:
117
+ return value
118
+ return value
119
+
120
+ @field_serializer("compress")
121
+ def serialize_compress(self, value):
122
+ if isinstance(value, str):
123
+ try:
124
+ return models.InputOffice365ServiceCompression(value)
125
+ except ValueError:
126
+ return value
127
+ return value
128
+
110
129
 
111
130
  class InputOffice365ServiceSubscriptionPlan(str, Enum, metaclass=utils.OpenEnumMeta):
112
131
  r"""Office 365 subscription plan for your organization, typically Office 365 Enterprise"""
@@ -174,6 +193,15 @@ class InputOffice365ServiceContentConfig(BaseModel):
174
193
 
175
194
  enabled: Optional[bool] = None
176
195
 
196
+ @field_serializer("log_level")
197
+ def serialize_log_level(self, value):
198
+ if isinstance(value, str):
199
+ try:
200
+ return models.InputOffice365ServiceLogLevel(value)
201
+ except ValueError:
202
+ return value
203
+ return value
204
+
177
205
 
178
206
  class InputOffice365ServiceRetryType(str, Enum, metaclass=utils.OpenEnumMeta):
179
207
  r"""The algorithm to use when performing HTTP retries"""
@@ -239,6 +267,15 @@ class InputOffice365ServiceRetryRules(BaseModel):
239
267
  ] = False
240
268
  r"""Retry request when a connection reset (ECONNRESET) error occurs"""
241
269
 
270
+ @field_serializer("type")
271
+ def serialize_type(self, value):
272
+ if isinstance(value, str):
273
+ try:
274
+ return models.InputOffice365ServiceRetryType(value)
275
+ except ValueError:
276
+ return value
277
+ return value
278
+
242
279
 
243
280
  class InputOffice365ServiceAuthenticationMethod(
244
281
  str, Enum, metaclass=utils.OpenEnumMeta
@@ -397,3 +434,21 @@ class InputOffice365Service(BaseModel):
397
434
 
398
435
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
399
436
  r"""Select or create a stored text secret"""
437
+
438
+ @field_serializer("plan_type")
439
+ def serialize_plan_type(self, value):
440
+ if isinstance(value, str):
441
+ try:
442
+ return models.InputOffice365ServiceSubscriptionPlan(value)
443
+ except ValueError:
444
+ return value
445
+ return value
446
+
447
+ @field_serializer("auth_type")
448
+ def serialize_auth_type(self, value):
449
+ if isinstance(value, str):
450
+ try:
451
+ return models.InputOffice365ServiceAuthenticationMethod(value)
452
+ except ValueError:
453
+ return value
454
+ return value