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.
- cribl_control_plane/_version.py +3 -3
- cribl_control_plane/collectors_sdk.py +993 -0
- cribl_control_plane/models/__init__.py +2161 -734
- cribl_control_plane/models/configgroup.py +3 -0
- cribl_control_plane/models/countedsavedjob.py +20 -0
- cribl_control_plane/models/createsavedjobop.py +30 -0
- cribl_control_plane/models/deletesavedjobbyidop.py +42 -0
- cribl_control_plane/models/functionaggregatemetrics.py +7 -144
- cribl_control_plane/models/functionaggregation.py +7 -110
- cribl_control_plane/models/functionautotimestamp.py +7 -111
- cribl_control_plane/models/functioncef.py +6 -51
- cribl_control_plane/models/functionchain.py +6 -12
- cribl_control_plane/models/functionclone.py +7 -13
- cribl_control_plane/models/functioncode.py +8 -35
- cribl_control_plane/models/functioncomment.py +6 -12
- cribl_control_plane/models/functionconfschemaaggregatemetrics.py +153 -0
- cribl_control_plane/models/functionconfschemaaggregation.py +114 -0
- cribl_control_plane/models/functionconfschemaautotimestamp.py +116 -0
- cribl_control_plane/models/functionconfschemacef.py +83 -0
- cribl_control_plane/models/functionconfschemachain.py +16 -0
- cribl_control_plane/models/functionconfschemaclone.py +16 -0
- cribl_control_plane/models/functionconfschemacode.py +38 -0
- cribl_control_plane/models/functionconfschemacomment.py +16 -0
- cribl_control_plane/models/functionconfschemadistinct.py +41 -0
- cribl_control_plane/models/functionconfschemadnslookup.py +193 -0
- cribl_control_plane/models/functionconfschemadrop.py +13 -0
- cribl_control_plane/models/functionconfschemadropdimensions.py +31 -0
- cribl_control_plane/models/functionconfschemadynamicsampling.py +67 -0
- cribl_control_plane/models/functionconfschemaeval.py +44 -0
- cribl_control_plane/models/functionconfschemaeventbreaker.py +51 -0
- cribl_control_plane/models/functionconfschemaeventstats.py +34 -0
- cribl_control_plane/models/functionconfschemaexternaldata.py +13 -0
- cribl_control_plane/models/functionconfschemaflatten.py +31 -0
- cribl_control_plane/models/functionconfschemafoldkeys.py +31 -0
- cribl_control_plane/models/functionconfschemagenstats.py +14 -0
- cribl_control_plane/models/functionconfschemageoip.py +66 -0
- cribl_control_plane/models/functionconfschemagrok.py +38 -0
- cribl_control_plane/models/functionconfschemahandlebar.py +56 -0
- cribl_control_plane/models/functionconfschemajoin.py +55 -0
- cribl_control_plane/models/functionconfschemajsonunroll.py +21 -0
- cribl_control_plane/models/functionconfschemalakeexport.py +44 -0
- cribl_control_plane/models/functionconfschemalimit.py +16 -0
- cribl_control_plane/models/functionconfschemalocalsearchdatatypeparser.py +17 -0
- cribl_control_plane/models/functionconfschemalocalsearchrulesetrunner.py +40 -0
- cribl_control_plane/models/functionconfschemalookup.py +92 -0
- cribl_control_plane/models/functionconfschemamask.py +63 -0
- cribl_control_plane/models/functionconfschemamvexpand.py +76 -0
- cribl_control_plane/models/functionconfschemamvpull.py +45 -0
- cribl_control_plane/models/functionconfschemanotificationpolicies.py +129 -0
- cribl_control_plane/models/functionconfschemanotifications.py +26 -0
- cribl_control_plane/models/functionconfschemanotify.py +149 -0
- cribl_control_plane/models/functionconfschemanumerify.py +63 -0
- cribl_control_plane/models/functionconfschemaotlplogs.py +24 -0
- cribl_control_plane/models/functionconfschemaotlpmetrics.py +61 -0
- cribl_control_plane/models/functionconfschemaotlptraces.py +54 -0
- cribl_control_plane/models/functionconfschemapack.py +24 -0
- cribl_control_plane/models/functionconfschemapivot.py +31 -0
- cribl_control_plane/models/functionconfschemapublishmetrics.py +98 -0
- cribl_control_plane/models/functionconfschemaredis.py +121 -0
- cribl_control_plane/models/functionconfschemaregexextract.py +55 -0
- cribl_control_plane/models/functionconfschemaregexfilter.py +38 -0
- cribl_control_plane/models/functionconfschemarename.py +49 -0
- cribl_control_plane/models/functionconfschemarollupmetrics.py +57 -0
- cribl_control_plane/models/functionconfschemasampling.py +32 -0
- cribl_control_plane/models/functionconfschemasend.py +84 -0
- cribl_control_plane/models/functionconfschemasensitivedatascanner.py +75 -0
- cribl_control_plane/models/functionconfschemaserde.py +105 -0
- cribl_control_plane/models/functionconfschemaserialize.py +78 -0
- cribl_control_plane/models/functionconfschemasidlookup.py +34 -0
- cribl_control_plane/models/functionconfschemasnmptrapserialize.py +92 -0
- cribl_control_plane/models/functionconfschemasort.py +41 -0
- cribl_control_plane/models/functionconfschemastore.py +75 -0
- cribl_control_plane/models/functionconfschemasuppress.py +57 -0
- cribl_control_plane/models/functionconfschematee.py +32 -0
- cribl_control_plane/models/functionconfschematrimtimestamp.py +16 -0
- cribl_control_plane/models/functionconfschemaunion.py +22 -0
- cribl_control_plane/models/functionconfschemaunroll.py +22 -0
- cribl_control_plane/models/functionconfschemawindow.py +40 -0
- cribl_control_plane/models/functionconfschemaxmlunroll.py +34 -0
- cribl_control_plane/models/functiondistinct.py +7 -37
- cribl_control_plane/models/functiondnslookup.py +7 -188
- cribl_control_plane/models/functiondrop.py +8 -12
- cribl_control_plane/models/functiondropdimensions.py +7 -25
- cribl_control_plane/models/functiondynamicsampling.py +6 -58
- cribl_control_plane/models/functioneval.py +9 -43
- cribl_control_plane/models/functioneventbreaker.py +6 -40
- cribl_control_plane/models/functioneventstats.py +7 -30
- cribl_control_plane/models/functionexternaldata.py +6 -10
- cribl_control_plane/models/functionflatten.py +7 -28
- cribl_control_plane/models/functionfoldkeys.py +6 -26
- cribl_control_plane/models/functiongenstats.py +7 -11
- cribl_control_plane/models/functiongeoip.py +7 -58
- cribl_control_plane/models/functiongrok.py +9 -35
- cribl_control_plane/models/functionhandlebar.py +6 -49
- cribl_control_plane/models/functionjoin.py +9 -52
- cribl_control_plane/models/functionjsonunroll.py +6 -17
- cribl_control_plane/models/functionlakeexport.py +6 -39
- cribl_control_plane/models/functionlimit.py +6 -12
- cribl_control_plane/models/functionlocalsearchdatatypeparser.py +6 -12
- cribl_control_plane/models/functionlocalsearchrulesetrunner.py +7 -34
- cribl_control_plane/models/functionlookup.py +7 -86
- cribl_control_plane/models/functionmask.py +9 -61
- cribl_control_plane/models/functionmvexpand.py +7 -66
- cribl_control_plane/models/functionmvpull.py +6 -36
- cribl_control_plane/models/functionnotificationpolicies.py +8 -125
- cribl_control_plane/models/functionnotifications.py +6 -22
- cribl_control_plane/models/functionnotify.py +6 -133
- cribl_control_plane/models/functionnumerify.py +7 -57
- cribl_control_plane/models/functionotlplogs.py +6 -19
- cribl_control_plane/models/functionotlpmetrics.py +7 -56
- cribl_control_plane/models/functionotlptraces.py +6 -48
- cribl_control_plane/models/functionpack.py +9 -20
- cribl_control_plane/models/functionpivot.py +7 -23
- cribl_control_plane/models/functionpublishmetrics.py +7 -91
- cribl_control_plane/models/functionredis.py +7 -111
- cribl_control_plane/models/functionregexextract.py +7 -50
- cribl_control_plane/models/functionregexfilter.py +7 -33
- cribl_control_plane/models/functionrename.py +7 -45
- cribl_control_plane/models/functionrollupmetrics.py +7 -52
- cribl_control_plane/models/functionsampling.py +7 -28
- cribl_control_plane/models/functionsend.py +8 -80
- cribl_control_plane/models/functionsensitivedatascanner.py +7 -66
- cribl_control_plane/models/functionserde.py +6 -98
- cribl_control_plane/models/functionserialize.py +7 -72
- cribl_control_plane/models/functionsidlookup.py +7 -31
- cribl_control_plane/models/functionsnmptrapserialize.py +6 -81
- cribl_control_plane/models/functionsort.py +8 -36
- cribl_control_plane/models/functionstore.py +6 -69
- cribl_control_plane/models/functionsuppress.py +6 -52
- cribl_control_plane/models/functiontee.py +6 -30
- cribl_control_plane/models/functiontrimtimestamp.py +6 -12
- cribl_control_plane/models/functionunion.py +9 -20
- cribl_control_plane/models/functionunroll.py +6 -17
- cribl_control_plane/models/functionwindow.py +7 -34
- cribl_control_plane/models/functionxmlunroll.py +6 -29
- cribl_control_plane/models/getsavedjobbyidop.py +33 -0
- cribl_control_plane/models/getsavedjobop.py +40 -0
- cribl_control_plane/models/groupcreaterequest.py +3 -0
- cribl_control_plane/models/heartbeatmetadata.py +42 -0
- cribl_control_plane/models/input.py +1 -1
- cribl_control_plane/models/inputedgeprometheus.py +11 -11
- cribl_control_plane/models/inputprometheus.py +23 -18
- cribl_control_plane/models/nodeprovidedinfo.py +42 -0
- cribl_control_plane/models/output.py +15 -9
- cribl_control_plane/models/outputclickhouse.py +31 -0
- cribl_control_plane/models/outputcriblhttp.py +7 -0
- cribl_control_plane/models/outputcriblsearchengine.py +655 -0
- cribl_control_plane/models/outputnetflow.py +16 -2
- cribl_control_plane/models/pipeline.py +52 -4
- cribl_control_plane/models/pipelinefunctionaggregatemetrics.py +195 -0
- cribl_control_plane/models/pipelinefunctionaggregation.py +159 -0
- cribl_control_plane/models/pipelinefunctionautotimestamp.py +56 -0
- cribl_control_plane/models/pipelinefunctioncef.py +96 -0
- cribl_control_plane/models/pipelinefunctionchain.py +62 -0
- cribl_control_plane/models/pipelinefunctionclone.py +56 -0
- cribl_control_plane/models/pipelinefunctioncode.py +56 -0
- cribl_control_plane/models/pipelinefunctioncomment.py +56 -0
- cribl_control_plane/models/pipelinefunctionconf.py +343 -46
- cribl_control_plane/models/pipelinefunctionconf_input.py +353 -0
- cribl_control_plane/models/pipelinefunctiondistinct.py +86 -0
- cribl_control_plane/models/pipelinefunctiondnslookup.py +56 -0
- cribl_control_plane/models/pipelinefunctiondrop.py +56 -0
- cribl_control_plane/models/pipelinefunctiondropdimensions.py +74 -0
- cribl_control_plane/models/pipelinefunctiondynamicsampling.py +111 -0
- cribl_control_plane/models/pipelinefunctioneval.py +56 -0
- cribl_control_plane/models/pipelinefunctioneventbreaker.py +95 -0
- cribl_control_plane/models/pipelinefunctioneventstats.py +79 -0
- cribl_control_plane/models/pipelinefunctionexternaldata.py +56 -0
- cribl_control_plane/models/pipelinefunctionflatten.py +56 -0
- cribl_control_plane/models/pipelinefunctionfoldkeys.py +56 -0
- cribl_control_plane/models/pipelinefunctiongenstats.py +56 -0
- cribl_control_plane/models/pipelinefunctiongeoip.py +109 -0
- cribl_control_plane/models/pipelinefunctiongrok.py +83 -0
- cribl_control_plane/models/pipelinefunctionhandlebar.py +99 -0
- cribl_control_plane/models/pipelinefunctionjoin.py +100 -0
- cribl_control_plane/models/pipelinefunctionjsonunroll.py +67 -0
- cribl_control_plane/models/pipelinefunctionlakeexport.py +89 -0
- cribl_control_plane/models/pipelinefunctionlimit.py +56 -0
- cribl_control_plane/models/pipelinefunctionlocalsearchdatatypeparser.py +62 -0
- cribl_control_plane/models/pipelinefunctionlocalsearchrulesetrunner.py +56 -0
- cribl_control_plane/models/pipelinefunctionlookup.py +136 -0
- cribl_control_plane/models/pipelinefunctionmask.py +108 -0
- cribl_control_plane/models/pipelinefunctionmvexpand.py +116 -0
- cribl_control_plane/models/pipelinefunctionmvpull.py +86 -0
- cribl_control_plane/models/pipelinefunctionnotificationpolicies.py +56 -0
- cribl_control_plane/models/pipelinefunctionnotifications.py +72 -0
- cribl_control_plane/models/pipelinefunctionnotify.py +189 -0
- cribl_control_plane/models/pipelinefunctionnumerify.py +56 -0
- cribl_control_plane/models/pipelinefunctionotlplogs.py +56 -0
- cribl_control_plane/models/pipelinefunctionotlpmetrics.py +56 -0
- cribl_control_plane/models/pipelinefunctionotlptraces.py +56 -0
- cribl_control_plane/models/pipelinefunctionpack.py +67 -0
- cribl_control_plane/models/pipelinefunctionpivot.py +72 -0
- cribl_control_plane/models/pipelinefunctionpublishmetrics.py +56 -0
- cribl_control_plane/models/pipelinefunctionredis.py +165 -0
- cribl_control_plane/models/pipelinefunctionregexextract.py +100 -0
- cribl_control_plane/models/pipelinefunctionregexfilter.py +56 -0
- cribl_control_plane/models/pipelinefunctionrename.py +56 -0
- cribl_control_plane/models/pipelinefunctionrollupmetrics.py +56 -0
- cribl_control_plane/models/pipelinefunctionsampling.py +56 -0
- cribl_control_plane/models/pipelinefunctionsend.py +128 -0
- cribl_control_plane/models/pipelinefunctionsensitivedatascanner.py +120 -0
- cribl_control_plane/models/pipelinefunctionserde.py +149 -0
- cribl_control_plane/models/pipelinefunctionserialize.py +122 -0
- cribl_control_plane/models/pipelinefunctionsidlookup.py +56 -0
- cribl_control_plane/models/pipelinefunctionsnmptrapserialize.py +56 -0
- cribl_control_plane/models/pipelinefunctionsort.py +84 -0
- cribl_control_plane/models/pipelinefunctionstore.py +120 -0
- cribl_control_plane/models/pipelinefunctionsuppress.py +102 -0
- cribl_control_plane/models/pipelinefunctiontee.py +77 -0
- cribl_control_plane/models/pipelinefunctiontrimtimestamp.py +56 -0
- cribl_control_plane/models/pipelinefunctionunion.py +67 -0
- cribl_control_plane/models/pipelinefunctionunroll.py +67 -0
- cribl_control_plane/models/pipelinefunctionwindow.py +83 -0
- cribl_control_plane/models/pipelinefunctionxmlunroll.py +79 -0
- cribl_control_plane/models/runnablejobcollection.py +11 -10
- cribl_control_plane/models/runnablejobexecutor.py +8 -8
- cribl_control_plane/models/savedjob.py +26 -0
- cribl_control_plane/models/savedjobcollection.py +411 -0
- cribl_control_plane/models/savedjobexecutor.py +301 -0
- cribl_control_plane/models/savedjobscheduledsearch.py +278 -0
- cribl_control_plane/models/updatepipelinebyidop.py +4 -3
- cribl_control_plane/models/updatesavedjobbyidop.py +42 -0
- cribl_control_plane/pipelines.py +16 -16
- cribl_control_plane/sdk.py +4 -0
- {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/METADATA +10 -2
- {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/RECORD +229 -88
- {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/WHEEL +0 -0
- {cribl_control_plane-0.4.0b23.dist-info → cribl_control_plane-0.5.0b3.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane.types import BaseModel
|
|
5
|
+
from enum import Enum
|
|
6
|
+
import pydantic
|
|
7
|
+
from typing import List, Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PipelineFunctionSensitiveDataScannerID(str, Enum):
|
|
12
|
+
r"""Function ID"""
|
|
13
|
+
|
|
14
|
+
SENSITIVE_DATA_SCANNER = "sensitive_data_scanner"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class PipelineFunctionSensitiveDataScannerRuleTypedDict(TypedDict):
|
|
18
|
+
ruleset_id: str
|
|
19
|
+
r"""The ID of the ruleset to use for the scan"""
|
|
20
|
+
replace_expr: NotRequired[str]
|
|
21
|
+
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>."""
|
|
22
|
+
disabled: NotRequired[bool]
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class PipelineFunctionSensitiveDataScannerRule(BaseModel):
|
|
26
|
+
ruleset_id: Annotated[str, pydantic.Field(alias="rulesetId")]
|
|
27
|
+
r"""The ID of the ruleset to use for the scan"""
|
|
28
|
+
|
|
29
|
+
replace_expr: Annotated[Optional[str], pydantic.Field(alias="replaceExpr")] = (
|
|
30
|
+
"'REDACTED'"
|
|
31
|
+
)
|
|
32
|
+
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>."""
|
|
33
|
+
|
|
34
|
+
disabled: Optional[bool] = False
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class PipelineFunctionSensitiveDataScannerFlagTypedDict(TypedDict):
|
|
38
|
+
value: str
|
|
39
|
+
name: NotRequired[str]
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
class PipelineFunctionSensitiveDataScannerFlag(BaseModel):
|
|
43
|
+
value: str
|
|
44
|
+
|
|
45
|
+
name: Optional[str] = None
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
class PipelineFunctionSensitiveDataScannerConfTypedDict(TypedDict):
|
|
49
|
+
rules: List[PipelineFunctionSensitiveDataScannerRuleTypedDict]
|
|
50
|
+
fields: NotRequired[List[str]]
|
|
51
|
+
r"""Rulesets act on the events contained in these fields. Mitigation expressions apply to the scan results. Supports wildcards (*)."""
|
|
52
|
+
exclude_fields: NotRequired[List[str]]
|
|
53
|
+
r"""Fields that the mitigation expression will not be applied to. Supports wildcards (*)."""
|
|
54
|
+
flags: NotRequired[List[PipelineFunctionSensitiveDataScannerFlagTypedDict]]
|
|
55
|
+
r"""Fields to add when mitigation is applied to an event"""
|
|
56
|
+
include_detected_rules: NotRequired[bool]
|
|
57
|
+
r"""Add matching ruleset IDs to a field called \"__detected\" """
|
|
58
|
+
background_detection: NotRequired[bool]
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
class PipelineFunctionSensitiveDataScannerConf(BaseModel):
|
|
62
|
+
rules: List[PipelineFunctionSensitiveDataScannerRule]
|
|
63
|
+
|
|
64
|
+
fields: Optional[List[str]] = None
|
|
65
|
+
r"""Rulesets act on the events contained in these fields. Mitigation expressions apply to the scan results. Supports wildcards (*)."""
|
|
66
|
+
|
|
67
|
+
exclude_fields: Annotated[
|
|
68
|
+
Optional[List[str]], pydantic.Field(alias="excludeFields")
|
|
69
|
+
] = None
|
|
70
|
+
r"""Fields that the mitigation expression will not be applied to. Supports wildcards (*)."""
|
|
71
|
+
|
|
72
|
+
flags: Optional[List[PipelineFunctionSensitiveDataScannerFlag]] = None
|
|
73
|
+
r"""Fields to add when mitigation is applied to an event"""
|
|
74
|
+
|
|
75
|
+
include_detected_rules: Annotated[
|
|
76
|
+
Optional[bool], pydantic.Field(alias="includeDetectedRules")
|
|
77
|
+
] = True
|
|
78
|
+
r"""Add matching ruleset IDs to a field called \"__detected\" """
|
|
79
|
+
|
|
80
|
+
background_detection: Annotated[
|
|
81
|
+
Optional[bool], pydantic.Field(alias="backgroundDetection")
|
|
82
|
+
] = False
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
class PipelineFunctionSensitiveDataScannerTypedDict(TypedDict):
|
|
86
|
+
id: PipelineFunctionSensitiveDataScannerID
|
|
87
|
+
r"""Function ID"""
|
|
88
|
+
conf: PipelineFunctionSensitiveDataScannerConfTypedDict
|
|
89
|
+
filter_: NotRequired[str]
|
|
90
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
91
|
+
description: NotRequired[str]
|
|
92
|
+
r"""Simple description of this step"""
|
|
93
|
+
disabled: NotRequired[bool]
|
|
94
|
+
r"""If true, data will not be pushed through this function"""
|
|
95
|
+
final: NotRequired[bool]
|
|
96
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
97
|
+
group_id: NotRequired[str]
|
|
98
|
+
r"""Group ID"""
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
class PipelineFunctionSensitiveDataScanner(BaseModel):
|
|
102
|
+
id: PipelineFunctionSensitiveDataScannerID
|
|
103
|
+
r"""Function ID"""
|
|
104
|
+
|
|
105
|
+
conf: PipelineFunctionSensitiveDataScannerConf
|
|
106
|
+
|
|
107
|
+
filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
|
|
108
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
109
|
+
|
|
110
|
+
description: Optional[str] = None
|
|
111
|
+
r"""Simple description of this step"""
|
|
112
|
+
|
|
113
|
+
disabled: Optional[bool] = None
|
|
114
|
+
r"""If true, data will not be pushed through this function"""
|
|
115
|
+
|
|
116
|
+
final: Optional[bool] = None
|
|
117
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
118
|
+
|
|
119
|
+
group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
|
|
120
|
+
r"""Group ID"""
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
|
+
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
7
|
+
from enum import Enum
|
|
8
|
+
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
10
|
+
from pydantic.functional_validators import PlainValidator
|
|
11
|
+
from typing import Any, Optional
|
|
12
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class PipelineFunctionSerdeID(str, Enum):
|
|
16
|
+
r"""Function ID"""
|
|
17
|
+
|
|
18
|
+
SERDE = "serde"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class PipelineFunctionSerdeOperationMode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
22
|
+
r"""Extract creates new fields. Reserialize extracts and filters fields, and then reserializes."""
|
|
23
|
+
|
|
24
|
+
# Extract
|
|
25
|
+
EXTRACT = "extract"
|
|
26
|
+
# Reserialize
|
|
27
|
+
RESERIALIZE = "reserialize"
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class PipelineFunctionSerdeType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
31
|
+
r"""Parser or formatter type to use"""
|
|
32
|
+
|
|
33
|
+
# CSV
|
|
34
|
+
CSV = "csv"
|
|
35
|
+
# Extended Log File Format
|
|
36
|
+
ELFF = "elff"
|
|
37
|
+
# Common Log Format
|
|
38
|
+
CLF = "clf"
|
|
39
|
+
# Key=Value Pairs
|
|
40
|
+
KVP = "kvp"
|
|
41
|
+
# JSON Object
|
|
42
|
+
JSON = "json"
|
|
43
|
+
# Delimited values
|
|
44
|
+
DELIM = "delim"
|
|
45
|
+
# Regular Expression
|
|
46
|
+
REGEX = "regex"
|
|
47
|
+
# Grok
|
|
48
|
+
GROK = "grok"
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
class PipelineFunctionSerdeConfTypedDict(TypedDict):
|
|
52
|
+
mode: NotRequired[PipelineFunctionSerdeOperationMode]
|
|
53
|
+
r"""Extract creates new fields. Reserialize extracts and filters fields, and then reserializes."""
|
|
54
|
+
type: NotRequired[PipelineFunctionSerdeType]
|
|
55
|
+
r"""Parser or formatter type to use"""
|
|
56
|
+
delim_char: NotRequired[Any]
|
|
57
|
+
quote_char: NotRequired[Any]
|
|
58
|
+
escape_char: NotRequired[Any]
|
|
59
|
+
null_value: NotRequired[Any]
|
|
60
|
+
src_field: NotRequired[str]
|
|
61
|
+
r"""Field containing text to be parsed"""
|
|
62
|
+
dst_field: NotRequired[str]
|
|
63
|
+
r"""Name of the field to add fields to. Extract mode only."""
|
|
64
|
+
clean_fields: NotRequired[Any]
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class PipelineFunctionSerdeConf(BaseModel):
|
|
68
|
+
mode: Annotated[
|
|
69
|
+
Optional[PipelineFunctionSerdeOperationMode],
|
|
70
|
+
PlainValidator(validate_open_enum(False)),
|
|
71
|
+
] = PipelineFunctionSerdeOperationMode.EXTRACT
|
|
72
|
+
r"""Extract creates new fields. Reserialize extracts and filters fields, and then reserializes."""
|
|
73
|
+
|
|
74
|
+
type: Annotated[
|
|
75
|
+
Optional[PipelineFunctionSerdeType], PlainValidator(validate_open_enum(False))
|
|
76
|
+
] = PipelineFunctionSerdeType.CSV
|
|
77
|
+
r"""Parser or formatter type to use"""
|
|
78
|
+
|
|
79
|
+
delim_char: Annotated[Optional[Any], pydantic.Field(alias="delimChar")] = None
|
|
80
|
+
|
|
81
|
+
quote_char: Annotated[Optional[Any], pydantic.Field(alias="quoteChar")] = None
|
|
82
|
+
|
|
83
|
+
escape_char: Annotated[Optional[Any], pydantic.Field(alias="escapeChar")] = None
|
|
84
|
+
|
|
85
|
+
null_value: Annotated[Optional[Any], pydantic.Field(alias="nullValue")] = None
|
|
86
|
+
|
|
87
|
+
src_field: Annotated[Optional[str], pydantic.Field(alias="srcField")] = "_raw"
|
|
88
|
+
r"""Field containing text to be parsed"""
|
|
89
|
+
|
|
90
|
+
dst_field: Annotated[Optional[str], pydantic.Field(alias="dstField")] = None
|
|
91
|
+
r"""Name of the field to add fields to. Extract mode only."""
|
|
92
|
+
|
|
93
|
+
clean_fields: Annotated[Optional[Any], pydantic.Field(alias="cleanFields")] = None
|
|
94
|
+
|
|
95
|
+
@field_serializer("mode")
|
|
96
|
+
def serialize_mode(self, value):
|
|
97
|
+
if isinstance(value, str):
|
|
98
|
+
try:
|
|
99
|
+
return models.PipelineFunctionSerdeOperationMode(value)
|
|
100
|
+
except ValueError:
|
|
101
|
+
return value
|
|
102
|
+
return value
|
|
103
|
+
|
|
104
|
+
@field_serializer("type")
|
|
105
|
+
def serialize_type(self, value):
|
|
106
|
+
if isinstance(value, str):
|
|
107
|
+
try:
|
|
108
|
+
return models.PipelineFunctionSerdeType(value)
|
|
109
|
+
except ValueError:
|
|
110
|
+
return value
|
|
111
|
+
return value
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
class PipelineFunctionSerdeTypedDict(TypedDict):
|
|
115
|
+
id: PipelineFunctionSerdeID
|
|
116
|
+
r"""Function ID"""
|
|
117
|
+
conf: PipelineFunctionSerdeConfTypedDict
|
|
118
|
+
filter_: NotRequired[str]
|
|
119
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
120
|
+
description: NotRequired[str]
|
|
121
|
+
r"""Simple description of this step"""
|
|
122
|
+
disabled: NotRequired[bool]
|
|
123
|
+
r"""If true, data will not be pushed through this function"""
|
|
124
|
+
final: NotRequired[bool]
|
|
125
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
126
|
+
group_id: NotRequired[str]
|
|
127
|
+
r"""Group ID"""
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
class PipelineFunctionSerde(BaseModel):
|
|
131
|
+
id: PipelineFunctionSerdeID
|
|
132
|
+
r"""Function ID"""
|
|
133
|
+
|
|
134
|
+
conf: PipelineFunctionSerdeConf
|
|
135
|
+
|
|
136
|
+
filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
|
|
137
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
138
|
+
|
|
139
|
+
description: Optional[str] = None
|
|
140
|
+
r"""Simple description of this step"""
|
|
141
|
+
|
|
142
|
+
disabled: Optional[bool] = None
|
|
143
|
+
r"""If true, data will not be pushed through this function"""
|
|
144
|
+
|
|
145
|
+
final: Optional[bool] = None
|
|
146
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
147
|
+
|
|
148
|
+
group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
|
|
149
|
+
r"""Group ID"""
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane import models, utils
|
|
5
|
+
from cribl_control_plane.types import BaseModel
|
|
6
|
+
from cribl_control_plane.utils import validate_open_enum
|
|
7
|
+
from enum import Enum
|
|
8
|
+
import pydantic
|
|
9
|
+
from pydantic import field_serializer
|
|
10
|
+
from pydantic.functional_validators import PlainValidator
|
|
11
|
+
from typing import Any, List, Optional
|
|
12
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class PipelineFunctionSerializeID(str, Enum):
|
|
16
|
+
r"""Function ID"""
|
|
17
|
+
|
|
18
|
+
SERIALIZE = "serialize"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class PipelineFunctionSerializeType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
22
|
+
r"""Data output format"""
|
|
23
|
+
|
|
24
|
+
# CSV
|
|
25
|
+
CSV = "csv"
|
|
26
|
+
# Extended Log File Format
|
|
27
|
+
ELFF = "elff"
|
|
28
|
+
# Common Log Format
|
|
29
|
+
CLF = "clf"
|
|
30
|
+
# Key=Value Pairs
|
|
31
|
+
KVP = "kvp"
|
|
32
|
+
# JSON Object
|
|
33
|
+
JSON = "json"
|
|
34
|
+
# Delimited values
|
|
35
|
+
DELIM = "delim"
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class PipelineFunctionSerializeConfTypedDict(TypedDict):
|
|
39
|
+
type: NotRequired[PipelineFunctionSerializeType]
|
|
40
|
+
r"""Data output format"""
|
|
41
|
+
delim_char: NotRequired[Any]
|
|
42
|
+
quote_char: NotRequired[Any]
|
|
43
|
+
escape_char: NotRequired[Any]
|
|
44
|
+
null_value: NotRequired[Any]
|
|
45
|
+
fields: NotRequired[List[str]]
|
|
46
|
+
r"""Required for CSV, ELFF, CLF, and Delimited values. All other formats support wildcard field lists. Examples: host, array*, !host *"""
|
|
47
|
+
src_field: NotRequired[str]
|
|
48
|
+
r"""Field containing object to serialize. Leave blank to serialize top-level event fields."""
|
|
49
|
+
dst_field: NotRequired[str]
|
|
50
|
+
r"""Field to serialize data to"""
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
class PipelineFunctionSerializeConf(BaseModel):
|
|
54
|
+
type: Annotated[
|
|
55
|
+
Optional[PipelineFunctionSerializeType],
|
|
56
|
+
PlainValidator(validate_open_enum(False)),
|
|
57
|
+
] = PipelineFunctionSerializeType.CSV
|
|
58
|
+
r"""Data output format"""
|
|
59
|
+
|
|
60
|
+
delim_char: Annotated[Optional[Any], pydantic.Field(alias="delimChar")] = None
|
|
61
|
+
|
|
62
|
+
quote_char: Annotated[Optional[Any], pydantic.Field(alias="quoteChar")] = None
|
|
63
|
+
|
|
64
|
+
escape_char: Annotated[Optional[Any], pydantic.Field(alias="escapeChar")] = None
|
|
65
|
+
|
|
66
|
+
null_value: Annotated[Optional[Any], pydantic.Field(alias="nullValue")] = None
|
|
67
|
+
|
|
68
|
+
fields: Optional[List[str]] = None
|
|
69
|
+
r"""Required for CSV, ELFF, CLF, and Delimited values. All other formats support wildcard field lists. Examples: host, array*, !host *"""
|
|
70
|
+
|
|
71
|
+
src_field: Annotated[Optional[str], pydantic.Field(alias="srcField")] = None
|
|
72
|
+
r"""Field containing object to serialize. Leave blank to serialize top-level event fields."""
|
|
73
|
+
|
|
74
|
+
dst_field: Annotated[Optional[str], pydantic.Field(alias="dstField")] = "_raw"
|
|
75
|
+
r"""Field to serialize data to"""
|
|
76
|
+
|
|
77
|
+
@field_serializer("type")
|
|
78
|
+
def serialize_type(self, value):
|
|
79
|
+
if isinstance(value, str):
|
|
80
|
+
try:
|
|
81
|
+
return models.PipelineFunctionSerializeType(value)
|
|
82
|
+
except ValueError:
|
|
83
|
+
return value
|
|
84
|
+
return value
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
class PipelineFunctionSerializeTypedDict(TypedDict):
|
|
88
|
+
id: PipelineFunctionSerializeID
|
|
89
|
+
r"""Function ID"""
|
|
90
|
+
conf: PipelineFunctionSerializeConfTypedDict
|
|
91
|
+
filter_: NotRequired[str]
|
|
92
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
93
|
+
description: NotRequired[str]
|
|
94
|
+
r"""Simple description of this step"""
|
|
95
|
+
disabled: NotRequired[bool]
|
|
96
|
+
r"""If true, data will not be pushed through this function"""
|
|
97
|
+
final: NotRequired[bool]
|
|
98
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
99
|
+
group_id: NotRequired[str]
|
|
100
|
+
r"""Group ID"""
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
class PipelineFunctionSerialize(BaseModel):
|
|
104
|
+
id: PipelineFunctionSerializeID
|
|
105
|
+
r"""Function ID"""
|
|
106
|
+
|
|
107
|
+
conf: PipelineFunctionSerializeConf
|
|
108
|
+
|
|
109
|
+
filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
|
|
110
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
111
|
+
|
|
112
|
+
description: Optional[str] = None
|
|
113
|
+
r"""Simple description of this step"""
|
|
114
|
+
|
|
115
|
+
disabled: Optional[bool] = None
|
|
116
|
+
r"""If true, data will not be pushed through this function"""
|
|
117
|
+
|
|
118
|
+
final: Optional[bool] = None
|
|
119
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
120
|
+
|
|
121
|
+
group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
|
|
122
|
+
r"""Group ID"""
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .functionconfschemasidlookup import (
|
|
5
|
+
FunctionConfSchemaSidlookup,
|
|
6
|
+
FunctionConfSchemaSidlookupTypedDict,
|
|
7
|
+
)
|
|
8
|
+
from cribl_control_plane.types import BaseModel
|
|
9
|
+
from enum import Enum
|
|
10
|
+
import pydantic
|
|
11
|
+
from typing import Optional
|
|
12
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class PipelineFunctionSidlookupID(str, Enum):
|
|
16
|
+
r"""Function ID"""
|
|
17
|
+
|
|
18
|
+
SIDLOOKUP = "sidlookup"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class PipelineFunctionSidlookupTypedDict(TypedDict):
|
|
22
|
+
id: PipelineFunctionSidlookupID
|
|
23
|
+
r"""Function ID"""
|
|
24
|
+
conf: FunctionConfSchemaSidlookupTypedDict
|
|
25
|
+
filter_: NotRequired[str]
|
|
26
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
27
|
+
description: NotRequired[str]
|
|
28
|
+
r"""Simple description of this step"""
|
|
29
|
+
disabled: NotRequired[bool]
|
|
30
|
+
r"""If true, data will not be pushed through this function"""
|
|
31
|
+
final: NotRequired[bool]
|
|
32
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
33
|
+
group_id: NotRequired[str]
|
|
34
|
+
r"""Group ID"""
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class PipelineFunctionSidlookup(BaseModel):
|
|
38
|
+
id: PipelineFunctionSidlookupID
|
|
39
|
+
r"""Function ID"""
|
|
40
|
+
|
|
41
|
+
conf: FunctionConfSchemaSidlookup
|
|
42
|
+
|
|
43
|
+
filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
|
|
44
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
45
|
+
|
|
46
|
+
description: Optional[str] = None
|
|
47
|
+
r"""Simple description of this step"""
|
|
48
|
+
|
|
49
|
+
disabled: Optional[bool] = None
|
|
50
|
+
r"""If true, data will not be pushed through this function"""
|
|
51
|
+
|
|
52
|
+
final: Optional[bool] = None
|
|
53
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
54
|
+
|
|
55
|
+
group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
|
|
56
|
+
r"""Group ID"""
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .functionconfschemasnmptrapserialize import (
|
|
5
|
+
FunctionConfSchemaSnmpTrapSerialize,
|
|
6
|
+
FunctionConfSchemaSnmpTrapSerializeTypedDict,
|
|
7
|
+
)
|
|
8
|
+
from cribl_control_plane.types import BaseModel
|
|
9
|
+
from enum import Enum
|
|
10
|
+
import pydantic
|
|
11
|
+
from typing import Optional
|
|
12
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class PipelineFunctionSnmpTrapSerializeID(str, Enum):
|
|
16
|
+
r"""Function ID"""
|
|
17
|
+
|
|
18
|
+
SNMP_TRAP_SERIALIZE = "snmp_trap_serialize"
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class PipelineFunctionSnmpTrapSerializeTypedDict(TypedDict):
|
|
22
|
+
id: PipelineFunctionSnmpTrapSerializeID
|
|
23
|
+
r"""Function ID"""
|
|
24
|
+
conf: FunctionConfSchemaSnmpTrapSerializeTypedDict
|
|
25
|
+
filter_: NotRequired[str]
|
|
26
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
27
|
+
description: NotRequired[str]
|
|
28
|
+
r"""Simple description of this step"""
|
|
29
|
+
disabled: NotRequired[bool]
|
|
30
|
+
r"""If true, data will not be pushed through this function"""
|
|
31
|
+
final: NotRequired[bool]
|
|
32
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
33
|
+
group_id: NotRequired[str]
|
|
34
|
+
r"""Group ID"""
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class PipelineFunctionSnmpTrapSerialize(BaseModel):
|
|
38
|
+
id: PipelineFunctionSnmpTrapSerializeID
|
|
39
|
+
r"""Function ID"""
|
|
40
|
+
|
|
41
|
+
conf: FunctionConfSchemaSnmpTrapSerialize
|
|
42
|
+
|
|
43
|
+
filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
|
|
44
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
45
|
+
|
|
46
|
+
description: Optional[str] = None
|
|
47
|
+
r"""Simple description of this step"""
|
|
48
|
+
|
|
49
|
+
disabled: Optional[bool] = None
|
|
50
|
+
r"""If true, data will not be pushed through this function"""
|
|
51
|
+
|
|
52
|
+
final: Optional[bool] = None
|
|
53
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
54
|
+
|
|
55
|
+
group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
|
|
56
|
+
r"""Group ID"""
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from cribl_control_plane.types import BaseModel
|
|
5
|
+
from enum import Enum
|
|
6
|
+
import pydantic
|
|
7
|
+
from typing import Optional
|
|
8
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PipelineFunctionSortID(str, Enum):
|
|
12
|
+
r"""Function ID"""
|
|
13
|
+
|
|
14
|
+
SORT = "sort"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class SortConfigurationTypedDict(TypedDict):
|
|
18
|
+
comparison_expression: str
|
|
19
|
+
r"""The expression can access the events via the 'left' and 'right' properties."""
|
|
20
|
+
sort_id: NotRequired[str]
|
|
21
|
+
r"""Has to be unique if there are multiple sorts on the pipeline."""
|
|
22
|
+
top_n: NotRequired[float]
|
|
23
|
+
r"""Limits the output to N (highest/lowest) events"""
|
|
24
|
+
max_events: NotRequired[float]
|
|
25
|
+
r"""Specifies the number of events that can flow into this function"""
|
|
26
|
+
suppress_previews: NotRequired[bool]
|
|
27
|
+
r"""Toggle this on to suppress generating previews of intermediate results"""
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class SortConfiguration(BaseModel):
|
|
31
|
+
comparison_expression: Annotated[str, pydantic.Field(alias="comparisonExpression")]
|
|
32
|
+
r"""The expression can access the events via the 'left' and 'right' properties."""
|
|
33
|
+
|
|
34
|
+
sort_id: Annotated[Optional[str], pydantic.Field(alias="sortId")] = None
|
|
35
|
+
r"""Has to be unique if there are multiple sorts on the pipeline."""
|
|
36
|
+
|
|
37
|
+
top_n: Annotated[Optional[float], pydantic.Field(alias="topN")] = None
|
|
38
|
+
r"""Limits the output to N (highest/lowest) events"""
|
|
39
|
+
|
|
40
|
+
max_events: Annotated[Optional[float], pydantic.Field(alias="maxEvents")] = None
|
|
41
|
+
r"""Specifies the number of events that can flow into this function"""
|
|
42
|
+
|
|
43
|
+
suppress_previews: Annotated[
|
|
44
|
+
Optional[bool], pydantic.Field(alias="suppressPreviews")
|
|
45
|
+
] = None
|
|
46
|
+
r"""Toggle this on to suppress generating previews of intermediate results"""
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
class PipelineFunctionSortTypedDict(TypedDict):
|
|
50
|
+
id: PipelineFunctionSortID
|
|
51
|
+
r"""Function ID"""
|
|
52
|
+
conf: SortConfigurationTypedDict
|
|
53
|
+
filter_: NotRequired[str]
|
|
54
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
55
|
+
description: NotRequired[str]
|
|
56
|
+
r"""Simple description of this step"""
|
|
57
|
+
disabled: NotRequired[bool]
|
|
58
|
+
r"""If true, data will not be pushed through this function"""
|
|
59
|
+
final: NotRequired[bool]
|
|
60
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
61
|
+
group_id: NotRequired[str]
|
|
62
|
+
r"""Group ID"""
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
class PipelineFunctionSort(BaseModel):
|
|
66
|
+
id: PipelineFunctionSortID
|
|
67
|
+
r"""Function ID"""
|
|
68
|
+
|
|
69
|
+
conf: SortConfiguration
|
|
70
|
+
|
|
71
|
+
filter_: Annotated[Optional[str], pydantic.Field(alias="filter")] = "true"
|
|
72
|
+
r"""Filter that selects data to be fed through this Function"""
|
|
73
|
+
|
|
74
|
+
description: Optional[str] = None
|
|
75
|
+
r"""Simple description of this step"""
|
|
76
|
+
|
|
77
|
+
disabled: Optional[bool] = None
|
|
78
|
+
r"""If true, data will not be pushed through this function"""
|
|
79
|
+
|
|
80
|
+
final: Optional[bool] = None
|
|
81
|
+
r"""If enabled, stops the results of this Function from being passed to the downstream Functions"""
|
|
82
|
+
|
|
83
|
+
group_id: Annotated[Optional[str], pydantic.Field(alias="groupId")] = None
|
|
84
|
+
r"""Group ID"""
|