cribl-control-plane 0.0.15__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 (144) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/{outputs.py → destinations.py} +69 -71
  3. cribl_control_plane/errors/healthstatus_error.py +2 -8
  4. cribl_control_plane/models/__init__.py +5347 -115
  5. cribl_control_plane/models/createinputop.py +18216 -2
  6. cribl_control_plane/models/createoutputop.py +18417 -4
  7. cribl_control_plane/models/createoutputtestbyidop.py +2 -2
  8. cribl_control_plane/models/deleteoutputbyidop.py +2 -2
  9. cribl_control_plane/models/deleteoutputpqbyidop.py +2 -2
  10. cribl_control_plane/models/getoutputbyidop.py +2 -2
  11. cribl_control_plane/models/getoutputpqbyidop.py +2 -2
  12. cribl_control_plane/models/getoutputsamplesbyidop.py +2 -2
  13. cribl_control_plane/models/healthstatus.py +4 -7
  14. cribl_control_plane/models/inputappscope.py +16 -36
  15. cribl_control_plane/models/inputazureblob.py +8 -19
  16. cribl_control_plane/models/inputcollection.py +6 -15
  17. cribl_control_plane/models/inputconfluentcloud.py +22 -45
  18. cribl_control_plane/models/inputcribl.py +6 -13
  19. cribl_control_plane/models/inputcriblhttp.py +12 -27
  20. cribl_control_plane/models/inputcribllakehttp.py +14 -26
  21. cribl_control_plane/models/inputcriblmetrics.py +6 -14
  22. cribl_control_plane/models/inputcribltcp.py +12 -27
  23. cribl_control_plane/models/inputcrowdstrike.py +12 -28
  24. cribl_control_plane/models/inputdatadogagent.py +12 -28
  25. cribl_control_plane/models/inputdatagen.py +6 -13
  26. cribl_control_plane/models/inputedgeprometheus.py +33 -64
  27. cribl_control_plane/models/inputelastic.py +18 -44
  28. cribl_control_plane/models/inputeventhub.py +10 -19
  29. cribl_control_plane/models/inputexec.py +8 -16
  30. cribl_control_plane/models/inputfile.py +8 -17
  31. cribl_control_plane/models/inputfirehose.py +12 -27
  32. cribl_control_plane/models/inputgooglepubsub.py +10 -23
  33. cribl_control_plane/models/inputgrafana_union.py +39 -81
  34. cribl_control_plane/models/inputhttp.py +12 -27
  35. cribl_control_plane/models/inputhttpraw.py +12 -27
  36. cribl_control_plane/models/inputjournalfiles.py +8 -16
  37. cribl_control_plane/models/inputkafka.py +18 -45
  38. cribl_control_plane/models/inputkinesis.py +18 -42
  39. cribl_control_plane/models/inputkubeevents.py +6 -13
  40. cribl_control_plane/models/inputkubelogs.py +10 -18
  41. cribl_control_plane/models/inputkubemetrics.py +10 -18
  42. cribl_control_plane/models/inputloki.py +14 -33
  43. cribl_control_plane/models/inputmetrics.py +10 -25
  44. cribl_control_plane/models/inputmodeldriventelemetry.py +14 -33
  45. cribl_control_plane/models/inputmsk.py +20 -52
  46. cribl_control_plane/models/inputnetflow.py +8 -15
  47. cribl_control_plane/models/inputoffice365mgmt.py +18 -37
  48. cribl_control_plane/models/inputoffice365msgtrace.py +20 -41
  49. cribl_control_plane/models/inputoffice365service.py +20 -41
  50. cribl_control_plane/models/inputopentelemetry.py +20 -42
  51. cribl_control_plane/models/inputprometheus.py +22 -54
  52. cribl_control_plane/models/inputprometheusrw.py +14 -34
  53. cribl_control_plane/models/inputrawudp.py +8 -15
  54. cribl_control_plane/models/inputs3.py +10 -23
  55. cribl_control_plane/models/inputs3inventory.py +12 -28
  56. cribl_control_plane/models/inputsecuritylake.py +12 -29
  57. cribl_control_plane/models/inputsnmp.py +10 -20
  58. cribl_control_plane/models/inputsplunk.py +16 -37
  59. cribl_control_plane/models/inputsplunkhec.py +14 -33
  60. cribl_control_plane/models/inputsplunksearch.py +18 -37
  61. cribl_control_plane/models/inputsqs.py +14 -31
  62. cribl_control_plane/models/inputsyslog_union.py +29 -53
  63. cribl_control_plane/models/inputsystemmetrics.py +26 -50
  64. cribl_control_plane/models/inputsystemstate.py +10 -18
  65. cribl_control_plane/models/inputtcp.py +14 -33
  66. cribl_control_plane/models/inputtcpjson.py +14 -33
  67. cribl_control_plane/models/inputwef.py +22 -45
  68. cribl_control_plane/models/inputwindowsmetrics.py +26 -46
  69. cribl_control_plane/models/inputwineventlogs.py +12 -22
  70. cribl_control_plane/models/inputwiz.py +12 -25
  71. cribl_control_plane/models/inputzscalerhec.py +14 -33
  72. cribl_control_plane/models/listoutputop.py +2 -2
  73. cribl_control_plane/models/output.py +3 -6
  74. cribl_control_plane/models/outputazureblob.py +20 -52
  75. cribl_control_plane/models/outputazuredataexplorer.py +30 -77
  76. cribl_control_plane/models/outputazureeventhub.py +20 -44
  77. cribl_control_plane/models/outputazurelogs.py +14 -37
  78. cribl_control_plane/models/outputclickhouse.py +22 -59
  79. cribl_control_plane/models/outputcloudwatch.py +12 -33
  80. cribl_control_plane/models/outputconfluentcloud.py +32 -75
  81. cribl_control_plane/models/outputcriblhttp.py +18 -46
  82. cribl_control_plane/models/outputcribllake.py +18 -48
  83. cribl_control_plane/models/outputcribltcp.py +20 -47
  84. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +16 -54
  85. cribl_control_plane/models/outputdatadog.py +22 -50
  86. cribl_control_plane/models/outputdataset.py +20 -48
  87. cribl_control_plane/models/outputdefault.py +2 -5
  88. cribl_control_plane/models/outputdevnull.py +2 -5
  89. cribl_control_plane/models/outputdiskspool.py +4 -9
  90. cribl_control_plane/models/outputdls3.py +26 -72
  91. cribl_control_plane/models/outputdynatracehttp.py +22 -57
  92. cribl_control_plane/models/outputdynatraceotlp.py +24 -59
  93. cribl_control_plane/models/outputelastic.py +20 -45
  94. cribl_control_plane/models/outputelasticcloud.py +14 -40
  95. cribl_control_plane/models/outputexabeam.py +12 -33
  96. cribl_control_plane/models/outputfilesystem.py +16 -41
  97. cribl_control_plane/models/outputgooglechronicle.py +18 -54
  98. cribl_control_plane/models/outputgooglecloudlogging.py +16 -46
  99. cribl_control_plane/models/outputgooglecloudstorage.py +26 -71
  100. cribl_control_plane/models/outputgooglepubsub.py +16 -39
  101. cribl_control_plane/models/{outputgrafanacloud_union.py → outputgrafanacloud.py} +49 -110
  102. cribl_control_plane/models/outputgraphite.py +16 -35
  103. cribl_control_plane/models/outputhoneycomb.py +14 -37
  104. cribl_control_plane/models/outputhumiohec.py +18 -47
  105. cribl_control_plane/models/outputinfluxdb.py +18 -44
  106. cribl_control_plane/models/outputkafka.py +28 -73
  107. cribl_control_plane/models/outputkinesis.py +18 -44
  108. cribl_control_plane/models/outputloki.py +18 -43
  109. cribl_control_plane/models/outputminio.py +26 -69
  110. cribl_control_plane/models/outputmsk.py +30 -81
  111. cribl_control_plane/models/outputnetflow.py +2 -5
  112. cribl_control_plane/models/outputnewrelic.py +20 -45
  113. cribl_control_plane/models/outputnewrelicevents.py +16 -45
  114. cribl_control_plane/models/outputopentelemetry.py +28 -69
  115. cribl_control_plane/models/outputprometheus.py +14 -37
  116. cribl_control_plane/models/outputring.py +10 -21
  117. cribl_control_plane/models/outputrouter.py +2 -5
  118. cribl_control_plane/models/outputs3.py +28 -72
  119. cribl_control_plane/models/outputsecuritylake.py +20 -56
  120. cribl_control_plane/models/outputsentinel.py +20 -49
  121. cribl_control_plane/models/outputsentineloneaisiem.py +20 -54
  122. cribl_control_plane/models/outputservicenow.py +26 -64
  123. cribl_control_plane/models/outputsignalfx.py +16 -39
  124. cribl_control_plane/models/outputsnmp.py +2 -5
  125. cribl_control_plane/models/outputsns.py +16 -40
  126. cribl_control_plane/models/outputsplunk.py +26 -64
  127. cribl_control_plane/models/outputsplunkhec.py +14 -37
  128. cribl_control_plane/models/outputsplunklb.py +36 -83
  129. cribl_control_plane/models/outputsqs.py +18 -45
  130. cribl_control_plane/models/outputstatsd.py +16 -34
  131. cribl_control_plane/models/outputstatsdext.py +14 -33
  132. cribl_control_plane/models/outputsumologic.py +14 -37
  133. cribl_control_plane/models/outputsyslog.py +26 -60
  134. cribl_control_plane/models/outputtcpjson.py +22 -54
  135. cribl_control_plane/models/outputwavefront.py +14 -37
  136. cribl_control_plane/models/outputwebhook.py +24 -60
  137. cribl_control_plane/models/outputxsiam.py +16 -37
  138. cribl_control_plane/models/updateoutputbyidop.py +4 -4
  139. cribl_control_plane/sdk.py +3 -5
  140. cribl_control_plane/sources.py +8 -10
  141. {cribl_control_plane-0.0.15.dist-info → cribl_control_plane-0.0.17.dist-info}/METADATA +13 -13
  142. cribl_control_plane-0.0.17.dist-info/RECORD +215 -0
  143. cribl_control_plane-0.0.15.dist-info/RECORD +0 -215
  144. {cribl_control_plane-0.0.15.dist-info → cribl_control_plane-0.0.17.dist-info}/WHEEL +0 -0
@@ -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 OutputWebhookType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputWebhookType(str, Enum):
15
12
  WEBHOOK = "webhook"
16
13
 
17
14
 
18
- class OutputWebhookMethod(str, Enum, metaclass=utils.OpenEnumMeta):
15
+ class OutputWebhookMethod(str, Enum):
19
16
  r"""The method to use when sending events"""
20
17
 
21
18
  POST = "POST"
@@ -23,7 +20,7 @@ class OutputWebhookMethod(str, Enum, metaclass=utils.OpenEnumMeta):
23
20
  PATCH = "PATCH"
24
21
 
25
22
 
26
- class OutputWebhookFormat(str, Enum, metaclass=utils.OpenEnumMeta):
23
+ class OutputWebhookFormat(str, Enum):
27
24
  r"""How to format events before sending out"""
28
25
 
29
26
  NDJSON = "ndjson"
@@ -43,7 +40,7 @@ class OutputWebhookExtraHTTPHeader(BaseModel):
43
40
  name: Optional[str] = None
44
41
 
45
42
 
46
- class OutputWebhookFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
43
+ class OutputWebhookFailedRequestLoggingMode(str, Enum):
47
44
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
48
45
 
49
46
  PAYLOAD = "payload"
@@ -105,7 +102,7 @@ class OutputWebhookTimeoutRetrySettings(BaseModel):
105
102
  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)."""
106
103
 
107
104
 
108
- class OutputWebhookBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
105
+ class OutputWebhookBackpressureBehavior(str, Enum):
109
106
  r"""How to handle events when all receivers are exerting backpressure"""
110
107
 
111
108
  BLOCK = "block"
@@ -113,7 +110,7 @@ class OutputWebhookBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta)
113
110
  QUEUE = "queue"
114
111
 
115
112
 
116
- class OutputWebhookAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
113
+ class OutputWebhookAuthenticationType(str, Enum):
117
114
  r"""Authentication method to use for the HTTP request"""
118
115
 
119
116
  NONE = "none"
@@ -124,14 +121,14 @@ class OutputWebhookAuthenticationType(str, Enum, metaclass=utils.OpenEnumMeta):
124
121
  OAUTH = "oauth"
125
122
 
126
123
 
127
- class OutputWebhookMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
124
+ class OutputWebhookMinimumTLSVersion(str, Enum):
128
125
  TL_SV1 = "TLSv1"
129
126
  TL_SV1_1 = "TLSv1.1"
130
127
  TL_SV1_2 = "TLSv1.2"
131
128
  TL_SV1_3 = "TLSv1.3"
132
129
 
133
130
 
134
- class OutputWebhookMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
131
+ class OutputWebhookMaximumTLSVersion(str, Enum):
135
132
  TL_SV1 = "TLSv1"
136
133
  TL_SV1_1 = "TLSv1.1"
137
134
  TL_SV1_2 = "TLSv1.2"
@@ -180,37 +177,29 @@ class OutputWebhookTLSSettingsClientSide(BaseModel):
180
177
  r"""Passphrase to use to decrypt private key"""
181
178
 
182
179
  min_version: Annotated[
183
- Annotated[
184
- Optional[OutputWebhookMinimumTLSVersion],
185
- PlainValidator(validate_open_enum(False)),
186
- ],
187
- pydantic.Field(alias="minVersion"),
180
+ Optional[OutputWebhookMinimumTLSVersion], pydantic.Field(alias="minVersion")
188
181
  ] = None
189
182
 
190
183
  max_version: Annotated[
191
- Annotated[
192
- Optional[OutputWebhookMaximumTLSVersion],
193
- PlainValidator(validate_open_enum(False)),
194
- ],
195
- pydantic.Field(alias="maxVersion"),
184
+ Optional[OutputWebhookMaximumTLSVersion], pydantic.Field(alias="maxVersion")
196
185
  ] = None
197
186
 
198
187
 
199
- class OutputWebhookCompression(str, Enum, metaclass=utils.OpenEnumMeta):
188
+ class OutputWebhookCompression(str, Enum):
200
189
  r"""Codec to use to compress the persisted data"""
201
190
 
202
191
  NONE = "none"
203
192
  GZIP = "gzip"
204
193
 
205
194
 
206
- class OutputWebhookQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
195
+ class OutputWebhookQueueFullBehavior(str, Enum):
207
196
  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."""
208
197
 
209
198
  BLOCK = "block"
210
199
  DROP = "drop"
211
200
 
212
201
 
213
- class OutputWebhookMode(str, Enum, metaclass=utils.OpenEnumMeta):
202
+ class OutputWebhookMode(str, Enum):
214
203
  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."""
215
204
 
216
205
  ERROR = "error"
@@ -399,7 +388,7 @@ class OutputWebhook(BaseModel):
399
388
  id: str
400
389
  r"""Unique ID for this output"""
401
390
 
402
- type: Annotated[OutputWebhookType, PlainValidator(validate_open_enum(False))]
391
+ type: OutputWebhookType
403
392
 
404
393
  pipeline: Optional[str] = None
405
394
  r"""Pipeline to process data before sending out to this output"""
@@ -415,16 +404,11 @@ class OutputWebhook(BaseModel):
415
404
  streamtags: Optional[List[str]] = None
416
405
  r"""Tags for filtering and grouping in @{product}"""
417
406
 
418
- method: Annotated[
419
- Optional[OutputWebhookMethod], PlainValidator(validate_open_enum(False))
420
- ] = OutputWebhookMethod.POST
407
+ method: Optional[OutputWebhookMethod] = OutputWebhookMethod.POST
421
408
  r"""The method to use when sending events"""
422
409
 
423
410
  format_: Annotated[
424
- Annotated[
425
- Optional[OutputWebhookFormat], PlainValidator(validate_open_enum(False))
426
- ],
427
- pydantic.Field(alias="format"),
411
+ Optional[OutputWebhookFormat], pydantic.Field(alias="format")
428
412
  ] = OutputWebhookFormat.NDJSON
429
413
  r"""How to format events before sending out"""
430
414
 
@@ -475,10 +459,7 @@ class OutputWebhook(BaseModel):
475
459
  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."""
476
460
 
477
461
  failed_request_logging_mode: Annotated[
478
- Annotated[
479
- Optional[OutputWebhookFailedRequestLoggingMode],
480
- PlainValidator(validate_open_enum(False)),
481
- ],
462
+ Optional[OutputWebhookFailedRequestLoggingMode],
482
463
  pydantic.Field(alias="failedRequestLoggingMode"),
483
464
  ] = OutputWebhookFailedRequestLoggingMode.NONE
484
465
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -505,20 +486,13 @@ class OutputWebhook(BaseModel):
505
486
  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."""
506
487
 
507
488
  on_backpressure: Annotated[
508
- Annotated[
509
- Optional[OutputWebhookBackpressureBehavior],
510
- PlainValidator(validate_open_enum(False)),
511
- ],
489
+ Optional[OutputWebhookBackpressureBehavior],
512
490
  pydantic.Field(alias="onBackpressure"),
513
491
  ] = OutputWebhookBackpressureBehavior.BLOCK
514
492
  r"""How to handle events when all receivers are exerting backpressure"""
515
493
 
516
494
  auth_type: Annotated[
517
- Annotated[
518
- Optional[OutputWebhookAuthenticationType],
519
- PlainValidator(validate_open_enum(False)),
520
- ],
521
- pydantic.Field(alias="authType"),
495
+ Optional[OutputWebhookAuthenticationType], pydantic.Field(alias="authType")
522
496
  ] = OutputWebhookAuthenticationType.NONE
523
497
  r"""Authentication method to use for the HTTP request"""
524
498
 
@@ -590,29 +564,19 @@ class OutputWebhook(BaseModel):
590
564
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
591
565
 
592
566
  pq_compress: Annotated[
593
- Annotated[
594
- Optional[OutputWebhookCompression],
595
- PlainValidator(validate_open_enum(False)),
596
- ],
597
- pydantic.Field(alias="pqCompress"),
567
+ Optional[OutputWebhookCompression], pydantic.Field(alias="pqCompress")
598
568
  ] = OutputWebhookCompression.NONE
599
569
  r"""Codec to use to compress the persisted data"""
600
570
 
601
571
  pq_on_backpressure: Annotated[
602
- Annotated[
603
- Optional[OutputWebhookQueueFullBehavior],
604
- PlainValidator(validate_open_enum(False)),
605
- ],
572
+ Optional[OutputWebhookQueueFullBehavior],
606
573
  pydantic.Field(alias="pqOnBackpressure"),
607
574
  ] = OutputWebhookQueueFullBehavior.BLOCK
608
575
  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."""
609
576
 
610
- pq_mode: Annotated[
611
- Annotated[
612
- Optional[OutputWebhookMode], PlainValidator(validate_open_enum(False))
613
- ],
614
- pydantic.Field(alias="pqMode"),
615
- ] = OutputWebhookMode.ERROR
577
+ pq_mode: Annotated[Optional[OutputWebhookMode], pydantic.Field(alias="pqMode")] = (
578
+ OutputWebhookMode.ERROR
579
+ )
616
580
  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."""
617
581
 
618
582
  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 Any, List, Optional
11
8
  from typing_extensions import Annotated, NotRequired, TypedDict
12
9
 
13
10
 
14
- class OutputXsiamType(str, Enum, metaclass=utils.OpenEnumMeta):
11
+ class OutputXsiamType(str, Enum):
15
12
  XSIAM = "xsiam"
16
13
 
17
14
 
@@ -26,7 +23,7 @@ class OutputXsiamExtraHTTPHeader(BaseModel):
26
23
  name: Optional[str] = None
27
24
 
28
25
 
29
- class OutputXsiamFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMeta):
26
+ class OutputXsiamFailedRequestLoggingMode(str, Enum):
30
27
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
31
28
 
32
29
  PAYLOAD = "payload"
@@ -34,7 +31,7 @@ class OutputXsiamFailedRequestLoggingMode(str, Enum, metaclass=utils.OpenEnumMet
34
31
  NONE = "none"
35
32
 
36
33
 
37
- class OutputXsiamAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
34
+ class OutputXsiamAuthenticationMethod(str, Enum):
38
35
  r"""Enter a token directly, or provide a secret referencing a token"""
39
36
 
40
37
  TOKEN = "token"
@@ -95,7 +92,7 @@ class OutputXsiamTimeoutRetrySettings(BaseModel):
95
92
  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)."""
96
93
 
97
94
 
98
- class OutputXsiamBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
95
+ class OutputXsiamBackpressureBehavior(str, Enum):
99
96
  r"""How to handle events when all receivers are exerting backpressure"""
100
97
 
101
98
  BLOCK = "block"
@@ -116,21 +113,21 @@ class OutputXsiamURL(BaseModel):
116
113
  r"""Assign a weight (>0) to each endpoint to indicate its traffic-handling capability"""
117
114
 
118
115
 
119
- class OutputXsiamCompression(str, Enum, metaclass=utils.OpenEnumMeta):
116
+ class OutputXsiamCompression(str, Enum):
120
117
  r"""Codec to use to compress the persisted data"""
121
118
 
122
119
  NONE = "none"
123
120
  GZIP = "gzip"
124
121
 
125
122
 
126
- class OutputXsiamQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
123
+ class OutputXsiamQueueFullBehavior(str, Enum):
127
124
  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."""
128
125
 
129
126
  BLOCK = "block"
130
127
  DROP = "drop"
131
128
 
132
129
 
133
- class OutputXsiamMode(str, Enum, metaclass=utils.OpenEnumMeta):
130
+ class OutputXsiamMode(str, Enum):
134
131
  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."""
135
132
 
136
133
  ERROR = "error"
@@ -229,7 +226,7 @@ class OutputXsiam(BaseModel):
229
226
  id: str
230
227
  r"""Unique ID for this output"""
231
228
 
232
- type: Annotated[OutputXsiamType, PlainValidator(validate_open_enum(False))]
229
+ type: OutputXsiamType
233
230
 
234
231
  pipeline: Optional[str] = None
235
232
  r"""Pipeline to process data before sending out to this output"""
@@ -286,10 +283,7 @@ class OutputXsiam(BaseModel):
286
283
  r"""Headers to add to all events"""
287
284
 
288
285
  failed_request_logging_mode: Annotated[
289
- Annotated[
290
- Optional[OutputXsiamFailedRequestLoggingMode],
291
- PlainValidator(validate_open_enum(False)),
292
- ],
286
+ Optional[OutputXsiamFailedRequestLoggingMode],
293
287
  pydantic.Field(alias="failedRequestLoggingMode"),
294
288
  ] = OutputXsiamFailedRequestLoggingMode.NONE
295
289
  r"""Data to log when a request fails. All headers are redacted by default, unless listed as safe headers below."""
@@ -300,11 +294,7 @@ class OutputXsiam(BaseModel):
300
294
  r"""List of headers that are safe to log in plain text"""
301
295
 
302
296
  auth_type: Annotated[
303
- Annotated[
304
- Optional[OutputXsiamAuthenticationMethod],
305
- PlainValidator(validate_open_enum(False)),
306
- ],
307
- pydantic.Field(alias="authType"),
297
+ Optional[OutputXsiamAuthenticationMethod], pydantic.Field(alias="authType")
308
298
  ] = OutputXsiamAuthenticationMethod.TOKEN
309
299
  r"""Enter a token directly, or provide a secret referencing a token"""
310
300
 
@@ -330,10 +320,7 @@ class OutputXsiam(BaseModel):
330
320
  r"""Maximum number of requests to limit to per second"""
331
321
 
332
322
  on_backpressure: Annotated[
333
- Annotated[
334
- Optional[OutputXsiamBackpressureBehavior],
335
- PlainValidator(validate_open_enum(False)),
336
- ],
323
+ Optional[OutputXsiamBackpressureBehavior],
337
324
  pydantic.Field(alias="onBackpressure"),
338
325
  ] = OutputXsiamBackpressureBehavior.BLOCK
339
326
  r"""How to handle events when all receivers are exerting backpressure"""
@@ -388,26 +375,18 @@ class OutputXsiam(BaseModel):
388
375
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
389
376
 
390
377
  pq_compress: Annotated[
391
- Annotated[
392
- Optional[OutputXsiamCompression], PlainValidator(validate_open_enum(False))
393
- ],
394
- pydantic.Field(alias="pqCompress"),
378
+ Optional[OutputXsiamCompression], pydantic.Field(alias="pqCompress")
395
379
  ] = OutputXsiamCompression.NONE
396
380
  r"""Codec to use to compress the persisted data"""
397
381
 
398
382
  pq_on_backpressure: Annotated[
399
- Annotated[
400
- Optional[OutputXsiamQueueFullBehavior],
401
- PlainValidator(validate_open_enum(False)),
402
- ],
403
- pydantic.Field(alias="pqOnBackpressure"),
383
+ Optional[OutputXsiamQueueFullBehavior], pydantic.Field(alias="pqOnBackpressure")
404
384
  ] = OutputXsiamQueueFullBehavior.BLOCK
405
385
  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."""
406
386
 
407
- pq_mode: Annotated[
408
- Annotated[Optional[OutputXsiamMode], PlainValidator(validate_open_enum(False))],
409
- pydantic.Field(alias="pqMode"),
410
- ] = OutputXsiamMode.ERROR
387
+ pq_mode: Annotated[Optional[OutputXsiamMode], pydantic.Field(alias="pqMode")] = (
388
+ OutputXsiamMode.ERROR
389
+ )
411
390
  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."""
412
391
 
413
392
  pq_controls: Annotated[
@@ -12,7 +12,7 @@ class UpdateOutputByIDRequestTypedDict(TypedDict):
12
12
  id: str
13
13
  r"""Unique ID to PATCH"""
14
14
  output: OutputTypedDict
15
- r"""Output object to be updated"""
15
+ r"""Destination object to be updated"""
16
16
 
17
17
 
18
18
  class UpdateOutputByIDRequest(BaseModel):
@@ -24,11 +24,11 @@ class UpdateOutputByIDRequest(BaseModel):
24
24
  output: Annotated[
25
25
  Output, FieldMetadata(request=RequestMetadata(media_type="application/json"))
26
26
  ]
27
- r"""Output object to be updated"""
27
+ r"""Destination object to be updated"""
28
28
 
29
29
 
30
30
  class UpdateOutputByIDResponseTypedDict(TypedDict):
31
- r"""a list of Output objects"""
31
+ r"""a list of Destination objects"""
32
32
 
33
33
  count: NotRequired[int]
34
34
  r"""number of items present in the items array"""
@@ -36,7 +36,7 @@ class UpdateOutputByIDResponseTypedDict(TypedDict):
36
36
 
37
37
 
38
38
  class UpdateOutputByIDResponse(BaseModel):
39
- r"""a list of Output objects"""
39
+ r"""a list of Destination objects"""
40
40
 
41
41
  count: Optional[int] = None
42
42
  r"""number of items present in the items array"""
@@ -15,8 +15,8 @@ import weakref
15
15
 
16
16
  if TYPE_CHECKING:
17
17
  from cribl_control_plane.auth_sdk import AuthSDK
18
+ from cribl_control_plane.destinations import Destinations
18
19
  from cribl_control_plane.health import Health
19
- from cribl_control_plane.outputs import Outputs
20
20
  from cribl_control_plane.pipelines import Pipelines
21
21
  from cribl_control_plane.routes_sdk import RoutesSDK
22
22
  from cribl_control_plane.sources import Sources
@@ -26,9 +26,7 @@ class CriblControlPlane(BaseSDK):
26
26
  r"""Cribl API Reference: This API Reference lists available REST endpoints, along with their supported operations for accessing, creating, updating, or deleting resources. See our complementary product documentation at [docs.cribl.io](http://docs.cribl.io)."""
27
27
 
28
28
  sources: "Sources"
29
- r"""Actions related to Sources"""
30
- outputs: "Outputs"
31
- r"""Actions related to outputs"""
29
+ destinations: "Destinations"
32
30
  pipelines: "Pipelines"
33
31
  r"""Actions related to Pipelines"""
34
32
  routes: "RoutesSDK"
@@ -39,7 +37,7 @@ class CriblControlPlane(BaseSDK):
39
37
  r"""Actions related to REST server health"""
40
38
  _sub_sdk_map = {
41
39
  "sources": ("cribl_control_plane.sources", "Sources"),
42
- "outputs": ("cribl_control_plane.outputs", "Outputs"),
40
+ "destinations": ("cribl_control_plane.destinations", "Destinations"),
43
41
  "pipelines": ("cribl_control_plane.pipelines", "Pipelines"),
44
42
  "routes": ("cribl_control_plane.routes_sdk", "RoutesSDK"),
45
43
  "auth": ("cribl_control_plane.auth_sdk", "AuthSDK"),
@@ -10,8 +10,6 @@ from typing import Any, List, Mapping, Optional, Union, cast
10
10
 
11
11
 
12
12
  class Sources(BaseSDK):
13
- r"""Actions related to Sources"""
14
-
15
13
  def list_source(
16
14
  self,
17
15
  *,
@@ -175,7 +173,7 @@ class Sources(BaseSDK):
175
173
  def create_source(
176
174
  self,
177
175
  *,
178
- request: Union[models.Input, models.InputTypedDict],
176
+ request: Union[models.CreateInputRequest, models.CreateInputRequestTypedDict],
179
177
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
180
178
  server_url: Optional[str] = None,
181
179
  timeout_ms: Optional[int] = None,
@@ -202,8 +200,8 @@ class Sources(BaseSDK):
202
200
  base_url = self._get_url(base_url, url_variables)
203
201
 
204
202
  if not isinstance(request, BaseModel):
205
- request = utils.unmarshal(request, models.Input)
206
- request = cast(models.Input, request)
203
+ request = utils.unmarshal(request, models.CreateInputRequest)
204
+ request = cast(models.CreateInputRequest, request)
207
205
 
208
206
  req = self._build_request(
209
207
  method="POST",
@@ -219,7 +217,7 @@ class Sources(BaseSDK):
219
217
  http_headers=http_headers,
220
218
  security=self.sdk_configuration.security,
221
219
  get_serialized_body=lambda: utils.serialize_request_body(
222
- request, False, False, "json", models.Input
220
+ request, False, False, "json", models.CreateInputRequest
223
221
  ),
224
222
  timeout_ms=timeout_ms,
225
223
  )
@@ -265,7 +263,7 @@ class Sources(BaseSDK):
265
263
  async def create_source_async(
266
264
  self,
267
265
  *,
268
- request: Union[models.Input, models.InputTypedDict],
266
+ request: Union[models.CreateInputRequest, models.CreateInputRequestTypedDict],
269
267
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
270
268
  server_url: Optional[str] = None,
271
269
  timeout_ms: Optional[int] = None,
@@ -292,8 +290,8 @@ class Sources(BaseSDK):
292
290
  base_url = self._get_url(base_url, url_variables)
293
291
 
294
292
  if not isinstance(request, BaseModel):
295
- request = utils.unmarshal(request, models.Input)
296
- request = cast(models.Input, request)
293
+ request = utils.unmarshal(request, models.CreateInputRequest)
294
+ request = cast(models.CreateInputRequest, request)
297
295
 
298
296
  req = self._build_request_async(
299
297
  method="POST",
@@ -309,7 +307,7 @@ class Sources(BaseSDK):
309
307
  http_headers=http_headers,
310
308
  security=self.sdk_configuration.security,
311
309
  get_serialized_body=lambda: utils.serialize_request_body(
312
- request, False, False, "json", models.Input
310
+ request, False, False, "json", models.CreateInputRequest
313
311
  ),
314
312
  timeout_ms=timeout_ms,
315
313
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: cribl-control-plane
3
- Version: 0.0.15
3
+ Version: 0.0.17
4
4
  Summary: Python Client SDK Generated by Speakeasy.
5
5
  Author: Speakeasy
6
6
  Requires-Python: >=3.9.2
@@ -202,22 +202,22 @@ with CriblControlPlane(
202
202
  * [login](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/authsdk/README.md#login) - Log in and obtain Auth token
203
203
 
204
204
 
205
+ ### [destinations](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md)
206
+
207
+ * [list_destination](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#list_destination) - Get a list of Destination objects
208
+ * [create_destination](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#create_destination) - Create Destination
209
+ * [get_destination_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#get_destination_by_id) - Get Destination by ID
210
+ * [update_destination_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#update_destination_by_id) - Update Destination
211
+ * [delete_destination_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#delete_destination_by_id) - Delete Destination
212
+ * [delete_destination_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#delete_destination_pq_by_id) - Clears destination persistent queue
213
+ * [get_destination_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#get_destination_pq_by_id) - Retrieves status of latest clear PQ job for a destination
214
+ * [get_destination_samples_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#get_destination_samples_by_id) - Retrieve samples data for the specified destination. Used to get sample data for the test action.
215
+ * [create_destination_test_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/destinations/README.md#create_destination_test_by_id) - Send sample data to a destination to validate configuration or test connectivity
216
+
205
217
  ### [health](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/health/README.md)
206
218
 
207
219
  * [get_health_info](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/health/README.md#get_health_info) - Provides health info for REST server
208
220
 
209
- ### [outputs](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md)
210
-
211
- * [list_output](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#list_output) - Get a list of Output objects
212
- * [create_output](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#create_output) - Create Output
213
- * [get_output_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#get_output_by_id) - Get Output by ID
214
- * [update_output_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#update_output_by_id) - Update Output
215
- * [delete_output_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#delete_output_by_id) - Delete Output
216
- * [delete_output_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#delete_output_pq_by_id) - Clears destination persistent queue
217
- * [get_output_pq_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#get_output_pq_by_id) - Retrieves status of latest clear PQ job for an output
218
- * [get_output_samples_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#get_output_samples_by_id) - Retrieve samples data for the specified output. Used to get sample data for the test action.
219
- * [create_output_test_by_id](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/outputs/README.md#create_output_test_by_id) - Send sample data to an output to validate configuration or test connectivity
220
-
221
221
  ### [pipelines](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/pipelines/README.md)
222
222
 
223
223
  * [list_pipeline](https://github.com/criblio/cribl_control_plane_sdk_python/blob/master/docs/sdks/pipelines/README.md#list_pipeline) - Get a list of Pipeline objects