cribl-control-plane 0.0.16__py3-none-any.whl → 0.0.17__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 (133) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/errors/healthstatus_error.py +2 -8
  3. cribl_control_plane/models/__init__.py +4124 -4124
  4. cribl_control_plane/models/createinputop.py +1734 -2771
  5. cribl_control_plane/models/createoutputop.py +2153 -4314
  6. cribl_control_plane/models/healthstatus.py +4 -7
  7. cribl_control_plane/models/inputappscope.py +16 -36
  8. cribl_control_plane/models/inputazureblob.py +8 -19
  9. cribl_control_plane/models/inputcollection.py +6 -15
  10. cribl_control_plane/models/inputconfluentcloud.py +20 -45
  11. cribl_control_plane/models/inputcribl.py +6 -13
  12. cribl_control_plane/models/inputcriblhttp.py +10 -27
  13. cribl_control_plane/models/inputcribllakehttp.py +12 -26
  14. cribl_control_plane/models/inputcriblmetrics.py +6 -14
  15. cribl_control_plane/models/inputcribltcp.py +10 -27
  16. cribl_control_plane/models/inputcrowdstrike.py +12 -28
  17. cribl_control_plane/models/inputdatadogagent.py +10 -28
  18. cribl_control_plane/models/inputdatagen.py +6 -13
  19. cribl_control_plane/models/inputedgeprometheus.py +31 -64
  20. cribl_control_plane/models/inputelastic.py +16 -44
  21. cribl_control_plane/models/inputeventhub.py +8 -19
  22. cribl_control_plane/models/inputexec.py +8 -16
  23. cribl_control_plane/models/inputfile.py +8 -17
  24. cribl_control_plane/models/inputfirehose.py +10 -27
  25. cribl_control_plane/models/inputgooglepubsub.py +8 -23
  26. cribl_control_plane/models/inputgrafana_union.py +35 -81
  27. cribl_control_plane/models/inputhttp.py +10 -27
  28. cribl_control_plane/models/inputhttpraw.py +10 -27
  29. cribl_control_plane/models/inputjournalfiles.py +6 -16
  30. cribl_control_plane/models/inputkafka.py +16 -45
  31. cribl_control_plane/models/inputkinesis.py +16 -42
  32. cribl_control_plane/models/inputkubeevents.py +6 -13
  33. cribl_control_plane/models/inputkubelogs.py +10 -18
  34. cribl_control_plane/models/inputkubemetrics.py +10 -18
  35. cribl_control_plane/models/inputloki.py +12 -33
  36. cribl_control_plane/models/inputmetrics.py +10 -25
  37. cribl_control_plane/models/inputmodeldriventelemetry.py +12 -32
  38. cribl_control_plane/models/inputmsk.py +18 -52
  39. cribl_control_plane/models/inputnetflow.py +6 -15
  40. cribl_control_plane/models/inputoffice365mgmt.py +16 -37
  41. cribl_control_plane/models/inputoffice365msgtrace.py +18 -39
  42. cribl_control_plane/models/inputoffice365service.py +18 -39
  43. cribl_control_plane/models/inputopentelemetry.py +18 -42
  44. cribl_control_plane/models/inputprometheus.py +20 -54
  45. cribl_control_plane/models/inputprometheusrw.py +12 -34
  46. cribl_control_plane/models/inputrawudp.py +6 -15
  47. cribl_control_plane/models/inputs3.py +10 -23
  48. cribl_control_plane/models/inputs3inventory.py +12 -28
  49. cribl_control_plane/models/inputsecuritylake.py +12 -29
  50. cribl_control_plane/models/inputsnmp.py +8 -20
  51. cribl_control_plane/models/inputsplunk.py +14 -37
  52. cribl_control_plane/models/inputsplunkhec.py +12 -33
  53. cribl_control_plane/models/inputsplunksearch.py +16 -37
  54. cribl_control_plane/models/inputsqs.py +12 -31
  55. cribl_control_plane/models/inputsyslog_union.py +29 -53
  56. cribl_control_plane/models/inputsystemmetrics.py +26 -50
  57. cribl_control_plane/models/inputsystemstate.py +10 -18
  58. cribl_control_plane/models/inputtcp.py +12 -33
  59. cribl_control_plane/models/inputtcpjson.py +12 -33
  60. cribl_control_plane/models/inputwef.py +20 -45
  61. cribl_control_plane/models/inputwindowsmetrics.py +26 -46
  62. cribl_control_plane/models/inputwineventlogs.py +12 -22
  63. cribl_control_plane/models/inputwiz.py +10 -25
  64. cribl_control_plane/models/inputzscalerhec.py +12 -33
  65. cribl_control_plane/models/output.py +3 -6
  66. cribl_control_plane/models/outputazureblob.py +20 -52
  67. cribl_control_plane/models/outputazuredataexplorer.py +30 -77
  68. cribl_control_plane/models/outputazureeventhub.py +20 -44
  69. cribl_control_plane/models/outputazurelogs.py +14 -37
  70. cribl_control_plane/models/outputclickhouse.py +22 -59
  71. cribl_control_plane/models/outputcloudwatch.py +12 -33
  72. cribl_control_plane/models/outputconfluentcloud.py +32 -75
  73. cribl_control_plane/models/outputcriblhttp.py +18 -46
  74. cribl_control_plane/models/outputcribllake.py +18 -48
  75. cribl_control_plane/models/outputcribltcp.py +20 -47
  76. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
  77. cribl_control_plane/models/outputdatadog.py +22 -50
  78. cribl_control_plane/models/outputdataset.py +20 -48
  79. cribl_control_plane/models/outputdefault.py +2 -5
  80. cribl_control_plane/models/outputdevnull.py +2 -5
  81. cribl_control_plane/models/outputdiskspool.py +4 -9
  82. cribl_control_plane/models/outputdls3.py +26 -72
  83. cribl_control_plane/models/outputdynatracehttp.py +22 -57
  84. cribl_control_plane/models/outputdynatraceotlp.py +24 -59
  85. cribl_control_plane/models/outputelastic.py +20 -45
  86. cribl_control_plane/models/outputelasticcloud.py +14 -40
  87. cribl_control_plane/models/outputexabeam.py +12 -33
  88. cribl_control_plane/models/outputfilesystem.py +16 -41
  89. cribl_control_plane/models/outputgooglechronicle.py +18 -54
  90. cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
  91. cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
  92. cribl_control_plane/models/outputgooglepubsub.py +16 -39
  93. cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
  94. cribl_control_plane/models/outputgraphite.py +16 -35
  95. cribl_control_plane/models/outputhoneycomb.py +14 -37
  96. cribl_control_plane/models/outputhumiohec.py +18 -47
  97. cribl_control_plane/models/outputinfluxdb.py +18 -44
  98. cribl_control_plane/models/outputkafka.py +28 -73
  99. cribl_control_plane/models/outputkinesis.py +18 -44
  100. cribl_control_plane/models/outputloki.py +18 -43
  101. cribl_control_plane/models/outputminio.py +26 -69
  102. cribl_control_plane/models/outputmsk.py +30 -81
  103. cribl_control_plane/models/outputnetflow.py +2 -5
  104. cribl_control_plane/models/outputnewrelic.py +20 -45
  105. cribl_control_plane/models/outputnewrelicevents.py +16 -45
  106. cribl_control_plane/models/outputopentelemetry.py +28 -69
  107. cribl_control_plane/models/outputprometheus.py +14 -37
  108. cribl_control_plane/models/outputring.py +10 -21
  109. cribl_control_plane/models/outputrouter.py +2 -5
  110. cribl_control_plane/models/outputs3.py +28 -72
  111. cribl_control_plane/models/outputsecuritylake.py +20 -56
  112. cribl_control_plane/models/outputsentinel.py +20 -49
  113. cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
  114. cribl_control_plane/models/outputservicenow.py +26 -64
  115. cribl_control_plane/models/outputsignalfx.py +16 -39
  116. cribl_control_plane/models/outputsnmp.py +2 -5
  117. cribl_control_plane/models/outputsns.py +16 -40
  118. cribl_control_plane/models/outputsplunk.py +26 -64
  119. cribl_control_plane/models/outputsplunkhec.py +14 -37
  120. cribl_control_plane/models/outputsplunklb.py +36 -83
  121. cribl_control_plane/models/outputsqs.py +18 -45
  122. cribl_control_plane/models/outputstatsd.py +16 -34
  123. cribl_control_plane/models/outputstatsdext.py +14 -33
  124. cribl_control_plane/models/outputsumologic.py +14 -37
  125. cribl_control_plane/models/outputsyslog.py +26 -60
  126. cribl_control_plane/models/outputtcpjson.py +22 -54
  127. cribl_control_plane/models/outputwavefront.py +14 -37
  128. cribl_control_plane/models/outputwebhook.py +24 -60
  129. cribl_control_plane/models/outputxsiam.py +16 -37
  130. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.17.dist-info}/METADATA +1 -1
  131. cribl_control_plane-0.0.17.dist-info/RECORD +215 -0
  132. cribl_control_plane-0.0.16.dist-info/RECORD +0 -215
  133. {cribl_control_plane-0.0.16.dist-info → cribl_control_plane-0.0.17.dist-info}/WHEEL +0 -0
@@ -1,17 +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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputCrowdstrikeNextGenSiemType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputCrowdstrikeNextGenSiemType(str, Enum):
15
12
  CROWDSTRIKE_NEXT_GEN_SIEM = "crowdstrike_next_gen_siem"
16
13
 
17
14
 
@@ -26,9 +23,7 @@ class OutputCrowdstrikeNextGenSiemExtraHTTPHeader(BaseModel):
26
23
  name: Optional[str] = None
27
24
 
28
25
 
29
- class OutputCrowdstrikeNextGenSiemFailedRequestLoggingMode(
30
- str, Enum, metaclass=utils.OpenEnumMeta
31
- ):
26
+ class OutputCrowdstrikeNextGenSiemFailedRequestLoggingMode(str, Enum):
32
27
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
33
28
 
34
29
  PAYLOAD = "payload"
@@ -36,18 +31,14 @@ class OutputCrowdstrikeNextGenSiemFailedRequestLoggingMode(
36
31
  NONE = "none"
37
32
 
38
33
 
39
- class OutputCrowdstrikeNextGenSiemRequestFormat(
40
- str, Enum, metaclass=utils.OpenEnumMeta
41
- ):
34
+ class OutputCrowdstrikeNextGenSiemRequestFormat(str, Enum):
42
35
  r"""When set to JSON, the event is automatically formatted with required fields before sending. When set to Raw, only the event's `_raw` value is sent."""
43
36
 
44
37
  JSON = "JSON"
45
38
  RAW = "raw"
46
39
 
47
40
 
48
- class OutputCrowdstrikeNextGenSiemAuthenticationMethod(
49
- str, Enum, metaclass=utils.OpenEnumMeta
50
- ):
41
+ class OutputCrowdstrikeNextGenSiemAuthenticationMethod(str, Enum):
51
42
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
52
43
 
53
44
  MANUAL = "manual"
@@ -108,9 +99,7 @@ class OutputCrowdstrikeNextGenSiemTimeoutRetrySettings(BaseModel):
108
99
  r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
109
100
 
110
101
 
111
- class OutputCrowdstrikeNextGenSiemBackpressureBehavior(
112
- str, Enum, metaclass=utils.OpenEnumMeta
113
- ):
102
+ class OutputCrowdstrikeNextGenSiemBackpressureBehavior(str, Enum):
114
103
  r"""How to handle events when all receivers are exerting backpressure"""
115
104
 
116
105
  BLOCK = "block"
@@ -118,23 +107,21 @@ class OutputCrowdstrikeNextGenSiemBackpressureBehavior(
118
107
  QUEUE = "queue"
119
108
 
120
109
 
121
- class OutputCrowdstrikeNextGenSiemCompression(str, Enum, metaclass=utils.OpenEnumMeta):
110
+ class OutputCrowdstrikeNextGenSiemCompression(str, Enum):
122
111
  r"""Codec to use to compress the persisted data"""
123
112
 
124
113
  NONE = "none"
125
114
  GZIP = "gzip"
126
115
 
127
116
 
128
- class OutputCrowdstrikeNextGenSiemQueueFullBehavior(
129
- str, Enum, metaclass=utils.OpenEnumMeta
130
- ):
117
+ class OutputCrowdstrikeNextGenSiemQueueFullBehavior(str, Enum):
131
118
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
132
119
 
133
120
  BLOCK = "block"
134
121
  DROP = "drop"
135
122
 
136
123
 
137
- class OutputCrowdstrikeNextGenSiemMode(str, Enum, metaclass=utils.OpenEnumMeta):
124
+ class OutputCrowdstrikeNextGenSiemMode(str, Enum):
138
125
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
139
126
 
140
127
  ERROR = "error"
@@ -238,10 +225,7 @@ class OutputCrowdstrikeNextGenSiem(BaseModel):
238
225
  id: Optional[str] = None
239
226
  r"""Unique ID for this output"""
240
227
 
241
- type: Annotated[
242
- Optional[OutputCrowdstrikeNextGenSiemType],
243
- PlainValidator(validate_open_enum(False)),
244
- ] = None
228
+ type: Optional[OutputCrowdstrikeNextGenSiemType] = None
245
229
 
246
230
  pipeline: Optional[str] = None
247
231
  r"""Pipeline to process data before sending out to this output"""
@@ -301,10 +285,7 @@ class OutputCrowdstrikeNextGenSiem(BaseModel):
301
285
  r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
302
286
 
303
287
  failed_request_logging_mode: Annotated[
304
- Annotated[
305
- Optional[OutputCrowdstrikeNextGenSiemFailedRequestLoggingMode],
306
- PlainValidator(validate_open_enum(False)),
307
- ],
288
+ Optional[OutputCrowdstrikeNextGenSiemFailedRequestLoggingMode],
308
289
  pydantic.Field(alias="failedRequestLoggingMode"),
309
290
  ] = OutputCrowdstrikeNextGenSiemFailedRequestLoggingMode.NONE
310
291
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -315,19 +296,13 @@ class OutputCrowdstrikeNextGenSiem(BaseModel):
315
296
  r"""List of headers that are safe to log in plain text"""
316
297
 
317
298
  format_: Annotated[
318
- Annotated[
319
- Optional[OutputCrowdstrikeNextGenSiemRequestFormat],
320
- PlainValidator(validate_open_enum(False)),
321
- ],
299
+ Optional[OutputCrowdstrikeNextGenSiemRequestFormat],
322
300
  pydantic.Field(alias="format"),
323
301
  ] = OutputCrowdstrikeNextGenSiemRequestFormat.RAW
324
302
  r"""When set to JSON, the event is automatically formatted with required fields before sending. When set to Raw, only the event's `_raw` value is sent."""
325
303
 
326
304
  auth_type: Annotated[
327
- Annotated[
328
- Optional[OutputCrowdstrikeNextGenSiemAuthenticationMethod],
329
- PlainValidator(validate_open_enum(False)),
330
- ],
305
+ Optional[OutputCrowdstrikeNextGenSiemAuthenticationMethod],
331
306
  pydantic.Field(alias="authType"),
332
307
  ] = OutputCrowdstrikeNextGenSiemAuthenticationMethod.MANUAL
333
308
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
@@ -349,10 +324,7 @@ class OutputCrowdstrikeNextGenSiem(BaseModel):
349
324
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
350
325
 
351
326
  on_backpressure: Annotated[
352
- Annotated[
353
- Optional[OutputCrowdstrikeNextGenSiemBackpressureBehavior],
354
- PlainValidator(validate_open_enum(False)),
355
- ],
327
+ Optional[OutputCrowdstrikeNextGenSiemBackpressureBehavior],
356
328
  pydantic.Field(alias="onBackpressure"),
357
329
  ] = OutputCrowdstrikeNextGenSiemBackpressureBehavior.BLOCK
358
330
  r"""How to handle events when all receivers are exerting backpressure"""
@@ -378,29 +350,19 @@ class OutputCrowdstrikeNextGenSiem(BaseModel):
378
350
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
379
351
 
380
352
  pq_compress: Annotated[
381
- Annotated[
382
- Optional[OutputCrowdstrikeNextGenSiemCompression],
383
- PlainValidator(validate_open_enum(False)),
384
- ],
353
+ Optional[OutputCrowdstrikeNextGenSiemCompression],
385
354
  pydantic.Field(alias="pqCompress"),
386
355
  ] = OutputCrowdstrikeNextGenSiemCompression.NONE
387
356
  r"""Codec to use to compress the persisted data"""
388
357
 
389
358
  pq_on_backpressure: Annotated[
390
- Annotated[
391
- Optional[OutputCrowdstrikeNextGenSiemQueueFullBehavior],
392
- PlainValidator(validate_open_enum(False)),
393
- ],
359
+ Optional[OutputCrowdstrikeNextGenSiemQueueFullBehavior],
394
360
  pydantic.Field(alias="pqOnBackpressure"),
395
361
  ] = OutputCrowdstrikeNextGenSiemQueueFullBehavior.BLOCK
396
362
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
397
363
 
398
364
  pq_mode: Annotated[
399
- Annotated[
400
- Optional[OutputCrowdstrikeNextGenSiemMode],
401
- PlainValidator(validate_open_enum(False)),
402
- ],
403
- pydantic.Field(alias="pqMode"),
365
+ Optional[OutputCrowdstrikeNextGenSiemMode], pydantic.Field(alias="pqMode")
404
366
  ] = OutputCrowdstrikeNextGenSiemMode.ERROR
405
367
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
406
368
 
@@ -1,28 +1,25 @@
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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDatadogType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDatadogType(str, Enum):
15
12
  DATADOG = "datadog"
16
13
 
17
14
 
18
- class SendLogsAs(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class SendLogsAs(str, Enum):
19
16
  r"""The content type to use when sending logs"""
20
17
 
21
18
  TEXT = "text"
22
19
  JSON = "json"
23
20
 
24
21
 
25
- class OutputDatadogSeverity(str, Enum, metaclass=utils.OpenEnumMeta):
22
+ class OutputDatadogSeverity(str, Enum):
26
23
  r"""Default value for message severity. When you send logs as JSON objects, the event's '__severity' field (if set) will override this value."""
27
24
 
28
25
  EMERGENCY = "emergency"
@@ -35,7 +32,7 @@ class OutputDatadogSeverity(str, Enum, metaclass=utils.OpenEnumMeta):
35
32
  DEBUG = "debug"
36
33
 
37
34
 
38
- class DatadogSite(str, Enum, metaclass=utils.OpenEnumMeta):
35
+ class DatadogSite(str, Enum):
39
36
  r"""Datadog site to which events should be sent"""
40
37
 
41
38
  US = "us"
@@ -58,7 +55,7 @@ class OutputDatadogExtraHTTPHeader(BaseModel):
58
55
  name: Optional[str] = None
59
56
 
60
57
 
61
- class OutputDatadogFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
58
+ class OutputDatadogFailedRequestLoggingMode(str, Enum):
62
59
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
63
60
 
64
61
  PAYLOAD = "payload"
@@ -120,7 +117,7 @@ class OutputDatadogTimeoutRetrySettings(BaseModel):
120
117
  r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
121
118
 
122
119
 
123
- class OutputDatadogBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
120
+ class OutputDatadogBackpressureBehavior(str, Enum):
124
121
  r"""How to handle events when all receivers are exerting backpressure"""
125
122
 
126
123
  BLOCK = "block"
@@ -128,28 +125,28 @@ class OutputDatadogBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta)
128
125
  QUEUE = "queue"
129
126
 
130
127
 
131
- class OutputDatadogAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
128
+ class OutputDatadogAuthenticationMethod(str, Enum):
132
129
  r"""Enter API key directly, or select a stored secret"""
133
130
 
134
131
  MANUAL = "manual"
135
132
  SECRET = "secret"
136
133
 
137
134
 
138
- class OutputDatadogCompression(str, Enum, metaclass=utils.OpenEnumMeta):
135
+ class OutputDatadogCompression(str, Enum):
139
136
  r"""Codec to use to compress the persisted data"""
140
137
 
141
138
  NONE = "none"
142
139
  GZIP = "gzip"
143
140
 
144
141
 
145
- class OutputDatadogQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
142
+ class OutputDatadogQueueFullBehavior(str, Enum):
146
143
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
147
144
 
148
145
  BLOCK = "block"
149
146
  DROP = "drop"
150
147
 
151
148
 
152
- class OutputDatadogMode(str, Enum, metaclass=utils.OpenEnumMeta):
149
+ class OutputDatadogMode(str, Enum):
153
150
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
154
151
 
155
152
  ERROR = "error"
@@ -262,7 +259,7 @@ class OutputDatadog(BaseModel):
262
259
  id: str
263
260
  r"""Unique ID for this output"""
264
261
 
265
- type: Annotated[OutputDatadogType, PlainValidator(validate_open_enum(False))]
262
+ type: OutputDatadogType
266
263
 
267
264
  pipeline: Optional[str] = None
268
265
  r"""Pipeline to process data before sending out to this output"""
@@ -279,8 +276,7 @@ class OutputDatadog(BaseModel):
279
276
  r"""Tags for filtering and grouping in @{product}"""
280
277
 
281
278
  content_type: Annotated[
282
- Annotated[Optional[SendLogsAs], PlainValidator(validate_open_enum(False))],
283
- pydantic.Field(alias="contentType"),
279
+ Optional[SendLogsAs], pydantic.Field(alias="contentType")
284
280
  ] = SendLogsAs.JSON
285
281
  r"""The content type to use when sending logs"""
286
282
 
@@ -307,14 +303,10 @@ class OutputDatadog(BaseModel):
307
303
  ] = False
308
304
  r"""Allow API key to be set from the event's '__agent_api_key' field"""
309
305
 
310
- severity: Annotated[
311
- Optional[OutputDatadogSeverity], PlainValidator(validate_open_enum(False))
312
- ] = None
306
+ severity: Optional[OutputDatadogSeverity] = None
313
307
  r"""Default value for message severity. When you send logs as JSON objects, the event's '__severity' field (if set) will override this value."""
314
308
 
315
- site: Annotated[
316
- Optional[DatadogSite], PlainValidator(validate_open_enum(False))
317
- ] = DatadogSite.US
309
+ site: Optional[DatadogSite] = DatadogSite.US
318
310
  r"""Datadog site to which events should be sent"""
319
311
 
320
312
  send_counters_as_count: Annotated[
@@ -366,10 +358,7 @@ class OutputDatadog(BaseModel):
366
358
  r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
367
359
 
368
360
  failed_request_logging_mode: Annotated[
369
- Annotated[
370
- Optional[OutputDatadogFailedRequestLoggingMode],
371
- PlainValidator(validate_open_enum(False)),
372
- ],
361
+ Optional[OutputDatadogFailedRequestLoggingMode],
373
362
  pydantic.Field(alias="failedRequestLoggingMode"),
374
363
  ] = OutputDatadogFailedRequestLoggingMode.NONE
375
364
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -396,20 +385,13 @@ class OutputDatadog(BaseModel):
396
385
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
397
386
 
398
387
  on_backpressure: Annotated[
399
- Annotated[
400
- Optional[OutputDatadogBackpressureBehavior],
401
- PlainValidator(validate_open_enum(False)),
402
- ],
388
+ Optional[OutputDatadogBackpressureBehavior],
403
389
  pydantic.Field(alias="onBackpressure"),
404
390
  ] = OutputDatadogBackpressureBehavior.BLOCK
405
391
  r"""How to handle events when all receivers are exerting backpressure"""
406
392
 
407
393
  auth_type: Annotated[
408
- Annotated[
409
- Optional[OutputDatadogAuthenticationMethod],
410
- PlainValidator(validate_open_enum(False)),
411
- ],
412
- pydantic.Field(alias="authType"),
394
+ Optional[OutputDatadogAuthenticationMethod], pydantic.Field(alias="authType")
413
395
  ] = OutputDatadogAuthenticationMethod.MANUAL
414
396
  r"""Enter API key directly, or select a stored secret"""
415
397
 
@@ -436,29 +418,19 @@ class OutputDatadog(BaseModel):
436
418
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
437
419
 
438
420
  pq_compress: Annotated[
439
- Annotated[
440
- Optional[OutputDatadogCompression],
441
- PlainValidator(validate_open_enum(False)),
442
- ],
443
- pydantic.Field(alias="pqCompress"),
421
+ Optional[OutputDatadogCompression], pydantic.Field(alias="pqCompress")
444
422
  ] = OutputDatadogCompression.NONE
445
423
  r"""Codec to use to compress the persisted data"""
446
424
 
447
425
  pq_on_backpressure: Annotated[
448
- Annotated[
449
- Optional[OutputDatadogQueueFullBehavior],
450
- PlainValidator(validate_open_enum(False)),
451
- ],
426
+ Optional[OutputDatadogQueueFullBehavior],
452
427
  pydantic.Field(alias="pqOnBackpressure"),
453
428
  ] = OutputDatadogQueueFullBehavior.BLOCK
454
429
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
455
430
 
456
- pq_mode: Annotated[
457
- Annotated[
458
- Optional[OutputDatadogMode], PlainValidator(validate_open_enum(False))
459
- ],
460
- pydantic.Field(alias="pqMode"),
461
- ] = OutputDatadogMode.ERROR
431
+ pq_mode: Annotated[Optional[OutputDatadogMode], pydantic.Field(alias="pqMode")] = (
432
+ OutputDatadogMode.ERROR
433
+ )
462
434
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
463
435
 
464
436
  pq_controls: Annotated[
@@ -1,21 +1,18 @@
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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDatasetType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDatasetType(str, Enum):
15
12
  DATASET = "dataset"
16
13
 
17
14
 
18
- class OutputDatasetSeverity(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputDatasetSeverity(str, Enum):
19
16
  r"""Default value for event severity. If the `sev` or `__severity` fields are set on an event, the first one matching will override this value."""
20
17
 
21
18
  FINEST = "finest"
@@ -81,7 +78,7 @@ class OutputDatasetTimeoutRetrySettings(BaseModel):
81
78
  r"""The maximum backoff interval, in milliseconds, Cribl Stream should apply. Default (and minimum) is 10,000 ms (10 seconds); maximum is 180,000 ms (180 seconds)."""
82
79
 
83
80
 
84
- class DataSetSite(str, Enum, metaclass=utils.OpenEnumMeta):
81
+ class DataSetSite(str, Enum):
85
82
  r"""DataSet site to which events should be sent"""
86
83
 
87
84
  US = "us"
@@ -100,7 +97,7 @@ class OutputDatasetExtraHTTPHeader(BaseModel):
100
97
  name: Optional[str] = None
101
98
 
102
99
 
103
- class OutputDatasetFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
100
+ class OutputDatasetFailedRequestLoggingMode(str, Enum):
104
101
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
105
102
 
106
103
  PAYLOAD = "payload"
@@ -108,7 +105,7 @@ class OutputDatasetFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumM
108
105
  NONE = "none"
109
106
 
110
107
 
111
- class OutputDatasetBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
108
+ class OutputDatasetBackpressureBehavior(str, Enum):
112
109
  r"""How to handle events when all receivers are exerting backpressure"""
113
110
 
114
111
  BLOCK = "block"
@@ -116,28 +113,28 @@ class OutputDatasetBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta)
116
113
  QUEUE = "queue"
117
114
 
118
115
 
119
- class OutputDatasetAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
116
+ class OutputDatasetAuthenticationMethod(str, Enum):
120
117
  r"""Enter API key directly, or select a stored secret"""
121
118
 
122
119
  MANUAL = "manual"
123
120
  SECRET = "secret"
124
121
 
125
122
 
126
- class OutputDatasetCompression(str, Enum, metaclass=utils.OpenEnumMeta):
123
+ class OutputDatasetCompression(str, Enum):
127
124
  r"""Codec to use to compress the persisted data"""
128
125
 
129
126
  NONE = "none"
130
127
  GZIP = "gzip"
131
128
 
132
129
 
133
- class OutputDatasetQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
130
+ class OutputDatasetQueueFullBehavior(str, Enum):
134
131
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
135
132
 
136
133
  BLOCK = "block"
137
134
  DROP = "drop"
138
135
 
139
136
 
140
- class OutputDatasetMode(str, Enum, metaclass=utils.OpenEnumMeta):
137
+ class OutputDatasetMode(str, Enum):
141
138
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
142
139
 
143
140
  ERROR = "error"
@@ -240,7 +237,7 @@ class OutputDataset(BaseModel):
240
237
  id: str
241
238
  r"""Unique ID for this output"""
242
239
 
243
- type: Annotated[OutputDatasetType, PlainValidator(validate_open_enum(False))]
240
+ type: OutputDatasetType
244
241
 
245
242
  pipeline: Optional[str] = None
246
243
  r"""Pipeline to process data before sending out to this output"""
@@ -275,10 +272,7 @@ class OutputDataset(BaseModel):
275
272
  r"""Name of the event field that contains the timestamp. If not specified, defaults to `ts`, `_time`, or `Date.now()`, in that order."""
276
273
 
277
274
  default_severity: Annotated[
278
- Annotated[
279
- Optional[OutputDatasetSeverity], PlainValidator(validate_open_enum(False))
280
- ],
281
- pydantic.Field(alias="defaultSeverity"),
275
+ Optional[OutputDatasetSeverity], pydantic.Field(alias="defaultSeverity")
282
276
  ] = OutputDatasetSeverity.INFO
283
277
  r"""Default value for event severity. If the `sev` or `__severity` fields are set on an event, the first one matching will override this value."""
284
278
 
@@ -298,9 +292,7 @@ class OutputDataset(BaseModel):
298
292
  ] = False
299
293
  r"""Honor any Retry-After header that specifies a delay (in seconds) no longer than 180 seconds after the retry request. @{product} limits the delay to 180 seconds, even if the Retry-After header specifies a longer delay. When enabled, takes precedence over user-configured retry options. When disabled, all Retry-After headers are ignored."""
300
294
 
301
- site: Annotated[
302
- Optional[DataSetSite], PlainValidator(validate_open_enum(False))
303
- ] = DataSetSite.US
295
+ site: Optional[DataSetSite] = DataSetSite.US
304
296
  r"""DataSet site to which events should be sent"""
305
297
 
306
298
  concurrency: Optional[float] = 5
@@ -347,10 +339,7 @@ class OutputDataset(BaseModel):
347
339
  r"""Enable round-robin DNS lookup. When a DNS server returns multiple addresses, @{product} will cycle through them in the order returned. For optimal performance, consider enabling this setting for non-load balanced destinations."""
348
340
 
349
341
  failed_request_logging_mode: Annotated[
350
- Annotated[
351
- Optional[OutputDatasetFailedRequestLoggingMode],
352
- PlainValidator(validate_open_enum(False)),
353
- ],
342
+ Optional[OutputDatasetFailedRequestLoggingMode],
354
343
  pydantic.Field(alias="failedRequestLoggingMode"),
355
344
  ] = OutputDatasetFailedRequestLoggingMode.NONE
356
345
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -361,20 +350,13 @@ class OutputDataset(BaseModel):
361
350
  r"""List of headers that are safe to log in plain text"""
362
351
 
363
352
  on_backpressure: Annotated[
364
- Annotated[
365
- Optional[OutputDatasetBackpressureBehavior],
366
- PlainValidator(validate_open_enum(False)),
367
- ],
353
+ Optional[OutputDatasetBackpressureBehavior],
368
354
  pydantic.Field(alias="onBackpressure"),
369
355
  ] = OutputDatasetBackpressureBehavior.BLOCK
370
356
  r"""How to handle events when all receivers are exerting backpressure"""
371
357
 
372
358
  auth_type: Annotated[
373
- Annotated[
374
- Optional[OutputDatasetAuthenticationMethod],
375
- PlainValidator(validate_open_enum(False)),
376
- ],
377
- pydantic.Field(alias="authType"),
359
+ Optional[OutputDatasetAuthenticationMethod], pydantic.Field(alias="authType")
378
360
  ] = OutputDatasetAuthenticationMethod.MANUAL
379
361
  r"""Enter API key directly, or select a stored secret"""
380
362
 
@@ -401,29 +383,19 @@ class OutputDataset(BaseModel):
401
383
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
402
384
 
403
385
  pq_compress: Annotated[
404
- Annotated[
405
- Optional[OutputDatasetCompression],
406
- PlainValidator(validate_open_enum(False)),
407
- ],
408
- pydantic.Field(alias="pqCompress"),
386
+ Optional[OutputDatasetCompression], pydantic.Field(alias="pqCompress")
409
387
  ] = OutputDatasetCompression.NONE
410
388
  r"""Codec to use to compress the persisted data"""
411
389
 
412
390
  pq_on_backpressure: Annotated[
413
- Annotated[
414
- Optional[OutputDatasetQueueFullBehavior],
415
- PlainValidator(validate_open_enum(False)),
416
- ],
391
+ Optional[OutputDatasetQueueFullBehavior],
417
392
  pydantic.Field(alias="pqOnBackpressure"),
418
393
  ] = OutputDatasetQueueFullBehavior.BLOCK
419
394
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
420
395
 
421
- pq_mode: Annotated[
422
- Annotated[
423
- Optional[OutputDatasetMode], PlainValidator(validate_open_enum(False))
424
- ],
425
- pydantic.Field(alias="pqMode"),
426
- ] = OutputDatasetMode.ERROR
396
+ pq_mode: Annotated[Optional[OutputDatasetMode], pydantic.Field(alias="pqMode")] = (
397
+ OutputDatasetMode.ERROR
398
+ )
427
399
  r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
428
400
 
429
401
  pq_controls: Annotated[
@@ -1,17 +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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDefaultType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDefaultType(str, Enum):
15
12
  DEFAULT = "default"
16
13
 
17
14
 
@@ -32,7 +29,7 @@ class OutputDefaultTypedDict(TypedDict):
32
29
 
33
30
 
34
31
  class OutputDefault(BaseModel):
35
- type: Annotated[OutputDefaultType, PlainValidator(validate_open_enum(False))]
32
+ type: OutputDefaultType
36
33
 
37
34
  default_id: Annotated[str, pydantic.Field(alias="defaultId")]
38
35
  r"""ID of the default output. This will be used whenever a nonexistent/deleted output is referenced."""
@@ -1,17 +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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDevnullType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDevnullType(str, Enum):
15
12
  DEVNULL = "devnull"
16
13
 
17
14
 
@@ -33,7 +30,7 @@ class OutputDevnull(BaseModel):
33
30
  id: str
34
31
  r"""Unique ID for this output"""
35
32
 
36
- type: Annotated[OutputDevnullType, PlainValidator(validate_open_enum(False))]
33
+ type: OutputDevnullType
37
34
 
38
35
  pipeline: Optional[str] = None
39
36
  r"""Pipeline to process data before sending out to this output"""
@@ -1,21 +1,18 @@
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
5
4
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
5
  from enum import Enum
8
6
  import pydantic
9
- from pydantic.functional_validators import PlainValidator
10
7
  from typing import List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputDiskSpoolType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputDiskSpoolType(str, Enum):
15
12
  DISK_SPOOL = "disk_spool"
16
13
 
17
14
 
18
- class OutputDiskSpoolCompression(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputDiskSpoolCompression(str, Enum):
19
16
  r"""Data compression format. Default is gzip."""
20
17
 
21
18
  NONE = "none"
@@ -51,7 +48,7 @@ class OutputDiskSpool(BaseModel):
51
48
  id: str
52
49
  r"""Unique ID for this output"""
53
50
 
54
- type: Annotated[OutputDiskSpoolType, PlainValidator(validate_open_enum(False))]
51
+ type: OutputDiskSpoolType
55
52
 
56
53
  pipeline: Optional[str] = None
57
54
  r"""Pipeline to process data before sending out to this output"""
@@ -76,9 +73,7 @@ class OutputDiskSpool(BaseModel):
76
73
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
77
74
  r"""Maximum amount of time to retain data before older buckets are deleted. Examples: 2h, 4d. Default is 24h."""
78
75
 
79
- compress: Annotated[
80
- Optional[OutputDiskSpoolCompression], PlainValidator(validate_open_enum(False))
81
- ] = OutputDiskSpoolCompression.GZIP
76
+ compress: Optional[OutputDiskSpoolCompression] = OutputDiskSpoolCompression.GZIP
82
77
  r"""Data compression format. Default is gzip."""
83
78
 
84
79
  partition_expr: Annotated[Optional[str], pydantic.Field(alias="partitionExpr")] = (