cribl-control-plane 0.4.0b23__py3-none-any.whl → 0.5.0b3__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.
Files changed (229) hide show
  1. cribl_control_plane/_version.py +3 -3
  2. cribl_control_plane/collectors_sdk.py +993 -0
  3. cribl_control_plane/models/__init__.py +2161 -734
  4. cribl_control_plane/models/configgroup.py +3 -0
  5. cribl_control_plane/models/countedsavedjob.py +20 -0
  6. cribl_control_plane/models/createsavedjobop.py +30 -0
  7. cribl_control_plane/models/deletesavedjobbyidop.py +42 -0
  8. cribl_control_plane/models/functionaggregatemetrics.py +7 -144
  9. cribl_control_plane/models/functionaggregation.py +7 -110
  10. cribl_control_plane/models/functionautotimestamp.py +7 -111
  11. cribl_control_plane/models/functioncef.py +6 -51
  12. cribl_control_plane/models/functionchain.py +6 -12
  13. cribl_control_plane/models/functionclone.py +7 -13
  14. cribl_control_plane/models/functioncode.py +8 -35
  15. cribl_control_plane/models/functioncomment.py +6 -12
  16. cribl_control_plane/models/functionconfschemaaggregatemetrics.py +153 -0
  17. cribl_control_plane/models/functionconfschemaaggregation.py +114 -0
  18. cribl_control_plane/models/functionconfschemaautotimestamp.py +116 -0
  19. cribl_control_plane/models/functionconfschemacef.py +83 -0
  20. cribl_control_plane/models/functionconfschemachain.py +16 -0
  21. cribl_control_plane/models/functionconfschemaclone.py +16 -0
  22. cribl_control_plane/models/functionconfschemacode.py +38 -0
  23. cribl_control_plane/models/functionconfschemacomment.py +16 -0
  24. cribl_control_plane/models/functionconfschemadistinct.py +41 -0
  25. cribl_control_plane/models/functionconfschemadnslookup.py +193 -0
  26. cribl_control_plane/models/functionconfschemadrop.py +13 -0
  27. cribl_control_plane/models/functionconfschemadropdimensions.py +31 -0
  28. cribl_control_plane/models/functionconfschemadynamicsampling.py +67 -0
  29. cribl_control_plane/models/functionconfschemaeval.py +44 -0
  30. cribl_control_plane/models/functionconfschemaeventbreaker.py +51 -0
  31. cribl_control_plane/models/functionconfschemaeventstats.py +34 -0
  32. cribl_control_plane/models/functionconfschemaexternaldata.py +13 -0
  33. cribl_control_plane/models/functionconfschemaflatten.py +31 -0
  34. cribl_control_plane/models/functionconfschemafoldkeys.py +31 -0
  35. cribl_control_plane/models/functionconfschemagenstats.py +14 -0
  36. cribl_control_plane/models/functionconfschemageoip.py +66 -0
  37. cribl_control_plane/models/functionconfschemagrok.py +38 -0
  38. cribl_control_plane/models/functionconfschemahandlebar.py +56 -0
  39. cribl_control_plane/models/functionconfschemajoin.py +55 -0
  40. cribl_control_plane/models/functionconfschemajsonunroll.py +21 -0
  41. cribl_control_plane/models/functionconfschemalakeexport.py +44 -0
  42. cribl_control_plane/models/functionconfschemalimit.py +16 -0
  43. cribl_control_plane/models/functionconfschemalocalsearchdatatypeparser.py +17 -0
  44. cribl_control_plane/models/functionconfschemalocalsearchrulesetrunner.py +40 -0
  45. cribl_control_plane/models/functionconfschemalookup.py +92 -0
  46. cribl_control_plane/models/functionconfschemamask.py +63 -0
  47. cribl_control_plane/models/functionconfschemamvexpand.py +76 -0
  48. cribl_control_plane/models/functionconfschemamvpull.py +45 -0
  49. cribl_control_plane/models/functionconfschemanotificationpolicies.py +129 -0
  50. cribl_control_plane/models/functionconfschemanotifications.py +26 -0
  51. cribl_control_plane/models/functionconfschemanotify.py +149 -0
  52. cribl_control_plane/models/functionconfschemanumerify.py +63 -0
  53. cribl_control_plane/models/functionconfschemaotlplogs.py +24 -0
  54. cribl_control_plane/models/functionconfschemaotlpmetrics.py +61 -0
  55. cribl_control_plane/models/functionconfschemaotlptraces.py +54 -0
  56. cribl_control_plane/models/functionconfschemapack.py +24 -0
  57. cribl_control_plane/models/functionconfschemapivot.py +31 -0
  58. cribl_control_plane/models/functionconfschemapublishmetrics.py +98 -0
  59. cribl_control_plane/models/functionconfschemaredis.py +121 -0
  60. cribl_control_plane/models/functionconfschemaregexextract.py +55 -0
  61. cribl_control_plane/models/functionconfschemaregexfilter.py +38 -0
  62. cribl_control_plane/models/functionconfschemarename.py +49 -0
  63. cribl_control_plane/models/functionconfschemarollupmetrics.py +57 -0
  64. cribl_control_plane/models/functionconfschemasampling.py +32 -0
  65. cribl_control_plane/models/functionconfschemasend.py +84 -0
  66. cribl_control_plane/models/functionconfschemasensitivedatascanner.py +75 -0
  67. cribl_control_plane/models/functionconfschemaserde.py +105 -0
  68. cribl_control_plane/models/functionconfschemaserialize.py +78 -0
  69. cribl_control_plane/models/functionconfschemasidlookup.py +34 -0
  70. cribl_control_plane/models/functionconfschemasnmptrapserialize.py +92 -0
  71. cribl_control_plane/models/functionconfschemasort.py +41 -0
  72. cribl_control_plane/models/functionconfschemastore.py +75 -0
  73. cribl_control_plane/models/functionconfschemasuppress.py +57 -0
  74. cribl_control_plane/models/functionconfschematee.py +32 -0
  75. cribl_control_plane/models/functionconfschematrimtimestamp.py +16 -0
  76. cribl_control_plane/models/functionconfschemaunion.py +22 -0
  77. cribl_control_plane/models/functionconfschemaunroll.py +22 -0
  78. cribl_control_plane/models/functionconfschemawindow.py +40 -0
  79. cribl_control_plane/models/functionconfschemaxmlunroll.py +34 -0
  80. cribl_control_plane/models/functiondistinct.py +7 -37
  81. cribl_control_plane/models/functiondnslookup.py +7 -188
  82. cribl_control_plane/models/functiondrop.py +8 -12
  83. cribl_control_plane/models/functiondropdimensions.py +7 -25
  84. cribl_control_plane/models/functiondynamicsampling.py +6 -58
  85. cribl_control_plane/models/functioneval.py +9 -43
  86. cribl_control_plane/models/functioneventbreaker.py +6 -40
  87. cribl_control_plane/models/functioneventstats.py +7 -30
  88. cribl_control_plane/models/functionexternaldata.py +6 -10
  89. cribl_control_plane/models/functionflatten.py +7 -28
  90. cribl_control_plane/models/functionfoldkeys.py +6 -26
  91. cribl_control_plane/models/functiongenstats.py +7 -11
  92. cribl_control_plane/models/functiongeoip.py +7 -58
  93. cribl_control_plane/models/functiongrok.py +9 -35
  94. cribl_control_plane/models/functionhandlebar.py +6 -49
  95. cribl_control_plane/models/functionjoin.py +9 -52
  96. cribl_control_plane/models/functionjsonunroll.py +6 -17
  97. cribl_control_plane/models/functionlakeexport.py +6 -39
  98. cribl_control_plane/models/functionlimit.py +6 -12
  99. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +6 -12
  100. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +7 -34
  101. cribl_control_plane/models/functionlookup.py +7 -86
  102. cribl_control_plane/models/functionmask.py +9 -61
  103. cribl_control_plane/models/functionmvexpand.py +7 -66
  104. cribl_control_plane/models/functionmvpull.py +6 -36
  105. cribl_control_plane/models/functionnotificationpolicies.py +8 -125
  106. cribl_control_plane/models/functionnotifications.py +6 -22
  107. cribl_control_plane/models/functionnotify.py +6 -133
  108. cribl_control_plane/models/functionnumerify.py +7 -57
  109. cribl_control_plane/models/functionotlplogs.py +6 -19
  110. cribl_control_plane/models/functionotlpmetrics.py +7 -56
  111. cribl_control_plane/models/functionotlptraces.py +6 -48
  112. cribl_control_plane/models/functionpack.py +9 -20
  113. cribl_control_plane/models/functionpivot.py +7 -23
  114. cribl_control_plane/models/functionpublishmetrics.py +7 -91
  115. cribl_control_plane/models/functionredis.py +7 -111
  116. cribl_control_plane/models/functionregexextract.py +7 -50
  117. cribl_control_plane/models/functionregexfilter.py +7 -33
  118. cribl_control_plane/models/functionrename.py +7 -45
  119. cribl_control_plane/models/functionrollupmetrics.py +7 -52
  120. cribl_control_plane/models/functionsampling.py +7 -28
  121. cribl_control_plane/models/functionsend.py +8 -80
  122. cribl_control_plane/models/functionsensitivedatascanner.py +7 -66
  123. cribl_control_plane/models/functionserde.py +6 -98
  124. cribl_control_plane/models/functionserialize.py +7 -72
  125. cribl_control_plane/models/functionsidlookup.py +7 -31
  126. cribl_control_plane/models/functionsnmptrapserialize.py +6 -81
  127. cribl_control_plane/models/functionsort.py +8 -36
  128. cribl_control_plane/models/functionstore.py +6 -69
  129. cribl_control_plane/models/functionsuppress.py +6 -52
  130. cribl_control_plane/models/functiontee.py +6 -30
  131. cribl_control_plane/models/functiontrimtimestamp.py +6 -12
  132. cribl_control_plane/models/functionunion.py +9 -20
  133. cribl_control_plane/models/functionunroll.py +6 -17
  134. cribl_control_plane/models/functionwindow.py +7 -34
  135. cribl_control_plane/models/functionxmlunroll.py +6 -29
  136. cribl_control_plane/models/getsavedjobbyidop.py +33 -0
  137. cribl_control_plane/models/getsavedjobop.py +40 -0
  138. cribl_control_plane/models/groupcreaterequest.py +3 -0
  139. cribl_control_plane/models/heartbeatmetadata.py +42 -0
  140. cribl_control_plane/models/input.py +1 -1
  141. cribl_control_plane/models/inputedgeprometheus.py +11 -11
  142. cribl_control_plane/models/inputprometheus.py +23 -18
  143. cribl_control_plane/models/nodeprovidedinfo.py +42 -0
  144. cribl_control_plane/models/output.py +15 -9
  145. cribl_control_plane/models/outputclickhouse.py +31 -0
  146. cribl_control_plane/models/outputcriblhttp.py +7 -0
  147. cribl_control_plane/models/outputcriblsearchengine.py +655 -0
  148. cribl_control_plane/models/outputnetflow.py +16 -2
  149. cribl_control_plane/models/pipeline.py +52 -4
  150. cribl_control_plane/models/pipelinefunctionaggregatemetrics.py +195 -0
  151. cribl_control_plane/models/pipelinefunctionaggregation.py +159 -0
  152. cribl_control_plane/models/pipelinefunctionautotimestamp.py +56 -0
  153. cribl_control_plane/models/pipelinefunctioncef.py +96 -0
  154. cribl_control_plane/models/pipelinefunctionchain.py +62 -0
  155. cribl_control_plane/models/pipelinefunctionclone.py +56 -0
  156. cribl_control_plane/models/pipelinefunctioncode.py +56 -0
  157. cribl_control_plane/models/pipelinefunctioncomment.py +56 -0
  158. cribl_control_plane/models/pipelinefunctionconf.py +343 -46
  159. cribl_control_plane/models/pipelinefunctionconf_input.py +353 -0
  160. cribl_control_plane/models/pipelinefunctiondistinct.py +86 -0
  161. cribl_control_plane/models/pipelinefunctiondnslookup.py +56 -0
  162. cribl_control_plane/models/pipelinefunctiondrop.py +56 -0
  163. cribl_control_plane/models/pipelinefunctiondropdimensions.py +74 -0
  164. cribl_control_plane/models/pipelinefunctiondynamicsampling.py +111 -0
  165. cribl_control_plane/models/pipelinefunctioneval.py +56 -0
  166. cribl_control_plane/models/pipelinefunctioneventbreaker.py +95 -0
  167. cribl_control_plane/models/pipelinefunctioneventstats.py +79 -0
  168. cribl_control_plane/models/pipelinefunctionexternaldata.py +56 -0
  169. cribl_control_plane/models/pipelinefunctionflatten.py +56 -0
  170. cribl_control_plane/models/pipelinefunctionfoldkeys.py +56 -0
  171. cribl_control_plane/models/pipelinefunctiongenstats.py +56 -0
  172. cribl_control_plane/models/pipelinefunctiongeoip.py +109 -0
  173. cribl_control_plane/models/pipelinefunctiongrok.py +83 -0
  174. cribl_control_plane/models/pipelinefunctionhandlebar.py +99 -0
  175. cribl_control_plane/models/pipelinefunctionjoin.py +100 -0
  176. cribl_control_plane/models/pipelinefunctionjsonunroll.py +67 -0
  177. cribl_control_plane/models/pipelinefunctionlakeexport.py +89 -0
  178. cribl_control_plane/models/pipelinefunctionlimit.py +56 -0
  179. cribl_control_plane/models/pipelinefunctionlocalsearchdatatypeparser.py +62 -0
  180. cribl_control_plane/models/pipelinefunctionlocalsearchrulesetrunner.py +56 -0
  181. cribl_control_plane/models/pipelinefunctionlookup.py +136 -0
  182. cribl_control_plane/models/pipelinefunctionmask.py +108 -0
  183. cribl_control_plane/models/pipelinefunctionmvexpand.py +116 -0
  184. cribl_control_plane/models/pipelinefunctionmvpull.py +86 -0
  185. cribl_control_plane/models/pipelinefunctionnotificationpolicies.py +56 -0
  186. cribl_control_plane/models/pipelinefunctionnotifications.py +72 -0
  187. cribl_control_plane/models/pipelinefunctionnotify.py +189 -0
  188. cribl_control_plane/models/pipelinefunctionnumerify.py +56 -0
  189. cribl_control_plane/models/pipelinefunctionotlplogs.py +56 -0
  190. cribl_control_plane/models/pipelinefunctionotlpmetrics.py +56 -0
  191. cribl_control_plane/models/pipelinefunctionotlptraces.py +56 -0
  192. cribl_control_plane/models/pipelinefunctionpack.py +67 -0
  193. cribl_control_plane/models/pipelinefunctionpivot.py +72 -0
  194. cribl_control_plane/models/pipelinefunctionpublishmetrics.py +56 -0
  195. cribl_control_plane/models/pipelinefunctionredis.py +165 -0
  196. cribl_control_plane/models/pipelinefunctionregexextract.py +100 -0
  197. cribl_control_plane/models/pipelinefunctionregexfilter.py +56 -0
  198. cribl_control_plane/models/pipelinefunctionrename.py +56 -0
  199. cribl_control_plane/models/pipelinefunctionrollupmetrics.py +56 -0
  200. cribl_control_plane/models/pipelinefunctionsampling.py +56 -0
  201. cribl_control_plane/models/pipelinefunctionsend.py +128 -0
  202. cribl_control_plane/models/pipelinefunctionsensitivedatascanner.py +120 -0
  203. cribl_control_plane/models/pipelinefunctionserde.py +149 -0
  204. cribl_control_plane/models/pipelinefunctionserialize.py +122 -0
  205. cribl_control_plane/models/pipelinefunctionsidlookup.py +56 -0
  206. cribl_control_plane/models/pipelinefunctionsnmptrapserialize.py +56 -0
  207. cribl_control_plane/models/pipelinefunctionsort.py +84 -0
  208. cribl_control_plane/models/pipelinefunctionstore.py +120 -0
  209. cribl_control_plane/models/pipelinefunctionsuppress.py +102 -0
  210. cribl_control_plane/models/pipelinefunctiontee.py +77 -0
  211. cribl_control_plane/models/pipelinefunctiontrimtimestamp.py +56 -0
  212. cribl_control_plane/models/pipelinefunctionunion.py +67 -0
  213. cribl_control_plane/models/pipelinefunctionunroll.py +67 -0
  214. cribl_control_plane/models/pipelinefunctionwindow.py +83 -0
  215. cribl_control_plane/models/pipelinefunctionxmlunroll.py +79 -0
  216. cribl_control_plane/models/runnablejobcollection.py +11 -10
  217. cribl_control_plane/models/runnablejobexecutor.py +8 -8
  218. cribl_control_plane/models/savedjob.py +26 -0
  219. cribl_control_plane/models/savedjobcollection.py +411 -0
  220. cribl_control_plane/models/savedjobexecutor.py +301 -0
  221. cribl_control_plane/models/savedjobscheduledsearch.py +278 -0
  222. cribl_control_plane/models/updatepipelinebyidop.py +4 -3
  223. cribl_control_plane/models/updatesavedjobbyidop.py +42 -0
  224. cribl_control_plane/pipelines.py +16 -16
  225. cribl_control_plane/sdk.py +4 -0
  226. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/METADATA +10 -2
  227. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/RECORD +229 -88
  228. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/WHEEL +0 -0
  229. {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/licenses/LICENSE +0 -0
@@ -1,13 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemasend import (
5
+ FunctionConfSchemaSend,
6
+ FunctionConfSchemaSendTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
11
  from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
@@ -16,78 +16,6 @@ class FunctionSendID(str, Enum):
16
16
  SEND = "send"
17
17
 
18
18
 
19
- class FunctionSendMode(str, Enum, metaclass=utils.OpenEnumMeta):
20
- r"""In Sender mode, forwards search results directly to the destination. In Metrics mode, accumulates metrics from federated send operators, and forwards the aggregate metrics."""
21
-
22
- SENDER = "sender"
23
- METRICS = "metrics"
24
-
25
-
26
- class SendConfigurationTypedDict(TypedDict):
27
- search_id: str
28
- r"""Id of the search this function is running on."""
29
- url: NotRequired[str]
30
- r"""Full URL to send search to."""
31
- group: NotRequired[str]
32
- r"""Group within the workspace we're sending to."""
33
- workspace: NotRequired[str]
34
- r"""Workspace within the deployment to send the search results to."""
35
- send_url_template: NotRequired[str]
36
- r"""Template to build the URL to send from."""
37
- tee: NotRequired[str]
38
- r"""Tee results to search. When set to true results will be shipped instead of stats"""
39
- flush_ms: NotRequired[float]
40
- r"""How often are stats flushed in ms"""
41
- suppress_previews: NotRequired[bool]
42
- r"""Disables generation of intermediate stats. When true stats will be emitted only on end"""
43
- mode: NotRequired[FunctionSendMode]
44
- r"""In Sender mode, forwards search results directly to the destination. In Metrics mode, accumulates metrics from federated send operators, and forwards the aggregate metrics."""
45
-
46
-
47
- class SendConfiguration(BaseModel):
48
- search_id: Annotated[str, pydantic.Field(alias="searchId")]
49
- r"""Id of the search this function is running on."""
50
-
51
- url: Optional[str] = None
52
- r"""Full URL to send search to."""
53
-
54
- group: Optional[str] = "default"
55
- r"""Group within the workspace we're sending to."""
56
-
57
- workspace: Optional[str] = "main"
58
- r"""Workspace within the deployment to send the search results to."""
59
-
60
- send_url_template: Annotated[
61
- Optional[str], pydantic.Field(alias="sendUrlTemplate")
62
- ] = None
63
- r"""Template to build the URL to send from."""
64
-
65
- tee: Optional[str] = "false"
66
- r"""Tee results to search. When set to true results will be shipped instead of stats"""
67
-
68
- flush_ms: Annotated[Optional[float], pydantic.Field(alias="flushMs")] = 1000
69
- r"""How often are stats flushed in ms"""
70
-
71
- suppress_previews: Annotated[
72
- Optional[bool], pydantic.Field(alias="suppressPreviews")
73
- ] = None
74
- r"""Disables generation of intermediate stats. When true stats will be emitted only on end"""
75
-
76
- mode: Annotated[
77
- Optional[FunctionSendMode], PlainValidator(validate_open_enum(False))
78
- ] = None
79
- r"""In Sender mode, forwards search results directly to the destination. In Metrics mode, accumulates metrics from federated send operators, and forwards the aggregate metrics."""
80
-
81
- @field_serializer("mode")
82
- def serialize_mode(self, value):
83
- if isinstance(value, str):
84
- try:
85
- return models.FunctionSendMode(value)
86
- except ValueError:
87
- return value
88
- return value
89
-
90
-
91
19
  class FunctionSendTypedDict(TypedDict):
92
20
  filename: str
93
21
  group: str
@@ -102,7 +30,7 @@ class FunctionSendTypedDict(TypedDict):
102
30
  disabled: NotRequired[bool]
103
31
  handle_signals: NotRequired[bool]
104
32
  sync: NotRequired[bool]
105
- schema_: NotRequired[SendConfigurationTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaSendTypedDict]
106
34
 
107
35
 
108
36
  class FunctionSend(BaseModel):
@@ -136,6 +64,6 @@ class FunctionSend(BaseModel):
136
64
 
137
65
  sync: Optional[bool] = None
138
66
 
139
- schema_: Annotated[Optional[SendConfiguration], pydantic.Field(alias="schema")] = (
140
- None
141
- )
67
+ schema_: Annotated[
68
+ Optional[FunctionConfSchemaSend], pydantic.Field(alias="schema")
69
+ ] = None
@@ -1,10 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .functionconfschemasensitivedatascanner import (
5
+ FunctionConfSchemaSensitiveDataScanner,
6
+ FunctionConfSchemaSensitiveDataScannerTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
7
- from typing import Any, Dict, List, Optional
11
+ from typing import Any, Dict, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
10
14
 
@@ -12,69 +16,6 @@ class FunctionSensitiveDataScannerID(str, Enum):
12
16
  SENSITIVE_DATA_SCANNER = "sensitive_data_scanner"
13
17
 
14
18
 
15
- class FunctionSensitiveDataScannerRuleTypedDict(TypedDict):
16
- ruleset_id: str
17
- r"""The ID of the ruleset to use for the scan"""
18
- replace_expr: NotRequired[str]
19
- r"""A JavaScript expression or literal to replace the matching content. Capturing groups can be referenced as g1, g2, and so on, and event fields as event.<fieldName>."""
20
- disabled: NotRequired[bool]
21
-
22
-
23
- class FunctionSensitiveDataScannerRule(BaseModel):
24
- ruleset_id: Annotated[str, pydantic.Field(alias="rulesetId")]
25
- r"""The ID of the ruleset to use for the scan"""
26
-
27
- replace_expr: Annotated[Optional[str], pydantic.Field(alias="replaceExpr")] = (
28
- "'REDACTED'"
29
- )
30
- r"""A JavaScript expression or literal to replace the matching content. Capturing groups can be referenced as g1, g2, and so on, and event fields as event.<fieldName>."""
31
-
32
- disabled: Optional[bool] = False
33
-
34
-
35
- class FunctionSensitiveDataScannerFlagTypedDict(TypedDict):
36
- value: str
37
- name: NotRequired[str]
38
-
39
-
40
- class FunctionSensitiveDataScannerFlag(BaseModel):
41
- value: str
42
-
43
- name: Optional[str] = None
44
-
45
-
46
- class FunctionSensitiveDataScannerSchemaTypedDict(TypedDict):
47
- rules: List[FunctionSensitiveDataScannerRuleTypedDict]
48
- fields: NotRequired[List[str]]
49
- r"""Rulesets act on the events contained in these fields. Mitigation expressions apply to the scan results. Supports wildcards (*)."""
50
- exclude_fields: NotRequired[List[str]]
51
- r"""Fields that the mitigation expression will not be applied to. Supports wildcards (*)."""
52
- flags: NotRequired[List[FunctionSensitiveDataScannerFlagTypedDict]]
53
- r"""Fields to add when mitigation is applied to an event"""
54
- include_detected_rules: NotRequired[bool]
55
- r"""If enabled, Add matching ruleset IDs to a field called \"__detected\" """
56
-
57
-
58
- class FunctionSensitiveDataScannerSchema(BaseModel):
59
- rules: List[FunctionSensitiveDataScannerRule]
60
-
61
- fields: Optional[List[str]] = None
62
- r"""Rulesets act on the events contained in these fields. Mitigation expressions apply to the scan results. Supports wildcards (*)."""
63
-
64
- exclude_fields: Annotated[
65
- Optional[List[str]], pydantic.Field(alias="excludeFields")
66
- ] = None
67
- r"""Fields that the mitigation expression will not be applied to. Supports wildcards (*)."""
68
-
69
- flags: Optional[List[FunctionSensitiveDataScannerFlag]] = None
70
- r"""Fields to add when mitigation is applied to an event"""
71
-
72
- include_detected_rules: Annotated[
73
- Optional[bool], pydantic.Field(alias="includeDetectedRules")
74
- ] = True
75
- r"""If enabled, Add matching ruleset IDs to a field called \"__detected\" """
76
-
77
-
78
19
  class FunctionSensitiveDataScannerTypedDict(TypedDict):
79
20
  filename: str
80
21
  group: str
@@ -89,7 +30,7 @@ class FunctionSensitiveDataScannerTypedDict(TypedDict):
89
30
  disabled: NotRequired[bool]
90
31
  handle_signals: NotRequired[bool]
91
32
  sync: NotRequired[bool]
92
- schema_: NotRequired[FunctionSensitiveDataScannerSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaSensitiveDataScannerTypedDict]
93
34
 
94
35
 
95
36
  class FunctionSensitiveDataScanner(BaseModel):
@@ -124,5 +65,5 @@ class FunctionSensitiveDataScanner(BaseModel):
124
65
  sync: Optional[bool] = None
125
66
 
126
67
  schema_: Annotated[
127
- Optional[FunctionSensitiveDataScannerSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaSensitiveDataScanner], pydantic.Field(alias="schema")
128
69
  ] = None
@@ -1,13 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemaserde import (
5
+ FunctionConfSchemaSerde,
6
+ FunctionConfSchemaSerdeTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
11
  from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
@@ -16,98 +16,6 @@ class FunctionSerdeID(str, Enum):
16
16
  SERDE = "serde"
17
17
 
18
18
 
19
- class OperationMode(str, Enum, metaclass=utils.OpenEnumMeta):
20
- r"""Extract creates new fields. Reserialize extracts and filters fields, and then reserializes."""
21
-
22
- # Extract
23
- EXTRACT = "extract"
24
- # Reserialize
25
- RESERIALIZE = "reserialize"
26
-
27
-
28
- class FunctionSerdeType(str, Enum, metaclass=utils.OpenEnumMeta):
29
- r"""Parser or formatter type to use"""
30
-
31
- # CSV
32
- CSV = "csv"
33
- # Extended Log File Format
34
- ELFF = "elff"
35
- # Common Log Format
36
- CLF = "clf"
37
- # Key=Value Pairs
38
- KVP = "kvp"
39
- # JSON Object
40
- JSON = "json"
41
- # Delimited values
42
- DELIM = "delim"
43
- # Regular Expression
44
- REGEX = "regex"
45
- # Grok
46
- GROK = "grok"
47
-
48
-
49
- class FunctionSerdeSchemaTypedDict(TypedDict):
50
- mode: NotRequired[OperationMode]
51
- r"""Extract creates new fields. Reserialize extracts and filters fields, and then reserializes."""
52
- type: NotRequired[FunctionSerdeType]
53
- r"""Parser or formatter type to use"""
54
- delim_char: NotRequired[Any]
55
- quote_char: NotRequired[Any]
56
- escape_char: NotRequired[Any]
57
- null_value: NotRequired[Any]
58
- src_field: NotRequired[str]
59
- r"""Field containing text to be parsed"""
60
- dst_field: NotRequired[str]
61
- r"""Name of the field to add fields to. Extract mode only."""
62
- clean_fields: NotRequired[Any]
63
-
64
-
65
- class FunctionSerdeSchema(BaseModel):
66
- mode: Annotated[
67
- Optional[OperationMode], PlainValidator(validate_open_enum(False))
68
- ] = OperationMode.EXTRACT
69
- r"""Extract creates new fields. Reserialize extracts and filters fields, and then reserializes."""
70
-
71
- type: Annotated[
72
- Optional[FunctionSerdeType], PlainValidator(validate_open_enum(False))
73
- ] = FunctionSerdeType.CSV
74
- r"""Parser or formatter type to use"""
75
-
76
- delim_char: Annotated[Optional[Any], pydantic.Field(alias="delimChar")] = None
77
-
78
- quote_char: Annotated[Optional[Any], pydantic.Field(alias="quoteChar")] = None
79
-
80
- escape_char: Annotated[Optional[Any], pydantic.Field(alias="escapeChar")] = None
81
-
82
- null_value: Annotated[Optional[Any], pydantic.Field(alias="nullValue")] = None
83
-
84
- src_field: Annotated[Optional[str], pydantic.Field(alias="srcField")] = "_raw"
85
- r"""Field containing text to be parsed"""
86
-
87
- dst_field: Annotated[Optional[str], pydantic.Field(alias="dstField")] = None
88
- r"""Name of the field to add fields to. Extract mode only."""
89
-
90
- clean_fields: Annotated[Optional[Any], pydantic.Field(alias="cleanFields")] = None
91
-
92
- @field_serializer("mode")
93
- def serialize_mode(self, value):
94
- if isinstance(value, str):
95
- try:
96
- return models.OperationMode(value)
97
- except ValueError:
98
- return value
99
- return value
100
-
101
- @field_serializer("type")
102
- def serialize_type(self, value):
103
- if isinstance(value, str):
104
- try:
105
- return models.FunctionSerdeType(value)
106
- except ValueError:
107
- return value
108
- return value
109
-
110
-
111
19
  class FunctionSerdeTypedDict(TypedDict):
112
20
  filename: str
113
21
  group: str
@@ -122,7 +30,7 @@ class FunctionSerdeTypedDict(TypedDict):
122
30
  disabled: NotRequired[bool]
123
31
  handle_signals: NotRequired[bool]
124
32
  sync: NotRequired[bool]
125
- schema_: NotRequired[FunctionSerdeSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaSerdeTypedDict]
126
34
 
127
35
 
128
36
  class FunctionSerde(BaseModel):
@@ -157,5 +65,5 @@ class FunctionSerde(BaseModel):
157
65
  sync: Optional[bool] = None
158
66
 
159
67
  schema_: Annotated[
160
- Optional[FunctionSerdeSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaSerde], pydantic.Field(alias="schema")
161
69
  ] = None
@@ -1,14 +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 models, utils
4
+ from .functionconfschemaserialize import (
5
+ FunctionConfSchemaSerialize,
6
+ FunctionConfSchemaSerializeTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
- from typing import Any, Dict, List, Optional
11
+ from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
14
14
 
@@ -16,71 +16,6 @@ class FunctionSerializeID(str, Enum):
16
16
  SERIALIZE = "serialize"
17
17
 
18
18
 
19
- class FunctionSerializeType(str, Enum, metaclass=utils.OpenEnumMeta):
20
- r"""Data output format"""
21
-
22
- # CSV
23
- CSV = "csv"
24
- # Extended Log File Format
25
- ELFF = "elff"
26
- # Common Log Format
27
- CLF = "clf"
28
- # Key=Value Pairs
29
- KVP = "kvp"
30
- # JSON Object
31
- JSON = "json"
32
- # Delimited values
33
- DELIM = "delim"
34
-
35
-
36
- class FunctionSerializeSchemaTypedDict(TypedDict):
37
- type: NotRequired[FunctionSerializeType]
38
- r"""Data output format"""
39
- delim_char: NotRequired[Any]
40
- quote_char: NotRequired[Any]
41
- escape_char: NotRequired[Any]
42
- null_value: NotRequired[Any]
43
- fields: NotRequired[List[str]]
44
- r"""Required for CSV, ELFF, CLF, and Delimited values. All other formats support wildcard field lists. Examples: host, array*, !host *"""
45
- src_field: NotRequired[str]
46
- r"""Field containing object to serialize. Leave blank to serialize top-level event fields."""
47
- dst_field: NotRequired[str]
48
- r"""Field to serialize data to"""
49
-
50
-
51
- class FunctionSerializeSchema(BaseModel):
52
- type: Annotated[
53
- Optional[FunctionSerializeType], PlainValidator(validate_open_enum(False))
54
- ] = FunctionSerializeType.CSV
55
- r"""Data output format"""
56
-
57
- delim_char: Annotated[Optional[Any], pydantic.Field(alias="delimChar")] = None
58
-
59
- quote_char: Annotated[Optional[Any], pydantic.Field(alias="quoteChar")] = None
60
-
61
- escape_char: Annotated[Optional[Any], pydantic.Field(alias="escapeChar")] = None
62
-
63
- null_value: Annotated[Optional[Any], pydantic.Field(alias="nullValue")] = None
64
-
65
- fields: Optional[List[str]] = None
66
- r"""Required for CSV, ELFF, CLF, and Delimited values. All other formats support wildcard field lists. Examples: host, array*, !host *"""
67
-
68
- src_field: Annotated[Optional[str], pydantic.Field(alias="srcField")] = None
69
- r"""Field containing object to serialize. Leave blank to serialize top-level event fields."""
70
-
71
- dst_field: Annotated[Optional[str], pydantic.Field(alias="dstField")] = "_raw"
72
- r"""Field to serialize data to"""
73
-
74
- @field_serializer("type")
75
- def serialize_type(self, value):
76
- if isinstance(value, str):
77
- try:
78
- return models.FunctionSerializeType(value)
79
- except ValueError:
80
- return value
81
- return value
82
-
83
-
84
19
  class FunctionSerializeTypedDict(TypedDict):
85
20
  filename: str
86
21
  group: str
@@ -95,7 +30,7 @@ class FunctionSerializeTypedDict(TypedDict):
95
30
  disabled: NotRequired[bool]
96
31
  handle_signals: NotRequired[bool]
97
32
  sync: NotRequired[bool]
98
- schema_: NotRequired[FunctionSerializeSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaSerializeTypedDict]
99
34
 
100
35
 
101
36
  class FunctionSerialize(BaseModel):
@@ -130,5 +65,5 @@ class FunctionSerialize(BaseModel):
130
65
  sync: Optional[bool] = None
131
66
 
132
67
  schema_: Annotated[
133
- Optional[FunctionSerializeSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaSerialize], pydantic.Field(alias="schema")
134
69
  ] = None
@@ -1,10 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from .functionconfschemasidlookup import (
5
+ FunctionConfSchemaSidlookup,
6
+ FunctionConfSchemaSidlookupTypedDict,
7
+ )
4
8
  from cribl_control_plane.types import BaseModel
5
9
  from enum import Enum
6
10
  import pydantic
7
- from typing import Any, Dict, List, Optional
11
+ from typing import Any, Dict, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
10
14
 
@@ -12,34 +16,6 @@ class FunctionSidlookupID(str, Enum):
12
16
  SIDLOOKUP = "sidlookup"
13
17
 
14
18
 
15
- class FunctionSidlookupFieldTypedDict(TypedDict):
16
- expr: str
17
- r"""JavaScript expression to compute the value (can be constant)"""
18
- name: NotRequired[str]
19
- disabled: NotRequired[bool]
20
- r"""Set to No to disable the evaluation of an individual expression"""
21
-
22
-
23
- class FunctionSidlookupField(BaseModel):
24
- expr: str
25
- r"""JavaScript expression to compute the value (can be constant)"""
26
-
27
- name: Optional[str] = None
28
-
29
- disabled: Optional[bool] = False
30
- r"""Set to No to disable the evaluation of an individual expression"""
31
-
32
-
33
- class FunctionSidlookupSchemaTypedDict(TypedDict):
34
- fields: NotRequired[List[FunctionSidlookupFieldTypedDict]]
35
- r"""Set of expressions matched to lookup responses"""
36
-
37
-
38
- class FunctionSidlookupSchema(BaseModel):
39
- fields: Optional[List[FunctionSidlookupField]] = None
40
- r"""Set of expressions matched to lookup responses"""
41
-
42
-
43
19
  class FunctionSidlookupTypedDict(TypedDict):
44
20
  filename: str
45
21
  group: str
@@ -54,7 +30,7 @@ class FunctionSidlookupTypedDict(TypedDict):
54
30
  disabled: NotRequired[bool]
55
31
  handle_signals: NotRequired[bool]
56
32
  sync: NotRequired[bool]
57
- schema_: NotRequired[FunctionSidlookupSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaSidlookupTypedDict]
58
34
 
59
35
 
60
36
  class FunctionSidlookup(BaseModel):
@@ -89,5 +65,5 @@ class FunctionSidlookup(BaseModel):
89
65
  sync: Optional[bool] = None
90
66
 
91
67
  schema_: Annotated[
92
- Optional[FunctionSidlookupSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaSidlookup], pydantic.Field(alias="schema")
93
69
  ] = None
@@ -1,13 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from cribl_control_plane import models, utils
4
+ from .functionconfschemasnmptrapserialize import (
5
+ FunctionConfSchemaSnmpTrapSerialize,
6
+ FunctionConfSchemaSnmpTrapSerializeTypedDict,
7
+ )
5
8
  from cribl_control_plane.types import BaseModel
6
- from cribl_control_plane.utils import validate_open_enum
7
9
  from enum import Enum
8
10
  import pydantic
9
- from pydantic import field_serializer
10
- from pydantic.functional_validators import PlainValidator
11
11
  from typing import Any, Dict, Optional
12
12
  from typing_extensions import Annotated, NotRequired, TypedDict
13
13
 
@@ -16,81 +16,6 @@ class FunctionSnmpTrapSerializeID(str, Enum):
16
16
  SNMP_TRAP_SERIALIZE = "snmp_trap_serialize"
17
17
 
18
18
 
19
- class FunctionSnmpTrapSerializeAuthenticationProtocol(
20
- str, Enum, metaclass=utils.OpenEnumMeta
21
- ):
22
- # None
23
- NONE = "none"
24
- # MD5
25
- MD5 = "md5"
26
- # SHA1
27
- SHA = "sha"
28
- # SHA224
29
- SHA224 = "sha224"
30
- # SHA256
31
- SHA256 = "sha256"
32
- # SHA384
33
- SHA384 = "sha384"
34
- # SHA512
35
- SHA512 = "sha512"
36
-
37
-
38
- class FunctionSnmpTrapSerializeV3UserTypedDict(TypedDict):
39
- name: NotRequired[str]
40
- auth_protocol: NotRequired[FunctionSnmpTrapSerializeAuthenticationProtocol]
41
- auth_key: NotRequired[Any]
42
- priv_protocol: NotRequired[str]
43
-
44
-
45
- class FunctionSnmpTrapSerializeV3User(BaseModel):
46
- name: Optional[str] = None
47
-
48
- auth_protocol: Annotated[
49
- Annotated[
50
- Optional[FunctionSnmpTrapSerializeAuthenticationProtocol],
51
- PlainValidator(validate_open_enum(False)),
52
- ],
53
- pydantic.Field(alias="authProtocol"),
54
- ] = FunctionSnmpTrapSerializeAuthenticationProtocol.NONE
55
-
56
- auth_key: Annotated[Optional[Any], pydantic.Field(alias="authKey")] = None
57
-
58
- priv_protocol: Annotated[Optional[str], pydantic.Field(alias="privProtocol")] = (
59
- "none"
60
- )
61
-
62
- @field_serializer("auth_protocol")
63
- def serialize_auth_protocol(self, value):
64
- if isinstance(value, str):
65
- try:
66
- return models.FunctionSnmpTrapSerializeAuthenticationProtocol(value)
67
- except ValueError:
68
- return value
69
- return value
70
-
71
-
72
- class FunctionSnmpTrapSerializeSchemaTypedDict(TypedDict):
73
- strict: NotRequired[bool]
74
- r"""Prevent event serialization if any required fields are missing. When disabled, @{product} will attempt to serialize the event even if required fields are missing, which could cause unexpected behavior at the downstream receiver."""
75
- drop_failed_events: NotRequired[bool]
76
- r"""When disabled, `snmpSerializeErrors` will be set on the event, and the `__snmpRaw` field will be removed to prevent @{product} from sending the event from the SNMP Trap Destination"""
77
- v3_user: NotRequired[FunctionSnmpTrapSerializeV3UserTypedDict]
78
-
79
-
80
- class FunctionSnmpTrapSerializeSchema(BaseModel):
81
- strict: Optional[bool] = True
82
- r"""Prevent event serialization if any required fields are missing. When disabled, @{product} will attempt to serialize the event even if required fields are missing, which could cause unexpected behavior at the downstream receiver."""
83
-
84
- drop_failed_events: Annotated[
85
- Optional[bool], pydantic.Field(alias="dropFailedEvents")
86
- ] = True
87
- r"""When disabled, `snmpSerializeErrors` will be set on the event, and the `__snmpRaw` field will be removed to prevent @{product} from sending the event from the SNMP Trap Destination"""
88
-
89
- v3_user: Annotated[
90
- Optional[FunctionSnmpTrapSerializeV3User], pydantic.Field(alias="v3User")
91
- ] = None
92
-
93
-
94
19
  class FunctionSnmpTrapSerializeTypedDict(TypedDict):
95
20
  filename: str
96
21
  group: str
@@ -105,7 +30,7 @@ class FunctionSnmpTrapSerializeTypedDict(TypedDict):
105
30
  disabled: NotRequired[bool]
106
31
  handle_signals: NotRequired[bool]
107
32
  sync: NotRequired[bool]
108
- schema_: NotRequired[FunctionSnmpTrapSerializeSchemaTypedDict]
33
+ schema_: NotRequired[FunctionConfSchemaSnmpTrapSerializeTypedDict]
109
34
 
110
35
 
111
36
  class FunctionSnmpTrapSerialize(BaseModel):
@@ -140,5 +65,5 @@ class FunctionSnmpTrapSerialize(BaseModel):
140
65
  sync: Optional[bool] = None
141
66
 
142
67
  schema_: Annotated[
143
- Optional[FunctionSnmpTrapSerializeSchema], pydantic.Field(alias="schema")
68
+ Optional[FunctionConfSchemaSnmpTrapSerialize], pydantic.Field(alias="schema")
144
69
  ] = None