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 InputWizWebhookPq(BaseModel):
106
107
  Optional[InputWizWebhookPqControls], 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.InputWizWebhookMode(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.InputWizWebhookCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputWizWebhookMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
111
130
  TL_SV1 = "TLSv1"
@@ -123,6 +142,12 @@ class InputWizWebhookMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
123
142
 
124
143
  class InputWizWebhookTLSSettingsServerSideTypedDict(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 InputWizWebhookTLSSettingsServerSideTypedDict(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[InputWizWebhookMinimumTLSVersion]
141
162
  max_version: NotRequired[InputWizWebhookMaximumTLSVersion]
142
163
 
@@ -144,6 +165,19 @@ class InputWizWebhookTLSSettingsServerSideTypedDict(TypedDict):
144
165
  class InputWizWebhookTLSSettingsServerSide(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 InputWizWebhookTLSSettingsServerSide(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[InputWizWebhookMinimumTLSVersion],
@@ -188,6 +211,24 @@ class InputWizWebhookTLSSettingsServerSide(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.InputWizWebhookMinimumTLSVersion(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.InputWizWebhookMaximumTLSVersion(value)
228
+ except ValueError:
229
+ return value
230
+ return value
231
+
191
232
 
192
233
  class InputWizWebhookMetadatumTypedDict(TypedDict):
193
234
  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 Any, List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -106,6 +107,24 @@ class InputZscalerHecPq(BaseModel):
106
107
  Optional[InputZscalerHecPqControls], 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.InputZscalerHecMode(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.InputZscalerHecCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputZscalerHecAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
111
130
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
@@ -166,6 +185,15 @@ class InputZscalerHecAuthToken(BaseModel):
166
185
  metadata: Optional[List[InputZscalerHecAuthTokenMetadatum]] = None
167
186
  r"""Fields to add to events referencing this token"""
168
187
 
188
+ @field_serializer("auth_type")
189
+ def serialize_auth_type(self, value):
190
+ if isinstance(value, str):
191
+ try:
192
+ return models.InputZscalerHecAuthenticationMethod(value)
193
+ except ValueError:
194
+ return value
195
+ return value
196
+
169
197
 
170
198
  class InputZscalerHecMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
171
199
  TL_SV1 = "TLSv1"
@@ -183,6 +211,12 @@ class InputZscalerHecMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
183
211
 
184
212
  class InputZscalerHecTLSSettingsServerSideTypedDict(TypedDict):
185
213
  disabled: NotRequired[bool]
214
+ request_cert: NotRequired[bool]
215
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
216
+ reject_unauthorized: NotRequired[bool]
217
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
218
+ common_name_regex: NotRequired[str]
219
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
186
220
  certificate_name: NotRequired[str]
187
221
  r"""The name of the predefined certificate"""
188
222
  priv_key_path: NotRequired[str]
@@ -193,10 +227,6 @@ class InputZscalerHecTLSSettingsServerSideTypedDict(TypedDict):
193
227
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
194
228
  ca_path: NotRequired[str]
195
229
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
196
- request_cert: NotRequired[bool]
197
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
198
- reject_unauthorized: NotRequired[Any]
199
- common_name_regex: NotRequired[Any]
200
230
  min_version: NotRequired[InputZscalerHecMinimumTLSVersion]
201
231
  max_version: NotRequired[InputZscalerHecMaximumTLSVersion]
202
232
 
@@ -204,6 +234,19 @@ class InputZscalerHecTLSSettingsServerSideTypedDict(TypedDict):
204
234
  class InputZscalerHecTLSSettingsServerSide(BaseModel):
205
235
  disabled: Optional[bool] = True
206
236
 
237
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
238
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
239
+
240
+ reject_unauthorized: Annotated[
241
+ Optional[bool], pydantic.Field(alias="rejectUnauthorized")
242
+ ] = True
243
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
244
+
245
+ common_name_regex: Annotated[
246
+ Optional[str], pydantic.Field(alias="commonNameRegex")
247
+ ] = "/.*/"
248
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
249
+
207
250
  certificate_name: Annotated[
208
251
  Optional[str], pydantic.Field(alias="certificateName")
209
252
  ] = None
@@ -221,17 +264,6 @@ class InputZscalerHecTLSSettingsServerSide(BaseModel):
221
264
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
222
265
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
223
266
 
224
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
225
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
226
-
227
- reject_unauthorized: Annotated[
228
- Optional[Any], pydantic.Field(alias="rejectUnauthorized")
229
- ] = None
230
-
231
- common_name_regex: Annotated[
232
- Optional[Any], pydantic.Field(alias="commonNameRegex")
233
- ] = None
234
-
235
267
  min_version: Annotated[
236
268
  Annotated[
237
269
  Optional[InputZscalerHecMinimumTLSVersion],
@@ -248,6 +280,24 @@ class InputZscalerHecTLSSettingsServerSide(BaseModel):
248
280
  pydantic.Field(alias="maxVersion"),
249
281
  ] = None
250
282
 
283
+ @field_serializer("min_version")
284
+ def serialize_min_version(self, value):
285
+ if isinstance(value, str):
286
+ try:
287
+ return models.InputZscalerHecMinimumTLSVersion(value)
288
+ except ValueError:
289
+ return value
290
+ return value
291
+
292
+ @field_serializer("max_version")
293
+ def serialize_max_version(self, value):
294
+ if isinstance(value, str):
295
+ try:
296
+ return models.InputZscalerHecMaximumTLSVersion(value)
297
+ except ValueError:
298
+ return value
299
+ return value
300
+
251
301
 
252
302
  class InputZscalerHecMetadatumTypedDict(TypedDict):
253
303
  name: str
@@ -4,14 +4,20 @@ from __future__ import annotations
4
4
  from .jobstatus import JobStatus, JobStatusTypedDict
5
5
  from .runnablejob import RunnableJob, RunnableJobTypedDict
6
6
  from cribl_control_plane.types import BaseModel
7
- from typing import Dict, Optional
8
- from typing_extensions import NotRequired, TypedDict
7
+ from typing import Dict, Optional, Union
8
+ from typing_extensions import NotRequired, TypeAliasType, TypedDict
9
+
10
+
11
+ StatsTypedDict = TypeAliasType("StatsTypedDict", Union[float, Dict[str, float]])
12
+
13
+
14
+ Stats = TypeAliasType("Stats", Union[float, Dict[str, float]])
9
15
 
10
16
 
11
17
  class JobInfoTypedDict(TypedDict):
12
18
  args: RunnableJobTypedDict
13
19
  id: str
14
- stats: Dict[str, float]
20
+ stats: Dict[str, StatsTypedDict]
15
21
  status: JobStatusTypedDict
16
22
  keep: NotRequired[bool]
17
23
 
@@ -21,7 +27,7 @@ class JobInfo(BaseModel):
21
27
 
22
28
  id: str
23
29
 
24
- stats: Dict[str, float]
30
+ stats: Dict[str, Stats]
25
31
 
26
32
  status: JobStatus
27
33
 
@@ -1,17 +1,48 @@
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 models, utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
7
+ from enum import Enum
8
+ from pydantic import field_serializer
9
+ from pydantic.functional_validators import PlainValidator
5
10
  from typing import Any, Dict, Optional
6
- from typing_extensions import NotRequired, TypedDict
11
+ from typing_extensions import Annotated, NotRequired, TypedDict
12
+
13
+
14
+ class State(int, Enum, metaclass=utils.OpenEnumMeta):
15
+ r"""State of the Job"""
16
+
17
+ INITIALIZING = 0
18
+ PENDING = 1
19
+ RUNNING = 2
20
+ PAUSED = 3
21
+ CANCELLED = 4
22
+ FINISHED = 5
23
+ FAILED = 6
24
+ ORPHANED = 7
25
+ UNKNOWN = 8
26
+ LENGTH = 9
7
27
 
8
28
 
9
29
  class JobStatusTypedDict(TypedDict):
10
- state: Dict[str, Any]
30
+ state: State
31
+ r"""State of the Job"""
11
32
  reason: NotRequired[Dict[str, Any]]
12
33
 
13
34
 
14
35
  class JobStatus(BaseModel):
15
- state: Dict[str, Any]
36
+ state: Annotated[State, PlainValidator(validate_open_enum(True))]
37
+ r"""State of the Job"""
16
38
 
17
39
  reason: Optional[Dict[str, Any]] = None
40
+
41
+ @field_serializer("state")
42
+ def serialize_state(self, value):
43
+ if isinstance(value, str):
44
+ try:
45
+ return models.State(value)
46
+ except ValueError:
47
+ return value
48
+ return value
@@ -0,0 +1,17 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ import pydantic
6
+ from typing_extensions import Annotated, TypedDict
7
+
8
+
9
+ class LakeDatasetMetricsTypedDict(TypedDict):
10
+ current_size_bytes: float
11
+ metrics_date: str
12
+
13
+
14
+ class LakeDatasetMetrics(BaseModel):
15
+ current_size_bytes: Annotated[float, pydantic.Field(alias="currentSizeBytes")]
16
+
17
+ metrics_date: Annotated[str, pydantic.Field(alias="metricsDate")]
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
  from .configgroup import ConfigGroup, ConfigGroupTypedDict
5
5
  from .productscore import ProductsCore
6
+ from cribl_control_plane import models
6
7
  from cribl_control_plane.types import BaseModel
7
8
  from cribl_control_plane.utils import (
8
9
  FieldMetadata,
@@ -10,6 +11,7 @@ from cribl_control_plane.utils import (
10
11
  QueryParamMetadata,
11
12
  validate_open_enum,
12
13
  )
14
+ from pydantic import field_serializer
13
15
  from pydantic.functional_validators import PlainValidator
14
16
  from typing import List, Optional
15
17
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -35,6 +37,15 @@ class ListConfigGroupByProductRequest(BaseModel):
35
37
  ] = None
36
38
  r"""Comma-separated list of additional properties to include in the response. Available values are <code>git.commit</code>, <code>git.localChanges</code>, and <code>git.log</code>."""
37
39
 
40
+ @field_serializer("product")
41
+ def serialize_product(self, value):
42
+ if isinstance(value, str):
43
+ try:
44
+ return models.ProductsCore(value)
45
+ except ValueError:
46
+ return value
47
+ return value
48
+
38
49
 
39
50
  class ListConfigGroupByProductResponseTypedDict(TypedDict):
40
51
  r"""a list of ConfigGroup objects"""
@@ -4,11 +4,12 @@ from __future__ import annotations
4
4
  from .heartbeatmetadata import HeartbeatMetadata, HeartbeatMetadataTypedDict
5
5
  from .nodeprovidedinfo import NodeProvidedInfo, NodeProvidedInfoTypedDict
6
6
  from .nodeupgradestatus import NodeUpgradeStatus, NodeUpgradeStatusTypedDict
7
- from cribl_control_plane import utils
7
+ from cribl_control_plane import models, utils
8
8
  from cribl_control_plane.types import BaseModel
9
9
  from cribl_control_plane.utils import validate_open_enum
10
10
  from enum import Enum
11
11
  import pydantic
12
+ from pydantic import field_serializer
12
13
  from pydantic.functional_validators import PlainValidator
13
14
  from typing import Optional
14
15
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -87,3 +88,12 @@ class MasterWorkerEntry(BaseModel):
87
88
  ] = None
88
89
 
89
90
  workers: Optional[MasterWorkerEntryWorkers] = None
91
+
92
+ @field_serializer("type")
93
+ def serialize_type(self, value):
94
+ if isinstance(value, str):
95
+ try:
96
+ return models.MasterWorkerEntryType(value)
97
+ except ValueError:
98
+ return value
99
+ return value
@@ -5,8 +5,10 @@ from .nodeactiveupgradestatus import NodeActiveUpgradeStatus
5
5
  from .nodefailedupgradestatus import NodeFailedUpgradeStatus
6
6
  from .nodeskippedupgradestatus import NodeSkippedUpgradeStatus
7
7
  from .nodeupgradestate import NodeUpgradeState
8
+ from cribl_control_plane import models
8
9
  from cribl_control_plane.types import BaseModel
9
10
  from cribl_control_plane.utils import validate_open_enum
11
+ from pydantic import field_serializer
10
12
  from pydantic.functional_validators import PlainValidator
11
13
  from typing import Optional
12
14
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -36,3 +38,39 @@ class NodeUpgradeStatus(BaseModel):
36
38
  skipped: Annotated[
37
39
  Optional[NodeSkippedUpgradeStatus], PlainValidator(validate_open_enum(True))
38
40
  ] = None
41
+
42
+ @field_serializer("active")
43
+ def serialize_active(self, value):
44
+ if isinstance(value, str):
45
+ try:
46
+ return models.NodeActiveUpgradeStatus(value)
47
+ except ValueError:
48
+ return value
49
+ return value
50
+
51
+ @field_serializer("failed")
52
+ def serialize_failed(self, value):
53
+ if isinstance(value, str):
54
+ try:
55
+ return models.NodeFailedUpgradeStatus(value)
56
+ except ValueError:
57
+ return value
58
+ return value
59
+
60
+ @field_serializer("skipped")
61
+ def serialize_skipped(self, value):
62
+ if isinstance(value, str):
63
+ try:
64
+ return models.NodeSkippedUpgradeStatus(value)
65
+ except ValueError:
66
+ return value
67
+ return value
68
+
69
+ @field_serializer("state")
70
+ def serialize_state(self, value):
71
+ if isinstance(value, str):
72
+ try:
73
+ return models.NodeUpgradeState(value)
74
+ except ValueError:
75
+ return value
76
+ return value
@@ -98,64 +98,64 @@ OutputTypedDict = TypeAliasType(
98
98
  OutputNetflowTypedDict,
99
99
  OutputDiskSpoolTypedDict,
100
100
  OutputRingTypedDict,
101
- OutputStatsdExtTypedDict,
102
101
  OutputGraphiteTypedDict,
102
+ OutputStatsdExtTypedDict,
103
103
  OutputStatsdTypedDict,
104
104
  OutputGooglePubsubTypedDict,
105
- OutputCriblTCPTypedDict,
105
+ OutputExabeamTypedDict,
106
106
  OutputSplunkTypedDict,
107
107
  OutputSnsTypedDict,
108
- OutputCloudwatchTypedDict,
108
+ OutputCriblTCPTypedDict,
109
109
  OutputAzureEventhubTypedDict,
110
- OutputWavefrontTypedDict,
110
+ OutputCloudwatchTypedDict,
111
111
  OutputSignalfxTypedDict,
112
112
  OutputHoneycombTypedDict,
113
+ OutputWavefrontTypedDict,
114
+ OutputHumioHecTypedDict,
113
115
  OutputSumoLogicTypedDict,
114
116
  OutputCrowdstrikeNextGenSiemTypedDict,
115
- OutputHumioHecTypedDict,
116
117
  OutputTcpjsonTypedDict,
117
118
  OutputElasticCloudTypedDict,
118
- OutputKinesisTypedDict,
119
+ OutputNewrelicEventsTypedDict,
120
+ OutputFilesystemTypedDict,
119
121
  OutputConfluentCloudTypedDict,
120
122
  OutputKafkaTypedDict,
121
- OutputExabeamTypedDict,
122
- OutputNewrelicEventsTypedDict,
123
123
  OutputAzureLogsTypedDict,
124
+ OutputKinesisTypedDict,
124
125
  OutputSplunkLbTypedDict,
125
126
  OutputSyslogTypedDict,
126
127
  OutputSqsTypedDict,
127
- OutputNewrelicTypedDict,
128
128
  OutputCriblHTTPTypedDict,
129
+ OutputNewrelicTypedDict,
129
130
  OutputXsiamTypedDict,
130
- OutputFilesystemTypedDict,
131
131
  OutputDatasetTypedDict,
132
132
  OutputLokiTypedDict,
133
- OutputSplunkHecTypedDict,
133
+ OutputCriblLakeTypedDict,
134
134
  OutputDynatraceHTTPTypedDict,
135
135
  OutputServiceNowTypedDict,
136
+ OutputSplunkHecTypedDict,
136
137
  OutputChronicleTypedDict,
137
138
  OutputDynatraceOtlpTypedDict,
138
- OutputGoogleChronicleTypedDict,
139
+ OutputDatabricksTypedDict,
139
140
  OutputElasticTypedDict,
140
141
  OutputDatadogTypedDict,
141
- OutputCriblLakeTypedDict,
142
- OutputDatabricksTypedDict,
142
+ OutputGoogleChronicleTypedDict,
143
143
  OutputPrometheusTypedDict,
144
- OutputMskTypedDict,
145
144
  OutputSentinelOneAiSiemTypedDict,
146
- OutputSentinelTypedDict,
147
- OutputInfluxdbTypedDict,
145
+ OutputMskTypedDict,
148
146
  OutputGoogleCloudStorageTypedDict,
147
+ OutputSentinelTypedDict,
149
148
  OutputAzureBlobTypedDict,
150
- OutputOpenTelemetryTypedDict,
149
+ OutputInfluxdbTypedDict,
151
150
  OutputMinioTypedDict,
152
- OutputClickHouseTypedDict,
153
151
  OutputSecurityLakeTypedDict,
154
- OutputS3TypedDict,
152
+ OutputOpenTelemetryTypedDict,
153
+ OutputClickHouseTypedDict,
155
154
  OutputDlS3TypedDict,
155
+ OutputS3TypedDict,
156
156
  OutputWebhookTypedDict,
157
- OutputAzureDataExplorerTypedDict,
158
157
  OutputGoogleCloudLoggingTypedDict,
158
+ OutputAzureDataExplorerTypedDict,
159
159
  OutputGrafanaCloudTypedDict,
160
160
  ],
161
161
  )
@@ -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
@@ -184,6 +185,8 @@ class OutputAzureBlobTypedDict(TypedDict):
184
185
  r"""Compression level to apply before moving files to final destination"""
185
186
  automatic_schema: NotRequired[bool]
186
187
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
188
+ parquet_schema: NotRequired[str]
189
+ r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
187
190
  parquet_version: NotRequired[OutputAzureBlobParquetVersion]
188
191
  r"""Determines which data types are supported and how they are represented"""
189
192
  parquet_data_page_version: NotRequired[OutputAzureBlobDataPageVersion]
@@ -387,6 +390,11 @@ class OutputAzureBlob(BaseModel):
387
390
  ] = False
388
391
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
389
392
 
393
+ parquet_schema: Annotated[Optional[str], pydantic.Field(alias="parquetSchema")] = (
394
+ None
395
+ )
396
+ r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
397
+
390
398
  parquet_version: Annotated[
391
399
  Annotated[
392
400
  Optional[OutputAzureBlobParquetVersion],
@@ -487,3 +495,84 @@ class OutputAzureBlob(BaseModel):
487
495
  r"""Select or create a stored text secret"""
488
496
 
489
497
  certificate: Optional[OutputAzureBlobCertificate] = None
498
+
499
+ @field_serializer("format_")
500
+ def serialize_format_(self, value):
501
+ if isinstance(value, str):
502
+ try:
503
+ return models.OutputAzureBlobDataFormat(value)
504
+ except ValueError:
505
+ return value
506
+ return value
507
+
508
+ @field_serializer("on_backpressure")
509
+ def serialize_on_backpressure(self, value):
510
+ if isinstance(value, str):
511
+ try:
512
+ return models.OutputAzureBlobBackpressureBehavior(value)
513
+ except ValueError:
514
+ return value
515
+ return value
516
+
517
+ @field_serializer("on_disk_full_backpressure")
518
+ def serialize_on_disk_full_backpressure(self, value):
519
+ if isinstance(value, str):
520
+ try:
521
+ return models.OutputAzureBlobDiskSpaceProtection(value)
522
+ except ValueError:
523
+ return value
524
+ return value
525
+
526
+ @field_serializer("auth_type")
527
+ def serialize_auth_type(self, value):
528
+ if isinstance(value, str):
529
+ try:
530
+ return models.OutputAzureBlobAuthenticationMethod(value)
531
+ except ValueError:
532
+ return value
533
+ return value
534
+
535
+ @field_serializer("storage_class")
536
+ def serialize_storage_class(self, value):
537
+ if isinstance(value, str):
538
+ try:
539
+ return models.BlobAccessTier(value)
540
+ except ValueError:
541
+ return value
542
+ return value
543
+
544
+ @field_serializer("compress")
545
+ def serialize_compress(self, value):
546
+ if isinstance(value, str):
547
+ try:
548
+ return models.OutputAzureBlobCompression(value)
549
+ except ValueError:
550
+ return value
551
+ return value
552
+
553
+ @field_serializer("compression_level")
554
+ def serialize_compression_level(self, value):
555
+ if isinstance(value, str):
556
+ try:
557
+ return models.OutputAzureBlobCompressionLevel(value)
558
+ except ValueError:
559
+ return value
560
+ return value
561
+
562
+ @field_serializer("parquet_version")
563
+ def serialize_parquet_version(self, value):
564
+ if isinstance(value, str):
565
+ try:
566
+ return models.OutputAzureBlobParquetVersion(value)
567
+ except ValueError:
568
+ return value
569
+ return value
570
+
571
+ @field_serializer("parquet_data_page_version")
572
+ def serialize_parquet_data_page_version(self, value):
573
+ if isinstance(value, str):
574
+ try:
575
+ return models.OutputAzureBlobDataPageVersion(value)
576
+ except ValueError:
577
+ return value
578
+ return value