cribl-control-plane 0.3.0b3__py3-none-any.whl → 0.3.0b5__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 (152) hide show
  1. cribl_control_plane/_version.py +4 -4
  2. cribl_control_plane/models/__init__.py +111 -3
  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 +11 -0
  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/input.py +15 -15
  20. cribl_control_plane/models/inputappscope.py +76 -17
  21. cribl_control_plane/models/inputazureblob.py +29 -1
  22. cribl_control_plane/models/inputcollection.py +20 -1
  23. cribl_control_plane/models/inputconfluentcloud.py +188 -1
  24. cribl_control_plane/models/inputcribl.py +20 -1
  25. cribl_control_plane/models/inputcriblhttp.py +58 -17
  26. cribl_control_plane/models/inputcribllakehttp.py +58 -17
  27. cribl_control_plane/models/inputcriblmetrics.py +20 -1
  28. cribl_control_plane/models/inputcribltcp.py +58 -17
  29. cribl_control_plane/models/inputcrowdstrike.py +47 -1
  30. cribl_control_plane/models/inputdatadogagent.py +58 -17
  31. cribl_control_plane/models/inputdatagen.py +20 -1
  32. cribl_control_plane/models/inputedgeprometheus.py +138 -37
  33. cribl_control_plane/models/inputelastic.py +108 -27
  34. cribl_control_plane/models/inputeventhub.py +176 -1
  35. cribl_control_plane/models/inputexec.py +29 -1
  36. cribl_control_plane/models/inputfile.py +36 -3
  37. cribl_control_plane/models/inputfirehose.py +58 -17
  38. cribl_control_plane/models/inputgooglepubsub.py +29 -1
  39. cribl_control_plane/models/inputgrafana.py +149 -32
  40. cribl_control_plane/models/inputhttp.py +58 -17
  41. cribl_control_plane/models/inputhttpraw.py +58 -17
  42. cribl_control_plane/models/inputjournalfiles.py +20 -1
  43. cribl_control_plane/models/inputkafka.py +182 -1
  44. cribl_control_plane/models/inputkinesis.py +65 -1
  45. cribl_control_plane/models/inputkubeevents.py +20 -1
  46. cribl_control_plane/models/inputkubelogs.py +29 -1
  47. cribl_control_plane/models/inputkubemetrics.py +29 -1
  48. cribl_control_plane/models/inputloki.py +67 -17
  49. cribl_control_plane/models/inputmetrics.py +58 -17
  50. cribl_control_plane/models/inputmodeldriventelemetry.py +58 -17
  51. cribl_control_plane/models/inputmsk.py +74 -1
  52. cribl_control_plane/models/inputnetflow.py +20 -1
  53. cribl_control_plane/models/inputoffice365mgmt.py +56 -1
  54. cribl_control_plane/models/inputoffice365msgtrace.py +56 -1
  55. cribl_control_plane/models/inputoffice365service.py +56 -1
  56. cribl_control_plane/models/inputopentelemetry.py +84 -16
  57. cribl_control_plane/models/inputprometheus.py +131 -37
  58. cribl_control_plane/models/inputprometheusrw.py +67 -17
  59. cribl_control_plane/models/inputrawudp.py +20 -1
  60. cribl_control_plane/models/inputs3.py +38 -1
  61. cribl_control_plane/models/inputs3inventory.py +47 -1
  62. cribl_control_plane/models/inputsecuritylake.py +47 -1
  63. cribl_control_plane/models/inputsnmp.py +29 -1
  64. cribl_control_plane/models/inputsplunk.py +76 -17
  65. cribl_control_plane/models/inputsplunkhec.py +66 -16
  66. cribl_control_plane/models/inputsplunksearch.py +56 -1
  67. cribl_control_plane/models/inputsqs.py +47 -1
  68. cribl_control_plane/models/inputsyslog.py +113 -32
  69. cribl_control_plane/models/inputsystemmetrics.py +110 -9
  70. cribl_control_plane/models/inputsystemstate.py +29 -1
  71. cribl_control_plane/models/inputtcp.py +77 -17
  72. cribl_control_plane/models/inputtcpjson.py +67 -17
  73. cribl_control_plane/models/inputwef.py +65 -1
  74. cribl_control_plane/models/inputwindowsmetrics.py +101 -9
  75. cribl_control_plane/models/inputwineventlogs.py +52 -1
  76. cribl_control_plane/models/inputwiz.py +38 -1
  77. cribl_control_plane/models/inputwizwebhook.py +58 -17
  78. cribl_control_plane/models/inputzscalerhec.py +66 -16
  79. cribl_control_plane/models/listconfiggroupbyproductop.py +11 -0
  80. cribl_control_plane/models/masterworkerentry.py +11 -1
  81. cribl_control_plane/models/nodeupgradestatus.py +38 -0
  82. cribl_control_plane/models/output.py +21 -21
  83. cribl_control_plane/models/outputazureblob.py +90 -1
  84. cribl_control_plane/models/outputazuredataexplorer.py +430 -93
  85. cribl_control_plane/models/outputazureeventhub.py +267 -22
  86. cribl_control_plane/models/outputazurelogs.py +105 -22
  87. cribl_control_plane/models/outputchronicle.py +105 -22
  88. cribl_control_plane/models/outputclickhouse.py +141 -22
  89. cribl_control_plane/models/outputcloudwatch.py +96 -22
  90. cribl_control_plane/models/outputconfluentcloud.py +290 -23
  91. cribl_control_plane/models/outputcriblhttp.py +123 -22
  92. cribl_control_plane/models/outputcribllake.py +76 -1
  93. cribl_control_plane/models/outputcribltcp.py +123 -22
  94. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +117 -23
  95. cribl_control_plane/models/outputdatabricks.py +72 -1
  96. cribl_control_plane/models/outputdatadog.py +132 -22
  97. cribl_control_plane/models/outputdataset.py +123 -22
  98. cribl_control_plane/models/outputdiskspool.py +11 -1
  99. cribl_control_plane/models/outputdls3.py +117 -1
  100. cribl_control_plane/models/outputdynatracehttp.py +141 -22
  101. cribl_control_plane/models/outputdynatraceotlp.py +141 -22
  102. cribl_control_plane/models/outputelastic.py +148 -22
  103. cribl_control_plane/models/outputelasticcloud.py +130 -22
  104. cribl_control_plane/models/outputexabeam.py +47 -1
  105. cribl_control_plane/models/outputfilesystem.py +72 -1
  106. cribl_control_plane/models/outputgooglechronicle.py +148 -23
  107. cribl_control_plane/models/outputgooglecloudlogging.py +115 -23
  108. cribl_control_plane/models/outputgooglecloudstorage.py +108 -1
  109. cribl_control_plane/models/outputgooglepubsub.py +96 -22
  110. cribl_control_plane/models/outputgrafanacloud.py +244 -43
  111. cribl_control_plane/models/outputgraphite.py +96 -22
  112. cribl_control_plane/models/outputhoneycomb.py +105 -22
  113. cribl_control_plane/models/outputhumiohec.py +114 -22
  114. cribl_control_plane/models/outputinfluxdb.py +114 -22
  115. cribl_control_plane/models/outputkafka.py +281 -20
  116. cribl_control_plane/models/outputkinesis.py +121 -22
  117. cribl_control_plane/models/outputloki.py +112 -20
  118. cribl_control_plane/models/outputminio.py +117 -1
  119. cribl_control_plane/models/outputmsk.py +173 -20
  120. cribl_control_plane/models/outputnewrelic.py +123 -22
  121. cribl_control_plane/models/outputnewrelicevents.py +115 -23
  122. cribl_control_plane/models/outputopentelemetry.py +159 -22
  123. cribl_control_plane/models/outputprometheus.py +105 -22
  124. cribl_control_plane/models/outputring.py +29 -1
  125. cribl_control_plane/models/outputs3.py +117 -1
  126. cribl_control_plane/models/outputsecuritylake.py +85 -1
  127. cribl_control_plane/models/outputsentinel.py +123 -22
  128. cribl_control_plane/models/outputsentineloneaisiem.py +124 -23
  129. cribl_control_plane/models/outputservicenow.py +150 -22
  130. cribl_control_plane/models/outputsignalfx.py +105 -22
  131. cribl_control_plane/models/outputsns.py +103 -20
  132. cribl_control_plane/models/outputsplunk.py +141 -22
  133. cribl_control_plane/models/outputsplunkhec.py +198 -22
  134. cribl_control_plane/models/outputsplunklb.py +170 -22
  135. cribl_control_plane/models/outputsqs.py +112 -20
  136. cribl_control_plane/models/outputstatsd.py +96 -22
  137. cribl_control_plane/models/outputstatsdext.py +96 -22
  138. cribl_control_plane/models/outputsumologic.py +105 -22
  139. cribl_control_plane/models/outputsyslog.py +238 -99
  140. cribl_control_plane/models/outputtcpjson.py +132 -22
  141. cribl_control_plane/models/outputwavefront.py +105 -22
  142. cribl_control_plane/models/outputwebhook.py +141 -22
  143. cribl_control_plane/models/outputxsiam.py +103 -20
  144. cribl_control_plane/models/resourcepolicy.py +11 -0
  145. cribl_control_plane/models/runnablejobcollection.py +68 -9
  146. cribl_control_plane/models/runnablejobexecutor.py +32 -9
  147. cribl_control_plane/models/runnablejobscheduledsearch.py +23 -9
  148. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +11 -0
  149. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +11 -0
  150. {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b5.dist-info}/METADATA +1 -1
  151. {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b5.dist-info}/RECORD +152 -152
  152. {cribl_control_plane-0.3.0b3.dist-info → cribl_control_plane-0.3.0b5.dist-info}/WHEEL +0 -0
@@ -6,11 +6,12 @@ from .lakedatasetsearchconfig import (
6
6
  LakeDatasetSearchConfig,
7
7
  LakeDatasetSearchConfigTypedDict,
8
8
  )
9
- from cribl_control_plane import utils
9
+ from cribl_control_plane import models, utils
10
10
  from cribl_control_plane.types import BaseModel
11
11
  from cribl_control_plane.utils import validate_open_enum
12
12
  from enum import Enum
13
13
  import pydantic
14
+ from pydantic import field_serializer
14
15
  from pydantic.functional_validators import PlainValidator
15
16
  from typing import List, Optional
16
17
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -78,3 +79,12 @@ class CriblLakeDataset(BaseModel):
78
79
  ] = None
79
80
 
80
81
  view_name: Annotated[Optional[str], pydantic.Field(alias="viewName")] = None
82
+
83
+ @field_serializer("format_")
84
+ def serialize_format_(self, value):
85
+ if isinstance(value, str):
86
+ try:
87
+ return models.CriblLakeDatasetFormat(value)
88
+ except ValueError:
89
+ return value
90
+ return value
@@ -6,11 +6,12 @@ from .lakedatasetsearchconfig import (
6
6
  LakeDatasetSearchConfig,
7
7
  LakeDatasetSearchConfigTypedDict,
8
8
  )
9
- from cribl_control_plane import utils
9
+ from cribl_control_plane import models, utils
10
10
  from cribl_control_plane.types import BaseModel
11
11
  from cribl_control_plane.utils import validate_open_enum
12
12
  from enum import Enum
13
13
  import pydantic
14
+ from pydantic import field_serializer
14
15
  from pydantic.functional_validators import PlainValidator
15
16
  from typing import List, Optional
16
17
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -79,3 +80,12 @@ class CriblLakeDatasetUpdate(BaseModel):
79
80
  ] = None
80
81
 
81
82
  view_name: Annotated[Optional[str], pydantic.Field(alias="viewName")] = None
83
+
84
+ @field_serializer("format_")
85
+ def serialize_format_(self, value):
86
+ if isinstance(value, str):
87
+ try:
88
+ return models.CriblLakeDatasetUpdateFormat(value)
89
+ except ValueError:
90
+ return value
91
+ return value
@@ -5,11 +5,12 @@ from .datasetmetadataruninfo import (
5
5
  DatasetMetadataRunInfo,
6
6
  DatasetMetadataRunInfoTypedDict,
7
7
  )
8
- from cribl_control_plane import utils
8
+ from cribl_control_plane import models, utils
9
9
  from cribl_control_plane.types import BaseModel
10
10
  from cribl_control_plane.utils import validate_open_enum
11
11
  from enum import Enum
12
12
  import pydantic
13
+ from pydantic import field_serializer
13
14
  from pydantic.functional_validators import PlainValidator
14
15
  from typing import List, Optional
15
16
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -43,3 +44,12 @@ class DatasetMetadata(BaseModel):
43
44
  latest_run_info: Annotated[
44
45
  Optional[DatasetMetadataRunInfo], pydantic.Field(alias="latestRunInfo")
45
46
  ] = None
47
+
48
+ @field_serializer("scan_mode")
49
+ def serialize_scan_mode(self, value):
50
+ if isinstance(value, str):
51
+ try:
52
+ return models.ScanMode(value)
53
+ except ValueError:
54
+ return value
55
+ return value
@@ -3,12 +3,14 @@
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,
9
10
  PathParamMetadata,
10
11
  validate_open_enum,
11
12
  )
13
+ from pydantic import field_serializer
12
14
  from pydantic.functional_validators import PlainValidator
13
15
  from typing import List, Optional
14
16
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -33,6 +35,15 @@ class DeleteConfigGroupByProductAndIDRequest(BaseModel):
33
35
  ]
34
36
  r"""The <code>id</code> of the Worker Group or Edge Fleet to delete."""
35
37
 
38
+ @field_serializer("product")
39
+ def serialize_product(self, value):
40
+ if isinstance(value, str):
41
+ try:
42
+ return models.ProductsCore(value)
43
+ except ValueError:
44
+ return value
45
+ return value
46
+
36
47
 
37
48
  class DeleteConfigGroupByProductAndIDResponseTypedDict(TypedDict):
38
49
  r"""a list of ConfigGroup objects"""
@@ -4,6 +4,7 @@ from __future__ import annotations
4
4
  from .productscore import ProductsCore
5
5
  from .rbacresource import RbacResource
6
6
  from .useraccesscontrollist import UserAccessControlList, UserAccessControlListTypedDict
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
  QueryParamMetadata,
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,24 @@ class GetConfigGroupACLByProductAndIDRequest(BaseModel):
43
45
  ] = None
44
46
  r"""Filter for limiting the response to ACL entries for the specified RBAC resource type."""
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
+
57
+ @field_serializer("type")
58
+ def serialize_type(self, value):
59
+ if isinstance(value, str):
60
+ try:
61
+ return models.RbacResource(value)
62
+ except ValueError:
63
+ return value
64
+ return value
65
+
46
66
 
47
67
  class GetConfigGroupACLByProductAndIDResponseTypedDict(TypedDict):
48
68
  r"""a list of UserAccessControlList objects"""
@@ -4,6 +4,7 @@ from __future__ import annotations
4
4
  from .productscore import ProductsCore
5
5
  from .rbacresource import RbacResource
6
6
  from .teamaccesscontrollist import TeamAccessControlList, TeamAccessControlListTypedDict
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
  QueryParamMetadata,
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,24 @@ class GetConfigGroupACLTeamsByProductAndIDRequest(BaseModel):
43
45
  ] = None
44
46
  r"""Filter for limiting the response to ACL entries for the specified RBAC resource type."""
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
+
57
+ @field_serializer("type")
58
+ def serialize_type(self, value):
59
+ if isinstance(value, str):
60
+ try:
61
+ return models.RbacResource(value)
62
+ except ValueError:
63
+ return value
64
+ return value
65
+
46
66
 
47
67
  class GetConfigGroupACLTeamsByProductAndIDResponseTypedDict(TypedDict):
48
68
  r"""a list of TeamAccessControlList objects"""
@@ -3,6 +3,7 @@
3
3
  from __future__ import annotations
4
4
  from .configgroup import ConfigGroup, ConfigGroupTypedDict
5
5
  from .productscore import ProductsCore
6
+ from cribl_control_plane import models
6
7
  from cribl_control_plane.types import BaseModel
7
8
  from cribl_control_plane.utils import (
8
9
  FieldMetadata,
@@ -10,6 +11,7 @@ from cribl_control_plane.utils import (
10
11
  QueryParamMetadata,
11
12
  validate_open_enum,
12
13
  )
14
+ from pydantic import field_serializer
13
15
  from pydantic.functional_validators import PlainValidator
14
16
  from typing import List, Optional
15
17
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -42,6 +44,15 @@ class GetConfigGroupByProductAndIDRequest(BaseModel):
42
44
  ] = None
43
45
  r"""Comma-separated list of additional properties to include in the response. Available values are <code>git.commit</code>, <code>git.localChanges</code>, and <code>git.log</code>."""
44
46
 
47
+ @field_serializer("product")
48
+ def serialize_product(self, value):
49
+ if isinstance(value, str):
50
+ try:
51
+ return models.ProductsCore(value)
52
+ except ValueError:
53
+ return value
54
+ return value
55
+
45
56
 
46
57
  class GetConfigGroupByProductAndIDResponseTypedDict(TypedDict):
47
58
  r"""a list of ConfigGroup objects"""
@@ -2,12 +2,14 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from .productscore import ProductsCore
5
+ from cribl_control_plane import models
5
6
  from cribl_control_plane.types import BaseModel
6
7
  from cribl_control_plane.utils import (
7
8
  FieldMetadata,
8
9
  PathParamMetadata,
9
10
  validate_open_enum,
10
11
  )
12
+ from pydantic import field_serializer
11
13
  from pydantic.functional_validators import PlainValidator
12
14
  from typing import List, Optional
13
15
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -32,6 +34,15 @@ class GetConfigGroupConfigVersionByProductAndIDRequest(BaseModel):
32
34
  ]
33
35
  r"""The <code>id</code> of the Worker Group or Edge Fleet to get the configuration version for."""
34
36
 
37
+ @field_serializer("product")
38
+ def serialize_product(self, value):
39
+ if isinstance(value, str):
40
+ try:
41
+ return models.ProductsCore(value)
42
+ except ValueError:
43
+ return value
44
+ return value
45
+
35
46
 
36
47
  class GetConfigGroupConfigVersionByProductAndIDResponseTypedDict(TypedDict):
37
48
  r"""a list of string objects"""
@@ -3,12 +3,14 @@
3
3
  from __future__ import annotations
4
4
  from .distributedsummary import DistributedSummary, DistributedSummaryTypedDict
5
5
  from .workertypes import WorkerTypes
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,
9
10
  QueryParamMetadata,
10
11
  validate_open_enum,
11
12
  )
13
+ from pydantic import field_serializer
12
14
  from pydantic.functional_validators import PlainValidator
13
15
  from typing import List, Optional
14
16
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -26,6 +28,15 @@ class GetSummaryRequest(BaseModel):
26
28
  ] = None
27
29
  r"""Filter for limiting the response by Cribl product: Cribl Stream (<code>worker</code>) or Cribl Edge (<code>managed-edge</code>)."""
28
30
 
31
+ @field_serializer("mode")
32
+ def serialize_mode(self, value):
33
+ if isinstance(value, str):
34
+ try:
35
+ return models.WorkerTypes(value)
36
+ except ValueError:
37
+ return value
38
+ return value
39
+
29
40
 
30
41
  class GetSummaryResponseTypedDict(TypedDict):
31
42
  r"""a list of DistributedSummary objects"""
@@ -4,11 +4,12 @@ from __future__ import annotations
4
4
  from .commit import Commit, CommitTypedDict
5
5
  from .configgroupcloud import ConfigGroupCloud, ConfigGroupCloudTypedDict
6
6
  from .configgrouplookups import ConfigGroupLookups, ConfigGroupLookupsTypedDict
7
- from cribl_control_plane import utils
7
+ from cribl_control_plane import models, utils
8
8
  from cribl_control_plane.types import BaseModel
9
9
  from cribl_control_plane.utils import validate_open_enum
10
10
  from enum import Enum
11
11
  import pydantic
12
+ from pydantic import field_serializer
12
13
  from pydantic.functional_validators import PlainValidator
13
14
  from typing import List, Optional
14
15
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -150,3 +151,21 @@ class GroupCreateRequest(BaseModel):
150
151
  worker_remote_access: Annotated[
151
152
  Optional[bool], pydantic.Field(alias="workerRemoteAccess")
152
153
  ] = None
154
+
155
+ @field_serializer("estimated_ingest_rate")
156
+ def serialize_estimated_ingest_rate(self, value):
157
+ if isinstance(value, str):
158
+ try:
159
+ return models.GroupCreateRequestEstimatedIngestRate(value)
160
+ except ValueError:
161
+ return value
162
+ return value
163
+
164
+ @field_serializer("type")
165
+ def serialize_type(self, value):
166
+ if isinstance(value, str):
167
+ try:
168
+ return models.GroupCreateRequestType(value)
169
+ except ValueError:
170
+ return value
171
+ return value
@@ -3,11 +3,12 @@
3
3
  from __future__ import annotations
4
4
  from .hbleaderinfo import HBLeaderInfo, HBLeaderInfoTypedDict
5
5
  from .lookupversions import LookupVersions, LookupVersionsTypedDict
6
- from cribl_control_plane import utils
6
+ from cribl_control_plane import models, utils
7
7
  from cribl_control_plane.types import BaseModel
8
8
  from cribl_control_plane.utils import validate_open_enum
9
9
  from enum import Enum
10
10
  import pydantic
11
+ from pydantic import field_serializer
11
12
  from pydantic.functional_validators import PlainValidator
12
13
  from typing import List, Optional
13
14
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -104,3 +105,12 @@ class HBCriblInfo(BaseModel):
104
105
  )
105
106
 
106
107
  version: Optional[str] = None
108
+
109
+ @field_serializer("dist_mode")
110
+ def serialize_dist_mode(self, value):
111
+ if isinstance(value, str):
112
+ try:
113
+ return models.DistMode(value)
114
+ except ValueError:
115
+ return value
116
+ 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 Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -34,3 +35,21 @@ class HealthServerStatus(BaseModel):
34
35
  status: Annotated[Status, PlainValidator(validate_open_enum(False))]
35
36
 
36
37
  role: Annotated[Optional[Role], PlainValidator(validate_open_enum(False))] = None
38
+
39
+ @field_serializer("role")
40
+ def serialize_role(self, value):
41
+ if isinstance(value, str):
42
+ try:
43
+ return models.Role(value)
44
+ except ValueError:
45
+ return value
46
+ return value
47
+
48
+ @field_serializer("status")
49
+ def serialize_status(self, value):
50
+ if isinstance(value, str):
51
+ try:
52
+ return models.Status(value)
53
+ except ValueError:
54
+ return value
55
+ return value
@@ -75,59 +75,59 @@ from typing_extensions import Annotated, TypeAliasType
75
75
  InputTypedDict = TypeAliasType(
76
76
  "InputTypedDict",
77
77
  Union[
78
- InputDatagenTypedDict,
79
- InputKubeEventsTypedDict,
80
78
  InputCriblTypedDict,
79
+ InputKubeEventsTypedDict,
80
+ InputDatagenTypedDict,
81
81
  InputCriblmetricsTypedDict,
82
82
  InputKubeMetricsTypedDict,
83
- InputCollectionTypedDict,
84
83
  InputSystemStateTypedDict,
84
+ InputCollectionTypedDict,
85
85
  InputModelDrivenTelemetryTypedDict,
86
86
  InputSystemMetricsTypedDict,
87
87
  InputWindowsMetricsTypedDict,
88
88
  InputJournalFilesTypedDict,
89
- InputWinEventLogsTypedDict,
90
89
  InputRawUDPTypedDict,
91
- InputExecTypedDict,
92
90
  InputKubeLogsTypedDict,
93
- InputMetricsTypedDict,
91
+ InputExecTypedDict,
94
92
  InputSnmpTypedDict,
93
+ InputMetricsTypedDict,
94
+ InputWinEventLogsTypedDict,
95
95
  InputCriblTCPTypedDict,
96
96
  InputNetflowTypedDict,
97
97
  InputTcpjsonTypedDict,
98
98
  InputGooglePubsubTypedDict,
99
99
  InputOffice365ServiceTypedDict,
100
100
  InputWizTypedDict,
101
- InputTCPTypedDict,
102
101
  InputFirehoseTypedDict,
103
102
  InputCriblHTTPTypedDict,
104
103
  InputDatadogAgentTypedDict,
105
104
  InputOffice365MgmtTypedDict,
106
- InputFileTypedDict,
105
+ InputTCPTypedDict,
107
106
  InputSplunkTypedDict,
108
- InputWefTypedDict,
107
+ InputFileTypedDict,
109
108
  InputAppscopeTypedDict,
109
+ InputWefTypedDict,
110
110
  InputHTTPRawTypedDict,
111
111
  InputWizWebhookTypedDict,
112
- InputHTTPTypedDict,
113
112
  InputCriblLakeHTTPTypedDict,
114
- InputAzureBlobTypedDict,
115
- InputSqsTypedDict,
113
+ InputHTTPTypedDict,
116
114
  InputZscalerHecTypedDict,
115
+ InputSqsTypedDict,
116
+ InputAzureBlobTypedDict,
117
117
  InputKinesisTypedDict,
118
118
  InputConfluentCloudTypedDict,
119
119
  InputEventhubTypedDict,
120
120
  InputKafkaTypedDict,
121
121
  InputElasticTypedDict,
122
- InputOffice365MsgTraceTypedDict,
123
122
  InputSplunkHecTypedDict,
123
+ InputOffice365MsgTraceTypedDict,
124
124
  InputLokiTypedDict,
125
125
  InputPrometheusRwTypedDict,
126
- InputPrometheusTypedDict,
127
126
  InputCrowdstrikeTypedDict,
128
- InputEdgePrometheusTypedDict,
127
+ InputPrometheusTypedDict,
129
128
  InputOpenTelemetryTypedDict,
130
129
  InputS3TypedDict,
130
+ InputEdgePrometheusTypedDict,
131
131
  InputSecurityLakeTypedDict,
132
132
  InputMskTypedDict,
133
133
  InputS3InventoryTypedDict,
@@ -1,13 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import utils
4
+ from cribl_control_plane import models, utils
5
5
  from cribl_control_plane.types import BaseModel
6
6
  from cribl_control_plane.utils import validate_open_enum
7
7
  from enum import Enum
8
8
  import pydantic
9
+ from pydantic import field_serializer
9
10
  from pydantic.functional_validators import PlainValidator
10
- from typing import Any, List, Optional
11
+ from typing import List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
12
13
 
13
14
 
@@ -106,6 +107,24 @@ class InputAppscopePq(BaseModel):
106
107
  Optional[InputAppscopePqControls], pydantic.Field(alias="pqControls")
107
108
  ] = None
108
109
 
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputAppscopeMode(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputAppscopeCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputAppscopeMetadatumTypedDict(TypedDict):
111
130
  name: str
@@ -197,6 +216,15 @@ class InputAppscopePersistence(BaseModel):
197
216
  )
198
217
  r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/appscope"""
199
218
 
219
+ @field_serializer("compress")
220
+ def serialize_compress(self, value):
221
+ if isinstance(value, str):
222
+ try:
223
+ return models.InputAppscopeDataCompressionFormat(value)
224
+ except ValueError:
225
+ return value
226
+ return value
227
+
200
228
 
201
229
  class InputAppscopeAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
202
230
  r"""Select Manual to enter an auth token directly, or select Secret to use a text secret to authenticate"""
@@ -221,6 +249,12 @@ class InputAppscopeMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
221
249
 
222
250
  class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
223
251
  disabled: NotRequired[bool]
252
+ request_cert: NotRequired[bool]
253
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
254
+ reject_unauthorized: NotRequired[bool]
255
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
256
+ common_name_regex: NotRequired[str]
257
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
224
258
  certificate_name: NotRequired[str]
225
259
  r"""The name of the predefined certificate"""
226
260
  priv_key_path: NotRequired[str]
@@ -231,10 +265,6 @@ class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
231
265
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
232
266
  ca_path: NotRequired[str]
233
267
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
234
- request_cert: NotRequired[bool]
235
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
236
- reject_unauthorized: NotRequired[Any]
237
- common_name_regex: NotRequired[Any]
238
268
  min_version: NotRequired[InputAppscopeMinimumTLSVersion]
239
269
  max_version: NotRequired[InputAppscopeMaximumTLSVersion]
240
270
 
@@ -242,6 +272,19 @@ class InputAppscopeTLSSettingsServerSideTypedDict(TypedDict):
242
272
  class InputAppscopeTLSSettingsServerSide(BaseModel):
243
273
  disabled: Optional[bool] = True
244
274
 
275
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
276
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
277
+
278
+ reject_unauthorized: Annotated[
279
+ Optional[bool], pydantic.Field(alias="rejectUnauthorized")
280
+ ] = True
281
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
282
+
283
+ common_name_regex: Annotated[
284
+ Optional[str], pydantic.Field(alias="commonNameRegex")
285
+ ] = "/.*/"
286
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
287
+
245
288
  certificate_name: Annotated[
246
289
  Optional[str], pydantic.Field(alias="certificateName")
247
290
  ] = None
@@ -259,17 +302,6 @@ class InputAppscopeTLSSettingsServerSide(BaseModel):
259
302
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
260
303
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
261
304
 
262
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
263
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
264
-
265
- reject_unauthorized: Annotated[
266
- Optional[Any], pydantic.Field(alias="rejectUnauthorized")
267
- ] = None
268
-
269
- common_name_regex: Annotated[
270
- Optional[Any], pydantic.Field(alias="commonNameRegex")
271
- ] = None
272
-
273
305
  min_version: Annotated[
274
306
  Annotated[
275
307
  Optional[InputAppscopeMinimumTLSVersion],
@@ -286,6 +318,24 @@ class InputAppscopeTLSSettingsServerSide(BaseModel):
286
318
  pydantic.Field(alias="maxVersion"),
287
319
  ] = None
288
320
 
321
+ @field_serializer("min_version")
322
+ def serialize_min_version(self, value):
323
+ if isinstance(value, str):
324
+ try:
325
+ return models.InputAppscopeMinimumTLSVersion(value)
326
+ except ValueError:
327
+ return value
328
+ return value
329
+
330
+ @field_serializer("max_version")
331
+ def serialize_max_version(self, value):
332
+ if isinstance(value, str):
333
+ try:
334
+ return models.InputAppscopeMaximumTLSVersion(value)
335
+ except ValueError:
336
+ return value
337
+ return value
338
+
289
339
 
290
340
  class InputAppscopeTypedDict(TypedDict):
291
341
  type: InputAppscopeType
@@ -463,3 +513,12 @@ class InputAppscope(BaseModel):
463
513
 
464
514
  text_secret: Annotated[Optional[str], pydantic.Field(alias="textSecret")] = None
465
515
  r"""Select or create a stored text secret"""
516
+
517
+ @field_serializer("auth_type")
518
+ def serialize_auth_type(self, value):
519
+ if isinstance(value, str):
520
+ try:
521
+ return models.InputAppscopeAuthenticationMethod(value)
522
+ except ValueError:
523
+ return value
524
+ 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 List, Optional
11
12
  from typing_extensions import Annotated, NotRequired, TypedDict
@@ -106,6 +107,24 @@ class InputAzureBlobPq(BaseModel):
106
107
  Optional[InputAzureBlobPqControls], pydantic.Field(alias="pqControls")
107
108
  ] = None
108
109
 
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputAzureBlobMode(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputAzureBlobCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
109
128
 
110
129
  class InputAzureBlobMetadatumTypedDict(TypedDict):
111
130
  name: str
@@ -323,3 +342,12 @@ class InputAzureBlob(BaseModel):
323
342
  r"""Select or create a stored text secret"""
324
343
 
325
344
  certificate: Optional[InputAzureBlobCertificate] = None
345
+
346
+ @field_serializer("auth_type")
347
+ def serialize_auth_type(self, value):
348
+ if isinstance(value, str):
349
+ try:
350
+ return models.InputAzureBlobAuthenticationMethod(value)
351
+ except ValueError:
352
+ return value
353
+ return value