cribl-control-plane 0.2.1rc7__py3-none-any.whl → 0.3.0a1__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 (179) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/errors/__init__.py +5 -8
  3. cribl_control_plane/errors/{healthserverstatus_error.py → healthstatus_error.py} +9 -10
  4. cribl_control_plane/groups_sdk.py +28 -52
  5. cribl_control_plane/health.py +16 -22
  6. cribl_control_plane/models/__init__.py +54 -217
  7. cribl_control_plane/models/appmode.py +14 -0
  8. cribl_control_plane/models/authtoken.py +1 -5
  9. cribl_control_plane/models/cacheconnection.py +0 -20
  10. cribl_control_plane/models/configgroup.py +7 -55
  11. cribl_control_plane/models/configgroupcloud.py +1 -11
  12. cribl_control_plane/models/createconfiggroupbyproductop.py +5 -17
  13. cribl_control_plane/models/createroutesappendbyidop.py +2 -2
  14. cribl_control_plane/models/createversionundoop.py +3 -3
  15. cribl_control_plane/models/cribllakedataset.py +1 -11
  16. cribl_control_plane/models/cribllakedatasetupdate.py +1 -11
  17. cribl_control_plane/models/datasetmetadata.py +1 -11
  18. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +0 -11
  19. cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
  20. cribl_control_plane/models/distributedsummary.py +0 -6
  21. cribl_control_plane/models/error.py +16 -0
  22. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +0 -20
  23. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +0 -20
  24. cribl_control_plane/models/getconfiggroupbyproductandidop.py +0 -11
  25. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +0 -11
  26. cribl_control_plane/models/gethealthinfoop.py +17 -0
  27. cribl_control_plane/models/getsummaryop.py +0 -11
  28. cribl_control_plane/models/hbcriblinfo.py +3 -24
  29. cribl_control_plane/models/{healthserverstatus.py → healthstatus.py} +8 -27
  30. cribl_control_plane/models/heartbeatmetadata.py +0 -3
  31. cribl_control_plane/models/input.py +78 -80
  32. cribl_control_plane/models/inputappscope.py +17 -80
  33. cribl_control_plane/models/inputazureblob.py +1 -33
  34. cribl_control_plane/models/inputcollection.py +1 -24
  35. cribl_control_plane/models/inputconfluentcloud.py +18 -195
  36. cribl_control_plane/models/inputcribl.py +1 -24
  37. cribl_control_plane/models/inputcriblhttp.py +17 -62
  38. cribl_control_plane/models/inputcribllakehttp.py +17 -62
  39. cribl_control_plane/models/inputcriblmetrics.py +1 -24
  40. cribl_control_plane/models/inputcribltcp.py +17 -62
  41. cribl_control_plane/models/inputcrowdstrike.py +1 -54
  42. cribl_control_plane/models/inputdatadogagent.py +17 -62
  43. cribl_control_plane/models/inputdatagen.py +1 -24
  44. cribl_control_plane/models/inputedgeprometheus.py +34 -147
  45. cribl_control_plane/models/inputelastic.py +27 -119
  46. cribl_control_plane/models/inputeventhub.py +1 -182
  47. cribl_control_plane/models/inputexec.py +1 -33
  48. cribl_control_plane/models/inputfile.py +3 -42
  49. cribl_control_plane/models/inputfirehose.py +17 -62
  50. cribl_control_plane/models/inputgooglepubsub.py +1 -36
  51. cribl_control_plane/models/inputgrafana.py +32 -157
  52. cribl_control_plane/models/inputhttp.py +17 -62
  53. cribl_control_plane/models/inputhttpraw.py +17 -62
  54. cribl_control_plane/models/inputjournalfiles.py +1 -24
  55. cribl_control_plane/models/inputkafka.py +17 -189
  56. cribl_control_plane/models/inputkinesis.py +1 -80
  57. cribl_control_plane/models/inputkubeevents.py +1 -24
  58. cribl_control_plane/models/inputkubelogs.py +1 -33
  59. cribl_control_plane/models/inputkubemetrics.py +1 -33
  60. cribl_control_plane/models/inputloki.py +17 -71
  61. cribl_control_plane/models/inputmetrics.py +17 -62
  62. cribl_control_plane/models/inputmodeldriventelemetry.py +17 -62
  63. cribl_control_plane/models/inputmsk.py +18 -81
  64. cribl_control_plane/models/inputnetflow.py +1 -24
  65. cribl_control_plane/models/inputoffice365mgmt.py +1 -67
  66. cribl_control_plane/models/inputoffice365msgtrace.py +1 -67
  67. cribl_control_plane/models/inputoffice365service.py +1 -67
  68. cribl_control_plane/models/inputopentelemetry.py +16 -92
  69. cribl_control_plane/models/inputprometheus.py +34 -138
  70. cribl_control_plane/models/inputprometheusrw.py +17 -71
  71. cribl_control_plane/models/inputrawudp.py +1 -24
  72. cribl_control_plane/models/inputs3.py +1 -45
  73. cribl_control_plane/models/inputs3inventory.py +1 -54
  74. cribl_control_plane/models/inputsecuritylake.py +1 -54
  75. cribl_control_plane/models/inputsnmp.py +1 -40
  76. cribl_control_plane/models/inputsplunk.py +17 -85
  77. cribl_control_plane/models/inputsplunkhec.py +16 -70
  78. cribl_control_plane/models/inputsplunksearch.py +1 -63
  79. cribl_control_plane/models/inputsqs.py +1 -56
  80. cribl_control_plane/models/inputsyslog.py +32 -121
  81. cribl_control_plane/models/inputsystemmetrics.py +9 -142
  82. cribl_control_plane/models/inputsystemstate.py +1 -33
  83. cribl_control_plane/models/inputtcp.py +17 -81
  84. cribl_control_plane/models/inputtcpjson.py +17 -71
  85. cribl_control_plane/models/inputwef.py +1 -71
  86. cribl_control_plane/models/inputwindowsmetrics.py +9 -129
  87. cribl_control_plane/models/inputwineventlogs.py +1 -60
  88. cribl_control_plane/models/inputwiz.py +1 -45
  89. cribl_control_plane/models/inputwizwebhook.py +17 -62
  90. cribl_control_plane/models/inputzscalerhec.py +16 -70
  91. cribl_control_plane/models/jobinfo.py +1 -4
  92. cribl_control_plane/models/jobstatus.py +3 -34
  93. cribl_control_plane/models/listconfiggroupbyproductop.py +0 -11
  94. cribl_control_plane/models/logininfo.py +3 -3
  95. cribl_control_plane/models/masterworkerentry.py +1 -11
  96. cribl_control_plane/models/nodeprovidedinfo.py +1 -11
  97. cribl_control_plane/models/nodeupgradestatus.py +0 -38
  98. cribl_control_plane/models/output.py +88 -93
  99. cribl_control_plane/models/outputazureblob.py +1 -110
  100. cribl_control_plane/models/outputazuredataexplorer.py +87 -452
  101. cribl_control_plane/models/outputazureeventhub.py +19 -281
  102. cribl_control_plane/models/outputazurelogs.py +19 -115
  103. cribl_control_plane/models/outputchronicle.py +19 -115
  104. cribl_control_plane/models/outputclickhouse.py +19 -155
  105. cribl_control_plane/models/outputcloudwatch.py +19 -106
  106. cribl_control_plane/models/outputconfluentcloud.py +38 -311
  107. cribl_control_plane/models/outputcriblhttp.py +19 -135
  108. cribl_control_plane/models/outputcribllake.py +1 -97
  109. cribl_control_plane/models/outputcribltcp.py +19 -132
  110. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +20 -129
  111. cribl_control_plane/models/outputdatadog.py +19 -159
  112. cribl_control_plane/models/outputdataset.py +19 -143
  113. cribl_control_plane/models/outputdiskspool.py +1 -11
  114. cribl_control_plane/models/outputdls3.py +1 -152
  115. cribl_control_plane/models/outputdynatracehttp.py +19 -160
  116. cribl_control_plane/models/outputdynatraceotlp.py +19 -160
  117. cribl_control_plane/models/outputelastic.py +19 -163
  118. cribl_control_plane/models/outputelasticcloud.py +19 -140
  119. cribl_control_plane/models/outputexabeam.py +1 -61
  120. cribl_control_plane/models/outputfilesystem.py +1 -87
  121. cribl_control_plane/models/outputgooglechronicle.py +20 -166
  122. cribl_control_plane/models/outputgooglecloudlogging.py +20 -131
  123. cribl_control_plane/models/outputgooglecloudstorage.py +1 -136
  124. cribl_control_plane/models/outputgooglepubsub.py +19 -106
  125. cribl_control_plane/models/outputgrafanacloud.py +37 -288
  126. cribl_control_plane/models/outputgraphite.py +19 -105
  127. cribl_control_plane/models/outputhoneycomb.py +19 -115
  128. cribl_control_plane/models/outputhumiohec.py +19 -126
  129. cribl_control_plane/models/outputinfluxdb.py +19 -130
  130. cribl_control_plane/models/outputkafka.py +34 -302
  131. cribl_control_plane/models/outputkinesis.py +19 -133
  132. cribl_control_plane/models/outputloki.py +17 -129
  133. cribl_control_plane/models/outputminio.py +1 -145
  134. cribl_control_plane/models/outputmsk.py +34 -193
  135. cribl_control_plane/models/outputnewrelic.py +19 -136
  136. cribl_control_plane/models/outputnewrelicevents.py +20 -128
  137. cribl_control_plane/models/outputopentelemetry.py +19 -178
  138. cribl_control_plane/models/outputprometheus.py +19 -115
  139. cribl_control_plane/models/outputring.py +1 -31
  140. cribl_control_plane/models/outputs3.py +1 -152
  141. cribl_control_plane/models/outputsecuritylake.py +1 -114
  142. cribl_control_plane/models/outputsentinel.py +19 -135
  143. cribl_control_plane/models/outputsentineloneaisiem.py +20 -134
  144. cribl_control_plane/models/outputservicenow.py +19 -168
  145. cribl_control_plane/models/outputsignalfx.py +19 -115
  146. cribl_control_plane/models/outputsns.py +17 -113
  147. cribl_control_plane/models/outputsplunk.py +19 -153
  148. cribl_control_plane/models/outputsplunkhec.py +19 -208
  149. cribl_control_plane/models/outputsplunklb.py +19 -182
  150. cribl_control_plane/models/outputsqs.py +17 -124
  151. cribl_control_plane/models/outputstatsd.py +19 -105
  152. cribl_control_plane/models/outputstatsdext.py +19 -105
  153. cribl_control_plane/models/outputsumologic.py +19 -117
  154. cribl_control_plane/models/outputsyslog.py +96 -259
  155. cribl_control_plane/models/outputtcpjson.py +19 -141
  156. cribl_control_plane/models/outputwavefront.py +19 -115
  157. cribl_control_plane/models/outputwebhook.py +19 -161
  158. cribl_control_plane/models/outputxsiam.py +17 -113
  159. cribl_control_plane/models/packinfo.py +5 -8
  160. cribl_control_plane/models/packinstallinfo.py +5 -8
  161. cribl_control_plane/models/resourcepolicy.py +0 -11
  162. cribl_control_plane/models/{uploadpackresponse.py → routecloneconf.py} +4 -4
  163. cribl_control_plane/models/routeconf.py +4 -3
  164. cribl_control_plane/models/runnablejobcollection.py +9 -72
  165. cribl_control_plane/models/runnablejobexecutor.py +9 -32
  166. cribl_control_plane/models/runnablejobscheduledsearch.py +9 -23
  167. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +0 -11
  168. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +0 -11
  169. cribl_control_plane/packs.py +7 -202
  170. cribl_control_plane/routes_sdk.py +6 -6
  171. cribl_control_plane/tokens.py +15 -23
  172. {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/METADATA +9 -50
  173. cribl_control_plane-0.3.0a1.dist-info/RECORD +330 -0
  174. cribl_control_plane/models/groupcreaterequest.py +0 -171
  175. cribl_control_plane/models/outpostnodeinfo.py +0 -16
  176. cribl_control_plane/models/outputdatabricks.py +0 -482
  177. cribl_control_plane/models/updatepacksop.py +0 -25
  178. cribl_control_plane-0.2.1rc7.dist-info/RECORD +0 -331
  179. {cribl_control_plane-0.2.1rc7.dist-info → cribl_control_plane-0.3.0a1.dist-info}/WHEEL +0 -0
@@ -1,14 +1,13 @@
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
+ from cribl_control_plane import 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
10
9
  from pydantic.functional_validators import PlainValidator
11
- from typing import List, Optional
10
+ from typing import Any, List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
13
12
 
14
13
 
@@ -30,18 +29,14 @@ class InputLokiConnection(BaseModel):
30
29
  class InputLokiMode(str, Enum, metaclass=utils.OpenEnumMeta):
31
30
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
32
31
 
33
- # Smart
34
32
  SMART = "smart"
35
- # Always On
36
33
  ALWAYS = "always"
37
34
 
38
35
 
39
36
  class InputLokiCompression(str, Enum, metaclass=utils.OpenEnumMeta):
40
37
  r"""Codec to use to compress the persisted data"""
41
38
 
42
- # None
43
39
  NONE = "none"
44
- # Gzip
45
40
  GZIP = "gzip"
46
41
 
47
42
 
@@ -107,24 +102,6 @@ class InputLokiPq(BaseModel):
107
102
  Optional[InputLokiPqControls], pydantic.Field(alias="pqControls")
108
103
  ] = None
109
104
 
110
- @field_serializer("mode")
111
- def serialize_mode(self, value):
112
- if isinstance(value, str):
113
- try:
114
- return models.InputLokiMode(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.InputLokiCompression(value)
124
- except ValueError:
125
- return value
126
- return value
127
-
128
105
 
129
106
  class InputLokiMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
130
107
  TL_SV1 = "TLSv1"
@@ -142,12 +119,6 @@ class InputLokiMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
142
119
 
143
120
  class InputLokiTLSSettingsServerSideTypedDict(TypedDict):
144
121
  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"""
151
122
  certificate_name: NotRequired[str]
152
123
  r"""The name of the predefined certificate"""
153
124
  priv_key_path: NotRequired[str]
@@ -158,6 +129,10 @@ class InputLokiTLSSettingsServerSideTypedDict(TypedDict):
158
129
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
159
130
  ca_path: NotRequired[str]
160
131
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
132
+ request_cert: NotRequired[bool]
133
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
134
+ reject_unauthorized: NotRequired[Any]
135
+ common_name_regex: NotRequired[Any]
161
136
  min_version: NotRequired[InputLokiMinimumTLSVersion]
162
137
  max_version: NotRequired[InputLokiMaximumTLSVersion]
163
138
 
@@ -165,19 +140,6 @@ class InputLokiTLSSettingsServerSideTypedDict(TypedDict):
165
140
  class InputLokiTLSSettingsServerSide(BaseModel):
166
141
  disabled: Optional[bool] = True
167
142
 
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
-
181
143
  certificate_name: Annotated[
182
144
  Optional[str], pydantic.Field(alias="certificateName")
183
145
  ] = None
@@ -195,6 +157,17 @@ class InputLokiTLSSettingsServerSide(BaseModel):
195
157
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
196
158
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
197
159
 
160
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
161
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
162
+
163
+ reject_unauthorized: Annotated[
164
+ Optional[Any], pydantic.Field(alias="rejectUnauthorized")
165
+ ] = None
166
+
167
+ common_name_regex: Annotated[
168
+ Optional[Any], pydantic.Field(alias="commonNameRegex")
169
+ ] = None
170
+
198
171
  min_version: Annotated[
199
172
  Annotated[
200
173
  Optional[InputLokiMinimumTLSVersion],
@@ -211,24 +184,6 @@ class InputLokiTLSSettingsServerSide(BaseModel):
211
184
  pydantic.Field(alias="maxVersion"),
212
185
  ] = None
213
186
 
214
- @field_serializer("min_version")
215
- def serialize_min_version(self, value):
216
- if isinstance(value, str):
217
- try:
218
- return models.InputLokiMinimumTLSVersion(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.InputLokiMaximumTLSVersion(value)
228
- except ValueError:
229
- return value
230
- return value
231
-
232
187
 
233
188
  class InputLokiAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
234
189
  r"""Loki logs authentication type"""
@@ -524,12 +479,3 @@ class InputLoki(BaseModel):
524
479
  Optional[List[InputLokiOauthHeader]], pydantic.Field(alias="oauthHeaders")
525
480
  ] = None
526
481
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
527
-
528
- @field_serializer("auth_type")
529
- def serialize_auth_type(self, value):
530
- if isinstance(value, str):
531
- try:
532
- return models.InputLokiAuthenticationType(value)
533
- except ValueError:
534
- return value
535
- return value
@@ -1,14 +1,13 @@
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
+ from cribl_control_plane import 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
10
9
  from pydantic.functional_validators import PlainValidator
11
- from typing import List, Optional
10
+ from typing import Any, List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
13
12
 
14
13
 
@@ -30,18 +29,14 @@ class InputMetricsConnection(BaseModel):
30
29
  class InputMetricsMode(str, Enum, metaclass=utils.OpenEnumMeta):
31
30
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
32
31
 
33
- # Smart
34
32
  SMART = "smart"
35
- # Always On
36
33
  ALWAYS = "always"
37
34
 
38
35
 
39
36
  class InputMetricsCompression(str, Enum, metaclass=utils.OpenEnumMeta):
40
37
  r"""Codec to use to compress the persisted data"""
41
38
 
42
- # None
43
39
  NONE = "none"
44
- # Gzip
45
40
  GZIP = "gzip"
46
41
 
47
42
 
@@ -107,24 +102,6 @@ class InputMetricsPq(BaseModel):
107
102
  Optional[InputMetricsPqControls], pydantic.Field(alias="pqControls")
108
103
  ] = None
109
104
 
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
-
128
105
 
129
106
  class InputMetricsMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
130
107
  TL_SV1 = "TLSv1"
@@ -142,12 +119,6 @@ class InputMetricsMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
142
119
 
143
120
  class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
144
121
  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"""
151
122
  certificate_name: NotRequired[str]
152
123
  r"""The name of the predefined certificate"""
153
124
  priv_key_path: NotRequired[str]
@@ -158,6 +129,10 @@ class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
158
129
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
159
130
  ca_path: NotRequired[str]
160
131
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
132
+ request_cert: NotRequired[bool]
133
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
134
+ reject_unauthorized: NotRequired[Any]
135
+ common_name_regex: NotRequired[Any]
161
136
  min_version: NotRequired[InputMetricsMinimumTLSVersion]
162
137
  max_version: NotRequired[InputMetricsMaximumTLSVersion]
163
138
 
@@ -165,19 +140,6 @@ class InputMetricsTLSSettingsServerSideTypedDict(TypedDict):
165
140
  class InputMetricsTLSSettingsServerSide(BaseModel):
166
141
  disabled: Optional[bool] = True
167
142
 
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
-
181
143
  certificate_name: Annotated[
182
144
  Optional[str], pydantic.Field(alias="certificateName")
183
145
  ] = None
@@ -195,6 +157,17 @@ class InputMetricsTLSSettingsServerSide(BaseModel):
195
157
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
196
158
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
197
159
 
160
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
161
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
162
+
163
+ reject_unauthorized: Annotated[
164
+ Optional[Any], pydantic.Field(alias="rejectUnauthorized")
165
+ ] = None
166
+
167
+ common_name_regex: Annotated[
168
+ Optional[Any], pydantic.Field(alias="commonNameRegex")
169
+ ] = None
170
+
198
171
  min_version: Annotated[
199
172
  Annotated[
200
173
  Optional[InputMetricsMinimumTLSVersion],
@@ -211,24 +184,6 @@ class InputMetricsTLSSettingsServerSide(BaseModel):
211
184
  pydantic.Field(alias="maxVersion"),
212
185
  ] = None
213
186
 
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
-
232
187
 
233
188
  class InputMetricsMetadatumTypedDict(TypedDict):
234
189
  name: str
@@ -1,14 +1,13 @@
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
+ from cribl_control_plane import 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
10
9
  from pydantic.functional_validators import PlainValidator
11
- from typing import List, Optional
10
+ from typing import Any, List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
13
12
 
14
13
 
@@ -30,18 +29,14 @@ class InputModelDrivenTelemetryConnection(BaseModel):
30
29
  class InputModelDrivenTelemetryMode(str, Enum, metaclass=utils.OpenEnumMeta):
31
30
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
32
31
 
33
- # Smart
34
32
  SMART = "smart"
35
- # Always On
36
33
  ALWAYS = "always"
37
34
 
38
35
 
39
36
  class InputModelDrivenTelemetryCompression(str, Enum, metaclass=utils.OpenEnumMeta):
40
37
  r"""Codec to use to compress the persisted data"""
41
38
 
42
- # None
43
39
  NONE = "none"
44
- # Gzip
45
40
  GZIP = "gzip"
46
41
 
47
42
 
@@ -110,24 +105,6 @@ class InputModelDrivenTelemetryPq(BaseModel):
110
105
  pydantic.Field(alias="pqControls"),
111
106
  ] = None
112
107
 
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
-
131
108
 
132
109
  class InputModelDrivenTelemetryMinimumTLSVersion(
133
110
  str, Enum, metaclass=utils.OpenEnumMeta
@@ -149,12 +126,6 @@ class InputModelDrivenTelemetryMaximumTLSVersion(
149
126
 
150
127
  class InputModelDrivenTelemetryTLSSettingsServerSideTypedDict(TypedDict):
151
128
  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"""
158
129
  certificate_name: NotRequired[str]
159
130
  r"""The name of the predefined certificate"""
160
131
  priv_key_path: NotRequired[str]
@@ -165,6 +136,10 @@ class InputModelDrivenTelemetryTLSSettingsServerSideTypedDict(TypedDict):
165
136
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
166
137
  ca_path: NotRequired[str]
167
138
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
139
+ request_cert: NotRequired[bool]
140
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
141
+ reject_unauthorized: NotRequired[Any]
142
+ common_name_regex: NotRequired[Any]
168
143
  min_version: NotRequired[InputModelDrivenTelemetryMinimumTLSVersion]
169
144
  max_version: NotRequired[InputModelDrivenTelemetryMaximumTLSVersion]
170
145
 
@@ -172,19 +147,6 @@ class InputModelDrivenTelemetryTLSSettingsServerSideTypedDict(TypedDict):
172
147
  class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
173
148
  disabled: Optional[bool] = True
174
149
 
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
-
188
150
  certificate_name: Annotated[
189
151
  Optional[str], pydantic.Field(alias="certificateName")
190
152
  ] = None
@@ -202,6 +164,17 @@ class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
202
164
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
203
165
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
204
166
 
167
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
168
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
169
+
170
+ reject_unauthorized: Annotated[
171
+ Optional[Any], pydantic.Field(alias="rejectUnauthorized")
172
+ ] = None
173
+
174
+ common_name_regex: Annotated[
175
+ Optional[Any], pydantic.Field(alias="commonNameRegex")
176
+ ] = None
177
+
205
178
  min_version: Annotated[
206
179
  Annotated[
207
180
  Optional[InputModelDrivenTelemetryMinimumTLSVersion],
@@ -218,24 +191,6 @@ class InputModelDrivenTelemetryTLSSettingsServerSide(BaseModel):
218
191
  pydantic.Field(alias="maxVersion"),
219
192
  ] = None
220
193
 
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
-
239
194
 
240
195
  class InputModelDrivenTelemetryMetadatumTypedDict(TypedDict):
241
196
  name: str
@@ -1,12 +1,11 @@
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
+ from cribl_control_plane import 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
10
9
  from pydantic.functional_validators import PlainValidator
11
10
  from typing import List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -30,18 +29,14 @@ class InputMskConnection(BaseModel):
30
29
  class InputMskMode(str, Enum, metaclass=utils.OpenEnumMeta):
31
30
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
32
31
 
33
- # Smart
34
32
  SMART = "smart"
35
- # Always On
36
33
  ALWAYS = "always"
37
34
 
38
35
 
39
36
  class InputMskCompression(str, Enum, metaclass=utils.OpenEnumMeta):
40
37
  r"""Codec to use to compress the persisted data"""
41
38
 
42
- # None
43
39
  NONE = "none"
44
- # Gzip
45
40
  GZIP = "gzip"
46
41
 
47
42
 
@@ -107,24 +102,6 @@ class InputMskPq(BaseModel):
107
102
  Optional[InputMskPqControls], pydantic.Field(alias="pqControls")
108
103
  ] = None
109
104
 
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
-
128
105
 
129
106
  class InputMskMetadatumTypedDict(TypedDict):
130
107
  name: str
@@ -139,6 +116,13 @@ class InputMskMetadatum(BaseModel):
139
116
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
140
117
 
141
118
 
119
+ class InputMskSchemaType(str, Enum, metaclass=utils.OpenEnumMeta):
120
+ r"""The schema format used to encode and decode event data"""
121
+
122
+ AVRO = "avro"
123
+ JSON = "json"
124
+
125
+
142
126
  class InputMskAuthTypedDict(TypedDict):
143
127
  r"""Credentials to use when authenticating with the schema registry using basic HTTP authentication"""
144
128
 
@@ -244,29 +228,13 @@ class InputMskKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
244
228
  pydantic.Field(alias="maxVersion"),
245
229
  ] = None
246
230
 
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
-
265
231
 
266
232
  class InputMskKafkaSchemaRegistryAuthenticationTypedDict(TypedDict):
267
233
  disabled: NotRequired[bool]
268
234
  schema_registry_url: NotRequired[str]
269
235
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
236
+ schema_type: NotRequired[InputMskSchemaType]
237
+ r"""The schema format used to encode and decode event data"""
270
238
  connection_timeout: NotRequired[float]
271
239
  r"""Maximum time to wait for a Schema Registry connection to complete successfully"""
272
240
  request_timeout: NotRequired[float]
@@ -286,6 +254,14 @@ class InputMskKafkaSchemaRegistryAuthentication(BaseModel):
286
254
  ] = "http://localhost:8081"
287
255
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
288
256
 
257
+ schema_type: Annotated[
258
+ Annotated[
259
+ Optional[InputMskSchemaType], PlainValidator(validate_open_enum(False))
260
+ ],
261
+ pydantic.Field(alias="schemaType"),
262
+ ] = InputMskSchemaType.AVRO
263
+ r"""The schema format used to encode and decode event data"""
264
+
289
265
  connection_timeout: Annotated[
290
266
  Optional[float], pydantic.Field(alias="connectionTimeout")
291
267
  ] = 30000
@@ -308,11 +284,8 @@ class InputMskKafkaSchemaRegistryAuthentication(BaseModel):
308
284
  class InputMskAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
309
285
  r"""AWS authentication method. Choose Auto to use IAM roles."""
310
286
 
311
- # Auto
312
287
  AUTO = "auto"
313
- # Manual
314
288
  MANUAL = "manual"
315
- # Secret Key pair
316
289
  SECRET = "secret"
317
290
 
318
291
 
@@ -405,24 +378,6 @@ class InputMskTLSSettingsClientSide(BaseModel):
405
378
  pydantic.Field(alias="maxVersion"),
406
379
  ] = None
407
380
 
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
-
426
381
 
427
382
  class InputMskTypedDict(TypedDict):
428
383
  type: InputMskType
@@ -727,21 +682,3 @@ class InputMsk(BaseModel):
727
682
 
728
683
  aws_secret: Annotated[Optional[str], pydantic.Field(alias="awsSecret")] = None
729
684
  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,12 +1,11 @@
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
+ from cribl_control_plane import 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
10
9
  from pydantic.functional_validators import PlainValidator
11
10
  from typing import List, Optional
12
11
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -30,18 +29,14 @@ class InputNetflowConnection(BaseModel):
30
29
  class InputNetflowMode(str, Enum, metaclass=utils.OpenEnumMeta):
31
30
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
32
31
 
33
- # Smart
34
32
  SMART = "smart"
35
- # Always On
36
33
  ALWAYS = "always"
37
34
 
38
35
 
39
36
  class InputNetflowCompression(str, Enum, metaclass=utils.OpenEnumMeta):
40
37
  r"""Codec to use to compress the persisted data"""
41
38
 
42
- # None
43
39
  NONE = "none"
44
- # Gzip
45
40
  GZIP = "gzip"
46
41
 
47
42
 
@@ -107,24 +102,6 @@ class InputNetflowPq(BaseModel):
107
102
  Optional[InputNetflowPqControls], pydantic.Field(alias="pqControls")
108
103
  ] = None
109
104
 
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
-
128
105
 
129
106
  class InputNetflowMetadatumTypedDict(TypedDict):
130
107
  name: str