cribl-control-plane 0.3.0b4__py3-none-any.whl → 0.3.0b6__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 (150) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/groups_sdk.py +2 -2
  3. cribl_control_plane/models/cacheconnection.py +20 -0
  4. cribl_control_plane/models/configgroup.py +20 -1
  5. cribl_control_plane/models/configgroupcloud.py +11 -1
  6. cribl_control_plane/models/createconfiggroupbyproductop.py +13 -2
  7. cribl_control_plane/models/cribllakedataset.py +11 -1
  8. cribl_control_plane/models/cribllakedatasetupdate.py +11 -1
  9. cribl_control_plane/models/datasetmetadata.py +11 -1
  10. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +11 -0
  11. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +20 -0
  12. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +20 -0
  13. cribl_control_plane/models/getconfiggroupbyproductandidop.py +11 -0
  14. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +11 -0
  15. cribl_control_plane/models/getsummaryop.py +11 -0
  16. cribl_control_plane/models/groupcreaterequest.py +20 -1
  17. cribl_control_plane/models/hbcriblinfo.py +11 -1
  18. cribl_control_plane/models/healthserverstatus.py +20 -1
  19. cribl_control_plane/models/inputappscope.py +56 -1
  20. cribl_control_plane/models/inputazureblob.py +29 -1
  21. cribl_control_plane/models/inputcollection.py +20 -1
  22. cribl_control_plane/models/inputconfluentcloud.py +78 -1
  23. cribl_control_plane/models/inputcribl.py +20 -1
  24. cribl_control_plane/models/inputcriblhttp.py +38 -1
  25. cribl_control_plane/models/inputcribllakehttp.py +38 -1
  26. cribl_control_plane/models/inputcriblmetrics.py +20 -1
  27. cribl_control_plane/models/inputcribltcp.py +38 -1
  28. cribl_control_plane/models/inputcrowdstrike.py +47 -1
  29. cribl_control_plane/models/inputdatadogagent.py +38 -1
  30. cribl_control_plane/models/inputdatagen.py +20 -1
  31. cribl_control_plane/models/inputedgeprometheus.py +94 -1
  32. cribl_control_plane/models/inputelastic.py +65 -1
  33. cribl_control_plane/models/inputeventhub.py +58 -1
  34. cribl_control_plane/models/inputexec.py +29 -1
  35. cribl_control_plane/models/inputfile.py +29 -1
  36. cribl_control_plane/models/inputfirehose.py +38 -1
  37. cribl_control_plane/models/inputgooglepubsub.py +29 -1
  38. cribl_control_plane/models/inputgrafana.py +110 -1
  39. cribl_control_plane/models/inputhttp.py +38 -1
  40. cribl_control_plane/models/inputhttpraw.py +38 -1
  41. cribl_control_plane/models/inputjournalfiles.py +20 -1
  42. cribl_control_plane/models/inputkafka.py +74 -1
  43. cribl_control_plane/models/inputkinesis.py +65 -1
  44. cribl_control_plane/models/inputkubeevents.py +20 -1
  45. cribl_control_plane/models/inputkubelogs.py +29 -1
  46. cribl_control_plane/models/inputkubemetrics.py +29 -1
  47. cribl_control_plane/models/inputloki.py +47 -1
  48. cribl_control_plane/models/inputmetrics.py +38 -1
  49. cribl_control_plane/models/inputmodeldriventelemetry.py +38 -1
  50. cribl_control_plane/models/inputmsk.py +74 -1
  51. cribl_control_plane/models/inputnetflow.py +20 -1
  52. cribl_control_plane/models/inputoffice365mgmt.py +56 -1
  53. cribl_control_plane/models/inputoffice365msgtrace.py +56 -1
  54. cribl_control_plane/models/inputoffice365service.py +56 -1
  55. cribl_control_plane/models/inputopentelemetry.py +65 -1
  56. cribl_control_plane/models/inputprometheus.py +87 -1
  57. cribl_control_plane/models/inputprometheusrw.py +47 -1
  58. cribl_control_plane/models/inputrawudp.py +20 -1
  59. cribl_control_plane/models/inputs3.py +38 -1
  60. cribl_control_plane/models/inputs3inventory.py +47 -1
  61. cribl_control_plane/models/inputsecuritylake.py +47 -1
  62. cribl_control_plane/models/inputsnmp.py +29 -1
  63. cribl_control_plane/models/inputsplunk.py +56 -1
  64. cribl_control_plane/models/inputsplunkhec.py +47 -1
  65. cribl_control_plane/models/inputsplunksearch.py +56 -1
  66. cribl_control_plane/models/inputsqs.py +47 -1
  67. cribl_control_plane/models/inputsyslog.py +74 -1
  68. cribl_control_plane/models/inputsystemmetrics.py +92 -1
  69. cribl_control_plane/models/inputsystemstate.py +29 -1
  70. cribl_control_plane/models/inputtcp.py +47 -1
  71. cribl_control_plane/models/inputtcpjson.py +47 -1
  72. cribl_control_plane/models/inputwef.py +65 -1
  73. cribl_control_plane/models/inputwindowsmetrics.py +83 -1
  74. cribl_control_plane/models/inputwineventlogs.py +38 -1
  75. cribl_control_plane/models/inputwiz.py +38 -1
  76. cribl_control_plane/models/inputwizwebhook.py +38 -1
  77. cribl_control_plane/models/inputzscalerhec.py +47 -1
  78. cribl_control_plane/models/listconfiggroupbyproductop.py +11 -0
  79. cribl_control_plane/models/masterworkerentry.py +11 -1
  80. cribl_control_plane/models/nodeupgradestatus.py +38 -0
  81. cribl_control_plane/models/outputazureblob.py +83 -1
  82. cribl_control_plane/models/outputazuredataexplorer.py +148 -1
  83. cribl_control_plane/models/outputazureeventhub.py +98 -1
  84. cribl_control_plane/models/outputazurelogs.py +56 -1
  85. cribl_control_plane/models/outputchronicle.py +56 -1
  86. cribl_control_plane/models/outputclickhouse.py +92 -1
  87. cribl_control_plane/models/outputcloudwatch.py +47 -1
  88. cribl_control_plane/models/outputconfluentcloud.py +123 -1
  89. cribl_control_plane/models/outputcriblhttp.py +74 -1
  90. cribl_control_plane/models/outputcribllake.py +76 -1
  91. cribl_control_plane/models/outputcribltcp.py +74 -1
  92. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +67 -1
  93. cribl_control_plane/models/outputdatabricks.py +65 -1
  94. cribl_control_plane/models/outputdatadog.py +83 -1
  95. cribl_control_plane/models/outputdataset.py +74 -1
  96. cribl_control_plane/models/outputdiskspool.py +11 -1
  97. cribl_control_plane/models/outputdls3.py +110 -1
  98. cribl_control_plane/models/outputdynatracehttp.py +92 -1
  99. cribl_control_plane/models/outputdynatraceotlp.py +92 -1
  100. cribl_control_plane/models/outputelastic.py +74 -1
  101. cribl_control_plane/models/outputelasticcloud.py +56 -1
  102. cribl_control_plane/models/outputexabeam.py +47 -1
  103. cribl_control_plane/models/outputfilesystem.py +65 -1
  104. cribl_control_plane/models/outputgooglechronicle.py +83 -1
  105. cribl_control_plane/models/outputgooglecloudlogging.py +65 -1
  106. cribl_control_plane/models/outputgooglecloudstorage.py +101 -1
  107. cribl_control_plane/models/outputgooglepubsub.py +47 -1
  108. cribl_control_plane/models/outputgrafanacloud.py +146 -1
  109. cribl_control_plane/models/outputgraphite.py +47 -1
  110. cribl_control_plane/models/outputhoneycomb.py +56 -1
  111. cribl_control_plane/models/outputhumiohec.py +65 -1
  112. cribl_control_plane/models/outputinfluxdb.py +65 -1
  113. cribl_control_plane/models/outputkafka.py +119 -1
  114. cribl_control_plane/models/outputkinesis.py +65 -1
  115. cribl_control_plane/models/outputloki.py +65 -1
  116. cribl_control_plane/models/outputminio.py +110 -1
  117. cribl_control_plane/models/outputmsk.py +119 -1
  118. cribl_control_plane/models/outputnewrelic.py +74 -1
  119. cribl_control_plane/models/outputnewrelicevents.py +65 -1
  120. cribl_control_plane/models/outputopentelemetry.py +110 -1
  121. cribl_control_plane/models/outputprometheus.py +56 -1
  122. cribl_control_plane/models/outputring.py +29 -1
  123. cribl_control_plane/models/outputs3.py +110 -1
  124. cribl_control_plane/models/outputsecuritylake.py +85 -1
  125. cribl_control_plane/models/outputsentinel.py +74 -1
  126. cribl_control_plane/models/outputsentineloneaisiem.py +74 -1
  127. cribl_control_plane/models/outputservicenow.py +101 -1
  128. cribl_control_plane/models/outputsignalfx.py +56 -1
  129. cribl_control_plane/models/outputsns.py +56 -1
  130. cribl_control_plane/models/outputsplunk.py +92 -1
  131. cribl_control_plane/models/outputsplunkhec.py +74 -1
  132. cribl_control_plane/models/outputsplunklb.py +121 -1
  133. cribl_control_plane/models/outputsqs.py +65 -1
  134. cribl_control_plane/models/outputstatsd.py +47 -1
  135. cribl_control_plane/models/outputstatsdext.py +47 -1
  136. cribl_control_plane/models/outputsumologic.py +56 -1
  137. cribl_control_plane/models/outputsyslog.py +110 -1
  138. cribl_control_plane/models/outputtcpjson.py +83 -1
  139. cribl_control_plane/models/outputwavefront.py +56 -1
  140. cribl_control_plane/models/outputwebhook.py +92 -1
  141. cribl_control_plane/models/outputxsiam.py +56 -1
  142. cribl_control_plane/models/resourcepolicy.py +11 -0
  143. cribl_control_plane/models/runnablejobcollection.py +56 -1
  144. cribl_control_plane/models/runnablejobexecutor.py +20 -1
  145. cribl_control_plane/models/runnablejobscheduledsearch.py +11 -1
  146. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +11 -0
  147. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +11 -0
  148. {cribl_control_plane-0.3.0b4.dist-info → cribl_control_plane-0.3.0b6.dist-info}/METADATA +1 -1
  149. {cribl_control_plane-0.3.0b4.dist-info → cribl_control_plane-0.3.0b6.dist-info}/RECORD +150 -150
  150. {cribl_control_plane-0.3.0b4.dist-info → cribl_control_plane-0.3.0b6.dist-info}/WHEEL +0 -0
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -211,6 +212,24 @@ class OutputWebhookTLSSettingsClientSide(BaseModel):
211
212
  pydantic.Field(alias="maxVersion"),
212
213
  ] = None
213
214
 
215
+ @field_serializer("min_version")
216
+ def serialize_min_version(self, value):
217
+ if isinstance(value, str):
218
+ try:
219
+ return models.OutputWebhookMinimumTLSVersion(value)
220
+ except ValueError:
221
+ return value
222
+ return value
223
+
224
+ @field_serializer("max_version")
225
+ def serialize_max_version(self, value):
226
+ if isinstance(value, str):
227
+ try:
228
+ return models.OutputWebhookMaximumTLSVersion(value)
229
+ except ValueError:
230
+ return value
231
+ return value
232
+
214
233
 
215
234
  class OutputWebhookMode(str, Enum, metaclass=utils.OpenEnumMeta):
216
235
  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."""
@@ -738,3 +757,75 @@ class OutputWebhook(BaseModel):
738
757
  Optional[float], pydantic.Field(alias="loadBalanceStatsPeriodSec")
739
758
  ] = 300
740
759
  r"""How far back in time to keep traffic stats for load balancing purposes"""
760
+
761
+ @field_serializer("method")
762
+ def serialize_method(self, value):
763
+ if isinstance(value, str):
764
+ try:
765
+ return models.OutputWebhookMethod(value)
766
+ except ValueError:
767
+ return value
768
+ return value
769
+
770
+ @field_serializer("format_")
771
+ def serialize_format_(self, value):
772
+ if isinstance(value, str):
773
+ try:
774
+ return models.OutputWebhookFormat(value)
775
+ except ValueError:
776
+ return value
777
+ return value
778
+
779
+ @field_serializer("failed_request_logging_mode")
780
+ def serialize_failed_request_logging_mode(self, value):
781
+ if isinstance(value, str):
782
+ try:
783
+ return models.OutputWebhookFailedRequestLoggingMode(value)
784
+ except ValueError:
785
+ return value
786
+ return value
787
+
788
+ @field_serializer("on_backpressure")
789
+ def serialize_on_backpressure(self, value):
790
+ if isinstance(value, str):
791
+ try:
792
+ return models.OutputWebhookBackpressureBehavior(value)
793
+ except ValueError:
794
+ return value
795
+ return value
796
+
797
+ @field_serializer("auth_type")
798
+ def serialize_auth_type(self, value):
799
+ if isinstance(value, str):
800
+ try:
801
+ return models.OutputWebhookAuthenticationType(value)
802
+ except ValueError:
803
+ return value
804
+ return value
805
+
806
+ @field_serializer("pq_mode")
807
+ def serialize_pq_mode(self, value):
808
+ if isinstance(value, str):
809
+ try:
810
+ return models.OutputWebhookMode(value)
811
+ except ValueError:
812
+ return value
813
+ return value
814
+
815
+ @field_serializer("pq_compress")
816
+ def serialize_pq_compress(self, value):
817
+ if isinstance(value, str):
818
+ try:
819
+ return models.OutputWebhookCompression(value)
820
+ except ValueError:
821
+ return value
822
+ return value
823
+
824
+ @field_serializer("pq_on_backpressure")
825
+ def serialize_pq_on_backpressure(self, value):
826
+ if isinstance(value, str):
827
+ try:
828
+ return models.OutputWebhookQueueFullBehavior(value)
829
+ except ValueError:
830
+ return value
831
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import Any, List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -454,3 +455,57 @@ class OutputXsiam(BaseModel):
454
455
  pq_controls: Annotated[
455
456
  Optional[OutputXsiamPqControls], pydantic.Field(alias="pqControls")
456
457
  ] = None
458
+
459
+ @field_serializer("failed_request_logging_mode")
460
+ def serialize_failed_request_logging_mode(self, value):
461
+ if isinstance(value, str):
462
+ try:
463
+ return models.OutputXsiamFailedRequestLoggingMode(value)
464
+ except ValueError:
465
+ return value
466
+ return value
467
+
468
+ @field_serializer("auth_type")
469
+ def serialize_auth_type(self, value):
470
+ if isinstance(value, str):
471
+ try:
472
+ return models.OutputXsiamAuthenticationMethod(value)
473
+ except ValueError:
474
+ return value
475
+ return value
476
+
477
+ @field_serializer("on_backpressure")
478
+ def serialize_on_backpressure(self, value):
479
+ if isinstance(value, str):
480
+ try:
481
+ return models.OutputXsiamBackpressureBehavior(value)
482
+ except ValueError:
483
+ return value
484
+ return value
485
+
486
+ @field_serializer("pq_mode")
487
+ def serialize_pq_mode(self, value):
488
+ if isinstance(value, str):
489
+ try:
490
+ return models.OutputXsiamMode(value)
491
+ except ValueError:
492
+ return value
493
+ return value
494
+
495
+ @field_serializer("pq_compress")
496
+ def serialize_pq_compress(self, value):
497
+ if isinstance(value, str):
498
+ try:
499
+ return models.OutputXsiamCompression(value)
500
+ except ValueError:
501
+ return value
502
+ return value
503
+
504
+ @field_serializer("pq_on_backpressure")
505
+ def serialize_pq_on_backpressure(self, value):
506
+ if isinstance(value, str):
507
+ try:
508
+ return models.OutputXsiamQueueFullBehavior(value)
509
+ except ValueError:
510
+ return value
511
+ return value
@@ -2,8 +2,10 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from .rbacresource import RbacResource
5
+ from cribl_control_plane import models
5
6
  from cribl_control_plane.types import BaseModel
6
7
  from cribl_control_plane.utils import validate_open_enum
8
+ from pydantic import field_serializer
7
9
  from pydantic.functional_validators import PlainValidator
8
10
  from typing import Optional
9
11
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -24,3 +26,12 @@ class ResourcePolicy(BaseModel):
24
26
  type: Annotated[RbacResource, PlainValidator(validate_open_enum(False))]
25
27
 
26
28
  id: Optional[str] = None
29
+
30
+ @field_serializer("type")
31
+ def serialize_type(self, value):
32
+ if isinstance(value, str):
33
+ try:
34
+ return models.RbacResource(value)
35
+ except ValueError:
36
+ return value
37
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import Any, List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -334,6 +335,15 @@ class RunnableJobCollectionInput(BaseModel):
334
335
  output: Optional[str] = None
335
336
  r"""Destination to send results to"""
336
337
 
338
+ @field_serializer("type")
339
+ def serialize_type(self, value):
340
+ if isinstance(value, str):
341
+ try:
342
+ return models.InputType(value)
343
+ except ValueError:
344
+ return value
345
+ return value
346
+
337
347
 
338
348
  class RunnableJobCollectionLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
339
349
  r"""Level at which to set task logging"""
@@ -396,6 +406,15 @@ class CaptureSettings(BaseModel):
396
406
  Optional[WhereToCapture], PlainValidator(validate_open_enum(True))
397
407
  ] = WhereToCapture.ZERO
398
408
 
409
+ @field_serializer("level")
410
+ def serialize_level(self, value):
411
+ if isinstance(value, str):
412
+ try:
413
+ return models.WhereToCapture(value)
414
+ except ValueError:
415
+ return value
416
+ return value
417
+
399
418
 
400
419
  class RunnableJobCollectionRunTypedDict(TypedDict):
401
420
  reschedule_dropped_tasks: NotRequired[bool]
@@ -537,6 +556,33 @@ class RunnableJobCollectionRun(BaseModel):
537
556
 
538
557
  capture: Optional[CaptureSettings] = None
539
558
 
559
+ @field_serializer("log_level")
560
+ def serialize_log_level(self, value):
561
+ if isinstance(value, str):
562
+ try:
563
+ return models.RunnableJobCollectionLogLevel(value)
564
+ except ValueError:
565
+ return value
566
+ return value
567
+
568
+ @field_serializer("mode")
569
+ def serialize_mode(self, value):
570
+ if isinstance(value, str):
571
+ try:
572
+ return models.RunnableJobCollectionMode(value)
573
+ except ValueError:
574
+ return value
575
+ return value
576
+
577
+ @field_serializer("time_range_type")
578
+ def serialize_time_range_type(self, value):
579
+ if isinstance(value, str):
580
+ try:
581
+ return models.TimeRange(value)
582
+ except ValueError:
583
+ return value
584
+ return value
585
+
540
586
 
541
587
  class RunnableJobCollectionTypedDict(TypedDict):
542
588
  collector: CollectorTypedDict
@@ -612,3 +658,12 @@ class RunnableJobCollection(BaseModel):
612
658
  r"""If enabled, tasks are created and run by the same Worker Node"""
613
659
 
614
660
  input: Optional[RunnableJobCollectionInput] = None
661
+
662
+ @field_serializer("type")
663
+ def serialize_type(self, value):
664
+ if isinstance(value, str):
665
+ try:
666
+ return models.RunnableJobCollectionJobType(value)
667
+ except ValueError:
668
+ return value
669
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import Any, List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -283,6 +284,15 @@ class RunnableJobExecutorRun(BaseModel):
283
284
  job_timeout: Annotated[Optional[str], pydantic.Field(alias="jobTimeout")] = "0"
284
285
  r"""Maximum time the job is allowed to run. Time unit defaults to seconds if not specified (examples: 30, 45s, 15m). Enter 0 for unlimited time."""
285
286
 
287
+ @field_serializer("log_level")
288
+ def serialize_log_level(self, value):
289
+ if isinstance(value, str):
290
+ try:
291
+ return models.RunnableJobExecutorLogLevel(value)
292
+ except ValueError:
293
+ return value
294
+ return value
295
+
286
296
 
287
297
  class RunnableJobExecutorTypedDict(TypedDict):
288
298
  executor: ExecutorTypedDict
@@ -347,3 +357,12 @@ class RunnableJobExecutor(BaseModel):
347
357
 
348
358
  streamtags: Optional[List[str]] = None
349
359
  r"""Tags for filtering and grouping in @{product}"""
360
+
361
+ @field_serializer("type")
362
+ def serialize_type(self, value):
363
+ if isinstance(value, str):
364
+ try:
365
+ return models.RunnableJobExecutorJobType(value)
366
+ except ValueError:
367
+ return value
368
+ return value
@@ -1,11 +1,12 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
11
  from typing import Any, List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -274,3 +275,12 @@ class RunnableJobScheduledSearch(BaseModel):
274
275
 
275
276
  streamtags: Optional[List[str]] = None
276
277
  r"""Tags for filtering and grouping in @{product}"""
278
+
279
+ @field_serializer("type")
280
+ def serialize_type(self, value):
281
+ if isinstance(value, str):
282
+ try:
283
+ return models.RunnableJobScheduledSearchJobType(value)
284
+ except ValueError:
285
+ return value
286
+ return value
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
  from .configgroup import ConfigGroup, ConfigGroupTypedDict
5
5
  from .productscore import ProductsCore
6
+ from cribl_control_plane import models
6
7
  from cribl_control_plane.types import BaseModel
7
8
  from cribl_control_plane.utils import (
8
9
  FieldMetadata,
@@ -11,6 +12,7 @@ from cribl_control_plane.utils import (
11
12
  validate_open_enum,
12
13
  )
13
14
  import pydantic
15
+ from pydantic import field_serializer
14
16
  from pydantic.functional_validators import PlainValidator
15
17
  from typing import List, Optional
16
18
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -45,6 +47,15 @@ class UpdateConfigGroupByProductAndIDRequest(BaseModel):
45
47
  ]
46
48
  r"""ConfigGroup object"""
47
49
 
50
+ @field_serializer("product")
51
+ def serialize_product(self, value):
52
+ if isinstance(value, str):
53
+ try:
54
+ return models.ProductsCore(value)
55
+ except ValueError:
56
+ return value
57
+ return value
58
+
48
59
 
49
60
  class UpdateConfigGroupByProductAndIDResponseTypedDict(TypedDict):
50
61
  r"""a list of ConfigGroup objects"""
@@ -4,6 +4,7 @@ from __future__ import annotations
4
4
  from .configgroup import ConfigGroup, ConfigGroupTypedDict
5
5
  from .deployrequest import DeployRequest, DeployRequestTypedDict
6
6
  from .productscore import ProductsCore
7
+ from cribl_control_plane import models
7
8
  from cribl_control_plane.types import BaseModel
8
9
  from cribl_control_plane.utils import (
9
10
  FieldMetadata,
@@ -11,6 +12,7 @@ from cribl_control_plane.utils import (
11
12
  RequestMetadata,
12
13
  validate_open_enum,
13
14
  )
15
+ from pydantic import field_serializer
14
16
  from pydantic.functional_validators import PlainValidator
15
17
  from typing import List, Optional
16
18
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -43,6 +45,15 @@ class UpdateConfigGroupDeployByProductAndIDRequest(BaseModel):
43
45
  ]
44
46
  r"""DeployRequest object"""
45
47
 
48
+ @field_serializer("product")
49
+ def serialize_product(self, value):
50
+ if isinstance(value, str):
51
+ try:
52
+ return models.ProductsCore(value)
53
+ except ValueError:
54
+ return value
55
+ return value
56
+
46
57
 
47
58
  class UpdateConfigGroupDeployByProductAndIDResponseTypedDict(TypedDict):
48
59
  r"""a list of ConfigGroup objects"""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cribl-control-plane
3
- Version: 0.3.0b4
3
+ Version: 0.3.0b6
4
4
  Summary: Python Client SDK Generated by Speakeasy.
5
5
  Author: Speakeasy
6
6
  Requires-Python: >=3.9.2