cribl-control-plane 0.0.39__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 (547) hide show
  1. cribl_control_plane/_hooks/clientcredentials.py +92 -42
  2. cribl_control_plane/_version.py +4 -4
  3. cribl_control_plane/acl.py +21 -9
  4. cribl_control_plane/auth_sdk.py +6 -3
  5. cribl_control_plane/basesdk.py +17 -1
  6. cribl_control_plane/branches.py +28 -8
  7. cribl_control_plane/collectors_sdk.py +993 -0
  8. cribl_control_plane/commits.py +119 -47
  9. cribl_control_plane/commits_files.py +44 -24
  10. cribl_control_plane/configs_versions.py +16 -10
  11. cribl_control_plane/cribl.py +495 -0
  12. cribl_control_plane/destinations.py +86 -34
  13. cribl_control_plane/destinations_pq.py +34 -14
  14. cribl_control_plane/errors/__init__.py +23 -8
  15. cribl_control_plane/errors/apierror.py +2 -0
  16. cribl_control_plane/errors/criblcontrolplaneerror.py +11 -7
  17. cribl_control_plane/errors/error.py +4 -2
  18. cribl_control_plane/errors/healthserverstatus_error.py +41 -0
  19. cribl_control_plane/errors/no_response_error.py +5 -1
  20. cribl_control_plane/errors/responsevalidationerror.py +2 -0
  21. cribl_control_plane/functions.py +367 -0
  22. cribl_control_plane/groups_configs.py +8 -3
  23. cribl_control_plane/groups_sdk.py +156 -94
  24. cribl_control_plane/health.py +34 -14
  25. cribl_control_plane/hectokens.py +44 -20
  26. cribl_control_plane/httpclient.py +0 -1
  27. cribl_control_plane/lakedatasets.py +156 -62
  28. cribl_control_plane/models/__init__.py +4736 -490
  29. cribl_control_plane/models/addhectokenrequest.py +7 -1
  30. cribl_control_plane/models/authtoken.py +5 -1
  31. cribl_control_plane/models/backupssettings_union.py +37 -0
  32. cribl_control_plane/models/{routecloneconf.py → branchinfo.py} +4 -4
  33. cribl_control_plane/models/cacheconnection.py +30 -2
  34. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  35. cribl_control_plane/models/cloudprovider.py +2 -1
  36. cribl_control_plane/models/collectorazureblob.py +130 -0
  37. cribl_control_plane/models/collectorconf.py +56 -0
  38. cribl_control_plane/models/collectorcribllake.py +27 -0
  39. cribl_control_plane/models/collectordatabase.py +92 -0
  40. cribl_control_plane/models/collectorfilesystem.py +66 -0
  41. cribl_control_plane/models/collectorgooglecloudstorage.py +131 -0
  42. cribl_control_plane/models/collectorhealthcheck.py +269 -0
  43. cribl_control_plane/models/collectorrest.py +340 -0
  44. cribl_control_plane/models/collectors3.py +239 -0
  45. cribl_control_plane/models/collectorscript.py +59 -0
  46. cribl_control_plane/models/collectorsplunk.py +253 -0
  47. cribl_control_plane/models/configgroup.py +65 -8
  48. cribl_control_plane/models/configgroupcloud.py +17 -3
  49. cribl_control_plane/models/countedbranchinfo.py +20 -0
  50. cribl_control_plane/models/countedconfiggroup.py +20 -0
  51. cribl_control_plane/models/countedcribllakedataset.py +20 -0
  52. cribl_control_plane/models/counteddistributedsummary.py +20 -0
  53. cribl_control_plane/models/countedfunctionresponse.py +20 -0
  54. cribl_control_plane/models/countedgitcommitsummary.py +20 -0
  55. cribl_control_plane/models/countedgitcountresult.py +20 -0
  56. cribl_control_plane/models/{createinputop.py → countedgitdiffresult.py} +5 -9
  57. cribl_control_plane/models/countedgitfilesresponse.py +20 -0
  58. cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
  59. cribl_control_plane/models/countedgitlogresult.py +20 -0
  60. cribl_control_plane/models/countedgitrevertresult.py +20 -0
  61. cribl_control_plane/models/countedgitshowresult.py +20 -0
  62. cribl_control_plane/models/countedgitstatusresult.py +20 -0
  63. cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
  64. cribl_control_plane/models/countedinputsplunkhec.py +20 -0
  65. cribl_control_plane/models/countedjobinfo.py +20 -0
  66. cribl_control_plane/models/countedmasterworkerentry.py +20 -0
  67. cribl_control_plane/models/countednumber.py +19 -0
  68. cribl_control_plane/models/{getversionbranchop.py → countedobject.py} +2 -6
  69. cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
  70. cribl_control_plane/models/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
  71. cribl_control_plane/models/countedoutputtestresponse.py +20 -0
  72. cribl_control_plane/models/countedpackinfo.py +20 -0
  73. cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
  74. cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
  75. cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
  76. cribl_control_plane/models/countedsavedjob.py +20 -0
  77. cribl_control_plane/models/countedstring.py +19 -0
  78. cribl_control_plane/models/countedsystemsettingsconf.py +20 -0
  79. cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
  80. cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
  81. cribl_control_plane/models/createauthloginop.py +18 -0
  82. cribl_control_plane/models/createconfiggroupbyproductop.py +26 -27
  83. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
  84. cribl_control_plane/models/createinputhectokenbyidop.py +1 -19
  85. cribl_control_plane/models/createoutputtestbyidop.py +1 -20
  86. cribl_control_plane/models/createroutesappendbyidop.py +4 -22
  87. cribl_control_plane/models/createsavedjobop.py +30 -0
  88. cribl_control_plane/models/createversioncommitop.py +1 -19
  89. cribl_control_plane/models/createversionrevertop.py +3 -21
  90. cribl_control_plane/models/createversionundoop.py +1 -18
  91. cribl_control_plane/models/criblevent.py +15 -0
  92. cribl_control_plane/models/cribllakedataset.py +23 -3
  93. cribl_control_plane/models/cribllakedatasetupdate.py +95 -0
  94. cribl_control_plane/models/datasetmetadata.py +18 -2
  95. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +18 -21
  96. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
  97. cribl_control_plane/models/deleteinputbyidop.py +1 -20
  98. cribl_control_plane/models/deleteoutputbyidop.py +1 -20
  99. cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
  100. cribl_control_plane/models/deletepacksbyidop.py +1 -20
  101. cribl_control_plane/models/deletepipelinebyidop.py +3 -22
  102. cribl_control_plane/models/deletesavedjobbyidop.py +42 -0
  103. cribl_control_plane/models/difffiles.py +130 -0
  104. cribl_control_plane/models/diffline.py +26 -0
  105. cribl_control_plane/models/difflinecontext.py +28 -0
  106. cribl_control_plane/models/difflinedelete.py +25 -0
  107. cribl_control_plane/models/difflineinsert.py +25 -0
  108. cribl_control_plane/models/distributedsummary.py +6 -0
  109. cribl_control_plane/models/functionaggregatemetrics.py +69 -0
  110. cribl_control_plane/models/functionaggregation.py +69 -0
  111. cribl_control_plane/models/functionautotimestamp.py +69 -0
  112. cribl_control_plane/models/functioncef.py +66 -0
  113. cribl_control_plane/models/functionchain.py +69 -0
  114. cribl_control_plane/models/functionclone.py +69 -0
  115. cribl_control_plane/models/functioncode.py +69 -0
  116. cribl_control_plane/models/functioncomment.py +69 -0
  117. cribl_control_plane/models/functionconfschemaaggregatemetrics.py +153 -0
  118. cribl_control_plane/models/functionconfschemaaggregation.py +114 -0
  119. cribl_control_plane/models/functionconfschemaautotimestamp.py +116 -0
  120. cribl_control_plane/models/functionconfschemacef.py +83 -0
  121. cribl_control_plane/models/functionconfschemachain.py +16 -0
  122. cribl_control_plane/models/functionconfschemaclone.py +16 -0
  123. cribl_control_plane/models/functionconfschemacode.py +38 -0
  124. cribl_control_plane/models/functionconfschemacomment.py +16 -0
  125. cribl_control_plane/models/functionconfschemadistinct.py +41 -0
  126. cribl_control_plane/models/functionconfschemadnslookup.py +193 -0
  127. cribl_control_plane/models/{lookupversions.py → functionconfschemadrop.py} +2 -2
  128. cribl_control_plane/models/functionconfschemadropdimensions.py +31 -0
  129. cribl_control_plane/models/functionconfschemadynamicsampling.py +67 -0
  130. cribl_control_plane/models/functionconfschemaeval.py +44 -0
  131. cribl_control_plane/models/functionconfschemaeventbreaker.py +51 -0
  132. cribl_control_plane/models/functionconfschemaeventstats.py +34 -0
  133. cribl_control_plane/models/functionconfschemaexternaldata.py +13 -0
  134. cribl_control_plane/models/functionconfschemaflatten.py +31 -0
  135. cribl_control_plane/models/functionconfschemafoldkeys.py +31 -0
  136. cribl_control_plane/models/functionconfschemagenstats.py +14 -0
  137. cribl_control_plane/models/functionconfschemageoip.py +66 -0
  138. cribl_control_plane/models/functionconfschemagrok.py +38 -0
  139. cribl_control_plane/models/functionconfschemahandlebar.py +56 -0
  140. cribl_control_plane/models/functionconfschemajoin.py +55 -0
  141. cribl_control_plane/models/functionconfschemajsonunroll.py +21 -0
  142. cribl_control_plane/models/functionconfschemalakeexport.py +44 -0
  143. cribl_control_plane/models/functionconfschemalimit.py +16 -0
  144. cribl_control_plane/models/functionconfschemalocalsearchdatatypeparser.py +17 -0
  145. cribl_control_plane/models/functionconfschemalocalsearchrulesetrunner.py +40 -0
  146. cribl_control_plane/models/functionconfschemalookup.py +92 -0
  147. cribl_control_plane/models/functionconfschemamask.py +63 -0
  148. cribl_control_plane/models/functionconfschemamvexpand.py +76 -0
  149. cribl_control_plane/models/functionconfschemamvpull.py +45 -0
  150. cribl_control_plane/models/functionconfschemanotificationpolicies.py +129 -0
  151. cribl_control_plane/models/functionconfschemanotifications.py +26 -0
  152. cribl_control_plane/models/functionconfschemanotify.py +149 -0
  153. cribl_control_plane/models/functionconfschemanumerify.py +63 -0
  154. cribl_control_plane/models/functionconfschemaotlplogs.py +24 -0
  155. cribl_control_plane/models/functionconfschemaotlpmetrics.py +61 -0
  156. cribl_control_plane/models/functionconfschemaotlptraces.py +54 -0
  157. cribl_control_plane/models/functionconfschemapack.py +24 -0
  158. cribl_control_plane/models/functionconfschemapivot.py +31 -0
  159. cribl_control_plane/models/functionconfschemapublishmetrics.py +98 -0
  160. cribl_control_plane/models/functionconfschemaredis.py +121 -0
  161. cribl_control_plane/models/functionconfschemaregexextract.py +55 -0
  162. cribl_control_plane/models/functionconfschemaregexfilter.py +38 -0
  163. cribl_control_plane/models/functionconfschemarename.py +49 -0
  164. cribl_control_plane/models/functionconfschemarollupmetrics.py +57 -0
  165. cribl_control_plane/models/functionconfschemasampling.py +32 -0
  166. cribl_control_plane/models/functionconfschemasend.py +84 -0
  167. cribl_control_plane/models/functionconfschemasensitivedatascanner.py +75 -0
  168. cribl_control_plane/models/functionconfschemaserde.py +105 -0
  169. cribl_control_plane/models/functionconfschemaserialize.py +78 -0
  170. cribl_control_plane/models/functionconfschemasidlookup.py +34 -0
  171. cribl_control_plane/models/functionconfschemasnmptrapserialize.py +92 -0
  172. cribl_control_plane/models/functionconfschemasort.py +41 -0
  173. cribl_control_plane/models/functionconfschemastore.py +75 -0
  174. cribl_control_plane/models/functionconfschemasuppress.py +57 -0
  175. cribl_control_plane/models/functionconfschematee.py +32 -0
  176. cribl_control_plane/models/functionconfschematrimtimestamp.py +16 -0
  177. cribl_control_plane/models/functionconfschemaunion.py +22 -0
  178. cribl_control_plane/models/functionconfschemaunroll.py +22 -0
  179. cribl_control_plane/models/functionconfschemawindow.py +40 -0
  180. cribl_control_plane/models/functionconfschemaxmlunroll.py +34 -0
  181. cribl_control_plane/models/functiondistinct.py +69 -0
  182. cribl_control_plane/models/functiondnslookup.py +69 -0
  183. cribl_control_plane/models/functiondrop.py +69 -0
  184. cribl_control_plane/models/functiondropdimensions.py +69 -0
  185. cribl_control_plane/models/functiondynamicsampling.py +69 -0
  186. cribl_control_plane/models/functioneval.py +69 -0
  187. cribl_control_plane/models/functioneventbreaker.py +69 -0
  188. cribl_control_plane/models/functioneventstats.py +69 -0
  189. cribl_control_plane/models/functionexternaldata.py +69 -0
  190. cribl_control_plane/models/functionflatten.py +69 -0
  191. cribl_control_plane/models/functionfoldkeys.py +69 -0
  192. cribl_control_plane/models/functiongenstats.py +69 -0
  193. cribl_control_plane/models/functiongeoip.py +69 -0
  194. cribl_control_plane/models/functiongrok.py +69 -0
  195. cribl_control_plane/models/functionhandlebar.py +69 -0
  196. cribl_control_plane/models/functionjoin.py +69 -0
  197. cribl_control_plane/models/functionjsonunroll.py +69 -0
  198. cribl_control_plane/models/functionlakeexport.py +69 -0
  199. cribl_control_plane/models/functionlimit.py +69 -0
  200. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +70 -0
  201. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +70 -0
  202. cribl_control_plane/models/functionlookup.py +69 -0
  203. cribl_control_plane/models/functionmask.py +69 -0
  204. cribl_control_plane/models/functionmvexpand.py +69 -0
  205. cribl_control_plane/models/functionmvpull.py +69 -0
  206. cribl_control_plane/models/functionnotificationpolicies.py +69 -0
  207. cribl_control_plane/models/functionnotifications.py +69 -0
  208. cribl_control_plane/models/functionnotify.py +69 -0
  209. cribl_control_plane/models/functionnumerify.py +69 -0
  210. cribl_control_plane/models/functionotlplogs.py +69 -0
  211. cribl_control_plane/models/functionotlpmetrics.py +69 -0
  212. cribl_control_plane/models/functionotlptraces.py +69 -0
  213. cribl_control_plane/models/functionpack.py +69 -0
  214. cribl_control_plane/models/functionpivot.py +69 -0
  215. cribl_control_plane/models/functionpublishmetrics.py +69 -0
  216. cribl_control_plane/models/functionredis.py +69 -0
  217. cribl_control_plane/models/functionregexextract.py +69 -0
  218. cribl_control_plane/models/functionregexfilter.py +69 -0
  219. cribl_control_plane/models/functionrename.py +69 -0
  220. cribl_control_plane/models/functionresponse.py +242 -0
  221. cribl_control_plane/models/functionrollupmetrics.py +69 -0
  222. cribl_control_plane/models/functionsampling.py +69 -0
  223. cribl_control_plane/models/functionsend.py +69 -0
  224. cribl_control_plane/models/functionsensitivedatascanner.py +69 -0
  225. cribl_control_plane/models/functionserde.py +69 -0
  226. cribl_control_plane/models/functionserialize.py +69 -0
  227. cribl_control_plane/models/functionsidlookup.py +69 -0
  228. cribl_control_plane/models/functionsnmptrapserialize.py +69 -0
  229. cribl_control_plane/models/functionsort.py +69 -0
  230. cribl_control_plane/models/functionstore.py +69 -0
  231. cribl_control_plane/models/functionsuppress.py +69 -0
  232. cribl_control_plane/models/functiontee.py +66 -0
  233. cribl_control_plane/models/functiontrimtimestamp.py +69 -0
  234. cribl_control_plane/models/functionunion.py +69 -0
  235. cribl_control_plane/models/functionunroll.py +69 -0
  236. cribl_control_plane/models/functionwindow.py +69 -0
  237. cribl_control_plane/models/functionxmlunroll.py +69 -0
  238. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +24 -20
  239. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +24 -20
  240. cribl_control_plane/models/getconfiggroupbyproductandidop.py +14 -19
  241. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +18 -20
  242. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
  243. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +54 -14
  244. cribl_control_plane/models/getfunctionsbyidop.py +18 -0
  245. cribl_control_plane/models/getinputbyidop.py +1 -20
  246. cribl_control_plane/models/getmasterworkerentryop.py +1 -18
  247. cribl_control_plane/models/getoutputbyidop.py +1 -20
  248. cribl_control_plane/models/getoutputpqbyidop.py +1 -19
  249. cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
  250. cribl_control_plane/models/getpacksbyidop.py +1 -20
  251. cribl_control_plane/models/getpacksop.py +1 -19
  252. cribl_control_plane/models/getpipelinebyidop.py +3 -22
  253. cribl_control_plane/models/getroutesbyidop.py +3 -22
  254. cribl_control_plane/models/getsavedjobbyidop.py +33 -0
  255. cribl_control_plane/models/getsavedjobop.py +40 -0
  256. cribl_control_plane/models/getsummaryop.py +18 -20
  257. cribl_control_plane/models/getversioncountop.py +3 -21
  258. cribl_control_plane/models/getversiondiffop.py +1 -18
  259. cribl_control_plane/models/getversionfilesop.py +3 -22
  260. cribl_control_plane/models/getversionop.py +1 -19
  261. cribl_control_plane/models/getversionshowop.py +1 -18
  262. cribl_control_plane/models/getversionstatusop.py +1 -19
  263. cribl_control_plane/models/gitcountresult.py +13 -0
  264. cribl_control_plane/models/gitdiffresult.py +16 -0
  265. cribl_control_plane/models/gitinfo.py +14 -3
  266. cribl_control_plane/models/gitshowresult.py +19 -0
  267. cribl_control_plane/models/groupcreaterequest.py +175 -0
  268. cribl_control_plane/models/hbcriblinfo.py +42 -7
  269. cribl_control_plane/models/healthserverstatus.py +55 -0
  270. cribl_control_plane/models/heartbeatmetadata.py +48 -11
  271. cribl_control_plane/models/input.py +83 -78
  272. cribl_control_plane/models/inputappscope.py +126 -30
  273. cribl_control_plane/models/inputazureblob.py +62 -6
  274. cribl_control_plane/models/inputcloudflarehec.py +518 -0
  275. cribl_control_plane/models/inputcollection.py +47 -4
  276. cribl_control_plane/models/inputconfluentcloud.py +258 -32
  277. cribl_control_plane/models/inputcribl.py +47 -4
  278. cribl_control_plane/models/inputcriblhttp.py +121 -30
  279. cribl_control_plane/models/inputcribllakehttp.py +136 -30
  280. cribl_control_plane/models/inputcriblmetrics.py +48 -4
  281. cribl_control_plane/models/inputcribltcp.py +122 -24
  282. cribl_control_plane/models/inputcrowdstrike.py +92 -10
  283. cribl_control_plane/models/inputdatadogagent.py +98 -24
  284. cribl_control_plane/models/inputdatagen.py +47 -4
  285. cribl_control_plane/models/inputedgeprometheus.py +218 -58
  286. cribl_control_plane/models/inputelastic.py +167 -36
  287. cribl_control_plane/models/inputeventhub.py +209 -6
  288. cribl_control_plane/models/inputexec.py +59 -6
  289. cribl_control_plane/models/inputfile.py +78 -10
  290. cribl_control_plane/models/inputfirehose.py +97 -24
  291. cribl_control_plane/models/inputgooglepubsub.py +67 -6
  292. cribl_control_plane/models/inputgrafana.py +251 -71
  293. cribl_control_plane/models/inputhttp.py +97 -24
  294. cribl_control_plane/models/inputhttpraw.py +97 -24
  295. cribl_control_plane/models/inputjournalfiles.py +48 -4
  296. cribl_control_plane/models/inputkafka.py +252 -28
  297. cribl_control_plane/models/inputkinesis.py +130 -14
  298. cribl_control_plane/models/inputkubeevents.py +47 -4
  299. cribl_control_plane/models/inputkubelogs.py +61 -8
  300. cribl_control_plane/models/inputkubemetrics.py +61 -8
  301. cribl_control_plane/models/inputloki.py +113 -34
  302. cribl_control_plane/models/inputmetrics.py +97 -24
  303. cribl_control_plane/models/inputmodeldriventelemetry.py +107 -26
  304. cribl_control_plane/models/inputmsk.py +145 -32
  305. cribl_control_plane/models/inputnetflow.py +47 -4
  306. cribl_control_plane/models/inputoffice365mgmt.py +112 -14
  307. cribl_control_plane/models/inputoffice365msgtrace.py +114 -16
  308. cribl_control_plane/models/inputoffice365service.py +114 -16
  309. cribl_control_plane/models/inputopentelemetry.py +143 -32
  310. cribl_control_plane/models/inputprometheus.py +211 -57
  311. cribl_control_plane/models/inputprometheusrw.py +114 -27
  312. cribl_control_plane/models/inputrawudp.py +47 -4
  313. cribl_control_plane/models/inputs3.py +78 -8
  314. cribl_control_plane/models/inputs3inventory.py +92 -10
  315. cribl_control_plane/models/inputsecuritylake.py +93 -10
  316. cribl_control_plane/models/inputsnmp.py +112 -21
  317. cribl_control_plane/models/inputsplunk.py +130 -28
  318. cribl_control_plane/models/inputsplunkhec.py +119 -29
  319. cribl_control_plane/models/inputsplunksearch.py +112 -15
  320. cribl_control_plane/models/inputsqs.py +99 -16
  321. cribl_control_plane/models/inputsyslog.py +189 -47
  322. cribl_control_plane/models/inputsystemmetrics.py +202 -32
  323. cribl_control_plane/models/inputsystemstate.py +61 -8
  324. cribl_control_plane/models/inputtcp.py +122 -26
  325. cribl_control_plane/models/inputtcpjson.py +112 -26
  326. cribl_control_plane/models/inputwef.py +144 -15
  327. cribl_control_plane/models/inputwindowsmetrics.py +186 -33
  328. cribl_control_plane/models/inputwineventlogs.py +93 -11
  329. cribl_control_plane/models/inputwiz.py +173 -8
  330. cribl_control_plane/models/inputwizwebhook.py +97 -24
  331. cribl_control_plane/models/inputzscalerhec.py +119 -29
  332. cribl_control_plane/models/jobinfo.py +34 -0
  333. cribl_control_plane/models/jobstatus.py +48 -0
  334. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  335. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  336. cribl_control_plane/models/listconfiggroupbyproductop.py +14 -19
  337. cribl_control_plane/models/listmasterworkerentryop.py +1 -19
  338. cribl_control_plane/models/logininfo.py +3 -3
  339. cribl_control_plane/models/masterworkerentry.py +20 -13
  340. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  341. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  342. cribl_control_plane/models/nodeprovidedinfo.py +55 -11
  343. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  344. cribl_control_plane/models/nodeupgradestate.py +2 -1
  345. cribl_control_plane/models/nodeupgradestatus.py +51 -5
  346. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  347. cribl_control_plane/models/output.py +111 -91
  348. cribl_control_plane/models/outputazureblob.py +171 -18
  349. cribl_control_plane/models/outputazuredataexplorer.py +514 -90
  350. cribl_control_plane/models/outputazureeventhub.py +315 -31
  351. cribl_control_plane/models/outputazurelogs.py +145 -26
  352. cribl_control_plane/models/outputchronicle.py +532 -0
  353. cribl_control_plane/models/outputclickhouse.py +236 -34
  354. cribl_control_plane/models/outputcloudflarer2.py +632 -0
  355. cribl_control_plane/models/outputcloudwatch.py +129 -23
  356. cribl_control_plane/models/outputconfluentcloud.py +384 -57
  357. cribl_control_plane/models/outputcriblhttp.py +205 -31
  358. cribl_control_plane/models/outputcribllake.py +156 -16
  359. cribl_control_plane/models/outputcriblsearchengine.py +655 -0
  360. cribl_control_plane/models/outputcribltcp.py +194 -29
  361. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +172 -28
  362. cribl_control_plane/models/outputdatabricks.py +501 -0
  363. cribl_control_plane/models/outputdatadog.py +199 -31
  364. cribl_control_plane/models/outputdataset.py +181 -29
  365. cribl_control_plane/models/outputdiskspool.py +17 -2
  366. cribl_control_plane/models/outputdls3.py +233 -24
  367. cribl_control_plane/models/outputdynatracehttp.py +208 -34
  368. cribl_control_plane/models/outputdynatraceotlp.py +210 -36
  369. cribl_control_plane/models/outputelastic.py +199 -30
  370. cribl_control_plane/models/outputelasticcloud.py +171 -26
  371. cribl_control_plane/models/outputexabeam.py +96 -10
  372. cribl_control_plane/models/outputfilesystem.py +139 -14
  373. cribl_control_plane/models/outputgooglechronicle.py +216 -35
  374. cribl_control_plane/models/outputgooglecloudlogging.py +174 -31
  375. cribl_control_plane/models/outputgooglecloudstorage.py +215 -24
  376. cribl_control_plane/models/outputgooglepubsub.py +131 -23
  377. cribl_control_plane/models/outputgrafanacloud.py +376 -74
  378. cribl_control_plane/models/outputgraphite.py +128 -25
  379. cribl_control_plane/models/outputhoneycomb.py +145 -26
  380. cribl_control_plane/models/outputhumiohec.py +162 -28
  381. cribl_control_plane/models/outputinfluxdb.py +165 -28
  382. cribl_control_plane/models/outputkafka.py +375 -52
  383. cribl_control_plane/models/outputkinesis.py +165 -27
  384. cribl_control_plane/models/outputloki.py +164 -34
  385. cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
  386. cribl_control_plane/models/outputminio.py +225 -25
  387. cribl_control_plane/models/outputmsk.py +267 -54
  388. cribl_control_plane/models/outputnetflow.py +16 -2
  389. cribl_control_plane/models/outputnewrelic.py +171 -29
  390. cribl_control_plane/models/outputnewrelicevents.py +163 -28
  391. cribl_control_plane/models/outputopentelemetry.py +240 -40
  392. cribl_control_plane/models/outputprometheus.py +145 -26
  393. cribl_control_plane/models/outputring.py +49 -8
  394. cribl_control_plane/models/outputs3.py +233 -26
  395. cribl_control_plane/models/outputsecuritylake.py +179 -18
  396. cribl_control_plane/models/outputsentinel.py +172 -29
  397. cribl_control_plane/models/outputsentineloneaisiem.py +178 -32
  398. cribl_control_plane/models/outputservicenow.py +223 -38
  399. cribl_control_plane/models/outputsignalfx.py +145 -26
  400. cribl_control_plane/models/outputsns.py +143 -25
  401. cribl_control_plane/models/outputsplunk.py +206 -36
  402. cribl_control_plane/models/outputsplunkhec.py +238 -26
  403. cribl_control_plane/models/outputsplunklb.py +262 -42
  404. cribl_control_plane/models/outputsqs.py +163 -33
  405. cribl_control_plane/models/outputstatsd.py +127 -25
  406. cribl_control_plane/models/outputstatsdext.py +128 -25
  407. cribl_control_plane/models/outputsumologic.py +146 -25
  408. cribl_control_plane/models/outputsyslog.py +318 -46
  409. cribl_control_plane/models/outputtcpjson.py +186 -32
  410. cribl_control_plane/models/outputwavefront.py +145 -26
  411. cribl_control_plane/models/outputwebhook.py +211 -33
  412. cribl_control_plane/models/outputxsiam.py +143 -26
  413. cribl_control_plane/models/packinfo.py +8 -5
  414. cribl_control_plane/models/packinstallinfo.py +11 -8
  415. cribl_control_plane/models/piisettings_union.py +31 -0
  416. cribl_control_plane/models/pipeline.py +52 -4
  417. cribl_control_plane/models/pipelinefunctionaggregatemetrics.py +195 -0
  418. cribl_control_plane/models/pipelinefunctionaggregation.py +159 -0
  419. cribl_control_plane/models/pipelinefunctionautotimestamp.py +56 -0
  420. cribl_control_plane/models/pipelinefunctioncef.py +96 -0
  421. cribl_control_plane/models/pipelinefunctionchain.py +62 -0
  422. cribl_control_plane/models/pipelinefunctionclone.py +56 -0
  423. cribl_control_plane/models/pipelinefunctioncode.py +56 -0
  424. cribl_control_plane/models/pipelinefunctioncomment.py +56 -0
  425. cribl_control_plane/models/pipelinefunctionconf.py +343 -46
  426. cribl_control_plane/models/pipelinefunctionconf_input.py +353 -0
  427. cribl_control_plane/models/pipelinefunctiondistinct.py +86 -0
  428. cribl_control_plane/models/pipelinefunctiondnslookup.py +56 -0
  429. cribl_control_plane/models/pipelinefunctiondrop.py +56 -0
  430. cribl_control_plane/models/pipelinefunctiondropdimensions.py +74 -0
  431. cribl_control_plane/models/pipelinefunctiondynamicsampling.py +111 -0
  432. cribl_control_plane/models/pipelinefunctioneval.py +56 -0
  433. cribl_control_plane/models/pipelinefunctioneventbreaker.py +95 -0
  434. cribl_control_plane/models/pipelinefunctioneventstats.py +79 -0
  435. cribl_control_plane/models/pipelinefunctionexternaldata.py +56 -0
  436. cribl_control_plane/models/pipelinefunctionflatten.py +56 -0
  437. cribl_control_plane/models/pipelinefunctionfoldkeys.py +56 -0
  438. cribl_control_plane/models/pipelinefunctiongenstats.py +56 -0
  439. cribl_control_plane/models/pipelinefunctiongeoip.py +109 -0
  440. cribl_control_plane/models/pipelinefunctiongrok.py +83 -0
  441. cribl_control_plane/models/pipelinefunctionhandlebar.py +99 -0
  442. cribl_control_plane/models/pipelinefunctionjoin.py +100 -0
  443. cribl_control_plane/models/pipelinefunctionjsonunroll.py +67 -0
  444. cribl_control_plane/models/pipelinefunctionlakeexport.py +89 -0
  445. cribl_control_plane/models/pipelinefunctionlimit.py +56 -0
  446. cribl_control_plane/models/pipelinefunctionlocalsearchdatatypeparser.py +62 -0
  447. cribl_control_plane/models/pipelinefunctionlocalsearchrulesetrunner.py +56 -0
  448. cribl_control_plane/models/pipelinefunctionlookup.py +136 -0
  449. cribl_control_plane/models/pipelinefunctionmask.py +108 -0
  450. cribl_control_plane/models/pipelinefunctionmvexpand.py +116 -0
  451. cribl_control_plane/models/pipelinefunctionmvpull.py +86 -0
  452. cribl_control_plane/models/pipelinefunctionnotificationpolicies.py +56 -0
  453. cribl_control_plane/models/pipelinefunctionnotifications.py +72 -0
  454. cribl_control_plane/models/pipelinefunctionnotify.py +189 -0
  455. cribl_control_plane/models/pipelinefunctionnumerify.py +56 -0
  456. cribl_control_plane/models/pipelinefunctionotlplogs.py +56 -0
  457. cribl_control_plane/models/pipelinefunctionotlpmetrics.py +56 -0
  458. cribl_control_plane/models/pipelinefunctionotlptraces.py +56 -0
  459. cribl_control_plane/models/pipelinefunctionpack.py +67 -0
  460. cribl_control_plane/models/pipelinefunctionpivot.py +72 -0
  461. cribl_control_plane/models/pipelinefunctionpublishmetrics.py +56 -0
  462. cribl_control_plane/models/pipelinefunctionredis.py +165 -0
  463. cribl_control_plane/models/pipelinefunctionregexextract.py +100 -0
  464. cribl_control_plane/models/pipelinefunctionregexfilter.py +56 -0
  465. cribl_control_plane/models/pipelinefunctionrename.py +56 -0
  466. cribl_control_plane/models/pipelinefunctionrollupmetrics.py +56 -0
  467. cribl_control_plane/models/pipelinefunctionsampling.py +56 -0
  468. cribl_control_plane/models/pipelinefunctionsend.py +128 -0
  469. cribl_control_plane/models/pipelinefunctionsensitivedatascanner.py +120 -0
  470. cribl_control_plane/models/pipelinefunctionserde.py +149 -0
  471. cribl_control_plane/models/pipelinefunctionserialize.py +122 -0
  472. cribl_control_plane/models/pipelinefunctionsidlookup.py +56 -0
  473. cribl_control_plane/models/pipelinefunctionsnmptrapserialize.py +56 -0
  474. cribl_control_plane/models/pipelinefunctionsort.py +84 -0
  475. cribl_control_plane/models/pipelinefunctionstore.py +120 -0
  476. cribl_control_plane/models/pipelinefunctionsuppress.py +102 -0
  477. cribl_control_plane/models/pipelinefunctiontee.py +77 -0
  478. cribl_control_plane/models/pipelinefunctiontrimtimestamp.py +56 -0
  479. cribl_control_plane/models/pipelinefunctionunion.py +67 -0
  480. cribl_control_plane/models/pipelinefunctionunroll.py +67 -0
  481. cribl_control_plane/models/pipelinefunctionwindow.py +83 -0
  482. cribl_control_plane/models/pipelinefunctionxmlunroll.py +79 -0
  483. cribl_control_plane/models/productscore.py +2 -1
  484. cribl_control_plane/models/rbacresource.py +2 -1
  485. cribl_control_plane/models/resourcepolicy.py +15 -2
  486. cribl_control_plane/models/rollbacksettings_union.py +44 -0
  487. cribl_control_plane/models/routeconf.py +3 -4
  488. cribl_control_plane/models/runnablejob.py +27 -0
  489. cribl_control_plane/models/runnablejobcollection.py +629 -0
  490. cribl_control_plane/models/runnablejobexecutor.py +360 -0
  491. cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
  492. cribl_control_plane/models/savedjob.py +26 -0
  493. cribl_control_plane/models/savedjobcollection.py +411 -0
  494. cribl_control_plane/models/savedjobexecutor.py +301 -0
  495. cribl_control_plane/models/savedjobscheduledsearch.py +278 -0
  496. cribl_control_plane/models/snisettings_union.py +31 -0
  497. cribl_control_plane/models/systemsettingsconf.py +291 -0
  498. cribl_control_plane/models/tlssettings_union.py +43 -0
  499. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +19 -20
  500. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +19 -21
  501. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +10 -25
  502. cribl_control_plane/models/updatehectokenrequest.py +7 -1
  503. cribl_control_plane/models/updateinputbyidop.py +1 -19
  504. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -19
  505. cribl_control_plane/models/updateoutputbyidop.py +1 -19
  506. cribl_control_plane/models/updatepacksbyidop.py +1 -20
  507. cribl_control_plane/models/updatepacksop.py +25 -0
  508. cribl_control_plane/models/updatepipelinebyidop.py +9 -26
  509. cribl_control_plane/models/updateroutesbyidop.py +3 -21
  510. cribl_control_plane/models/updatesavedjobbyidop.py +42 -0
  511. cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
  512. cribl_control_plane/models/upgradepackageurls.py +20 -0
  513. cribl_control_plane/models/upgradesettings.py +38 -0
  514. cribl_control_plane/models/uploadpackresponse.py +13 -0
  515. cribl_control_plane/models/workertypes.py +2 -1
  516. cribl_control_plane/nodes.py +37 -23
  517. cribl_control_plane/packs.py +292 -37
  518. cribl_control_plane/pipelines.py +114 -64
  519. cribl_control_plane/routes_sdk.py +86 -50
  520. cribl_control_plane/samples.py +32 -16
  521. cribl_control_plane/sdk.py +30 -6
  522. cribl_control_plane/settings.py +20 -0
  523. cribl_control_plane/sources.py +85 -33
  524. cribl_control_plane/statuses.py +16 -6
  525. cribl_control_plane/summaries.py +16 -6
  526. cribl_control_plane/system_sdk.py +20 -0
  527. cribl_control_plane/teams.py +16 -6
  528. cribl_control_plane/tokens.py +49 -21
  529. cribl_control_plane/utils/__init__.py +15 -3
  530. cribl_control_plane/utils/annotations.py +32 -8
  531. cribl_control_plane/utils/eventstreaming.py +10 -0
  532. cribl_control_plane/utils/forms.py +21 -10
  533. cribl_control_plane/utils/queryparams.py +14 -2
  534. cribl_control_plane/utils/retries.py +69 -5
  535. cribl_control_plane/utils/unmarshal_json_response.py +15 -1
  536. cribl_control_plane/versions.py +11 -6
  537. cribl_control_plane/versions_configs.py +16 -6
  538. {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.5.0b3.dist-info}/METADATA +106 -42
  539. cribl_control_plane-0.5.0b3.dist-info/RECORD +591 -0
  540. {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.5.0b3.dist-info}/WHEEL +1 -1
  541. cribl_control_plane-0.5.0b3.dist-info/licenses/LICENSE +201 -0
  542. cribl_control_plane/errors/healthstatus_error.py +0 -32
  543. cribl_control_plane/models/appmode.py +0 -13
  544. cribl_control_plane/models/createpipelineop.py +0 -24
  545. cribl_control_plane/models/createversionpushop.py +0 -23
  546. cribl_control_plane/models/healthstatus.py +0 -33
  547. cribl_control_plane-0.0.39.dist-info/RECORD +0 -315
@@ -1,9 +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
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
7
11
  from typing import List, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
@@ -12,55 +16,70 @@ class OutputFilesystemType(str, Enum):
12
16
  FILESYSTEM = "filesystem"
13
17
 
14
18
 
15
- class OutputFilesystemDataFormat(str, Enum):
19
+ class OutputFilesystemDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
16
20
  r"""Format of the output data"""
17
21
 
22
+ # JSON
18
23
  JSON = "json"
24
+ # Raw
19
25
  RAW = "raw"
26
+ # Parquet
20
27
  PARQUET = "parquet"
21
28
 
22
29
 
23
- class OutputFilesystemBackpressureBehavior(str, Enum):
30
+ class OutputFilesystemBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
24
31
  r"""How to handle events when all receivers are exerting backpressure"""
25
32
 
33
+ # Block
26
34
  BLOCK = "block"
35
+ # Drop
27
36
  DROP = "drop"
28
37
 
29
38
 
30
- class OutputFilesystemDiskSpaceProtection(str, Enum):
39
+ class OutputFilesystemDiskSpaceProtection(str, Enum, metaclass=utils.OpenEnumMeta):
31
40
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
32
41
 
42
+ # Block
33
43
  BLOCK = "block"
44
+ # Drop
34
45
  DROP = "drop"
35
46
 
36
47
 
37
- class OutputFilesystemCompression(str, Enum):
48
+ class OutputFilesystemCompression(str, Enum, metaclass=utils.OpenEnumMeta):
38
49
  r"""Data compression format to apply to HTTP content before it is delivered"""
39
50
 
40
51
  NONE = "none"
41
52
  GZIP = "gzip"
42
53
 
43
54
 
44
- class OutputFilesystemCompressionLevel(str, Enum):
55
+ class OutputFilesystemCompressionLevel(str, Enum, metaclass=utils.OpenEnumMeta):
45
56
  r"""Compression level to apply before moving files to final destination"""
46
57
 
58
+ # Best Speed
47
59
  BEST_SPEED = "best_speed"
60
+ # Normal
48
61
  NORMAL = "normal"
62
+ # Best Compression
49
63
  BEST_COMPRESSION = "best_compression"
50
64
 
51
65
 
52
- class OutputFilesystemParquetVersion(str, Enum):
66
+ class OutputFilesystemParquetVersion(str, Enum, metaclass=utils.OpenEnumMeta):
53
67
  r"""Determines which data types are supported and how they are represented"""
54
68
 
69
+ # 1.0
55
70
  PARQUET_1_0 = "PARQUET_1_0"
71
+ # 2.4
56
72
  PARQUET_2_4 = "PARQUET_2_4"
73
+ # 2.6
57
74
  PARQUET_2_6 = "PARQUET_2_6"
58
75
 
59
76
 
60
- class OutputFilesystemDataPageVersion(str, Enum):
77
+ class OutputFilesystemDataPageVersion(str, Enum, metaclass=utils.OpenEnumMeta):
61
78
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
62
79
 
80
+ # V1
63
81
  DATA_PAGE_V1 = "DATA_PAGE_V1"
82
+ # V2
64
83
  DATA_PAGE_V2 = "DATA_PAGE_V2"
65
84
 
66
85
 
@@ -121,6 +140,8 @@ class OutputFilesystemTypedDict(TypedDict):
121
140
  r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
122
141
  on_disk_full_backpressure: NotRequired[OutputFilesystemDiskSpaceProtection]
123
142
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
143
+ force_close_on_shutdown: NotRequired[bool]
144
+ r"""Force all staged files to close during an orderly Node shutdown. This triggers immediate upload of in-progress data — regardless of idle time, file age, or size thresholds — to minimize data loss."""
124
145
  description: NotRequired[str]
125
146
  compress: NotRequired[OutputFilesystemCompression]
126
147
  r"""Data compression format to apply to HTTP content before it is delivered"""
@@ -128,6 +149,8 @@ class OutputFilesystemTypedDict(TypedDict):
128
149
  r"""Compression level to apply before moving files to final destination"""
129
150
  automatic_schema: NotRequired[bool]
130
151
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
152
+ parquet_schema: NotRequired[str]
153
+ r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
131
154
  parquet_version: NotRequired[OutputFilesystemParquetVersion]
132
155
  r"""Determines which data types are supported and how they are represented"""
133
156
  parquet_data_page_version: NotRequired[OutputFilesystemDataPageVersion]
@@ -148,6 +171,8 @@ class OutputFilesystemTypedDict(TypedDict):
148
171
  r"""Parquet tools can use the checksum of a Parquet page to verify data integrity"""
149
172
  empty_dir_cleanup_sec: NotRequired[float]
150
173
  r"""How frequently, in seconds, to clean up empty directories"""
174
+ directory_batch_size: NotRequired[float]
175
+ r"""Number of directories to process in each batch during cleanup of empty directories. Minimum is 10, maximum is 10000. Higher values may require more memory."""
151
176
  deadletter_path: NotRequired[str]
152
177
  r"""Storage location for files that fail to reach their final destination after maximum retries are exceeded"""
153
178
  max_retry_num: NotRequired[float]
@@ -196,7 +221,11 @@ class OutputFilesystem(BaseModel):
196
221
  r"""JavaScript expression defining how files are partitioned and organized. Default is date-based. If blank, Stream will fall back to the event's __partition field value – if present – otherwise to each location's root directory."""
197
222
 
198
223
  format_: Annotated[
199
- Optional[OutputFilesystemDataFormat], pydantic.Field(alias="format")
224
+ Annotated[
225
+ Optional[OutputFilesystemDataFormat],
226
+ PlainValidator(validate_open_enum(False)),
227
+ ],
228
+ pydantic.Field(alias="format"),
200
229
  ] = OutputFilesystemDataFormat.JSON
201
230
  r"""Format of the output data"""
202
231
 
@@ -239,7 +268,10 @@ class OutputFilesystem(BaseModel):
239
268
  r"""Buffer size used to write to a file"""
240
269
 
241
270
  on_backpressure: Annotated[
242
- Optional[OutputFilesystemBackpressureBehavior],
271
+ Annotated[
272
+ Optional[OutputFilesystemBackpressureBehavior],
273
+ PlainValidator(validate_open_enum(False)),
274
+ ],
243
275
  pydantic.Field(alias="onBackpressure"),
244
276
  ] = OutputFilesystemBackpressureBehavior.BLOCK
245
277
  r"""How to handle events when all receivers are exerting backpressure"""
@@ -250,18 +282,31 @@ class OutputFilesystem(BaseModel):
250
282
  r"""If a file fails to move to its final destination after the maximum number of retries, move it to a designated directory to prevent further errors"""
251
283
 
252
284
  on_disk_full_backpressure: Annotated[
253
- Optional[OutputFilesystemDiskSpaceProtection],
285
+ Annotated[
286
+ Optional[OutputFilesystemDiskSpaceProtection],
287
+ PlainValidator(validate_open_enum(False)),
288
+ ],
254
289
  pydantic.Field(alias="onDiskFullBackpressure"),
255
290
  ] = OutputFilesystemDiskSpaceProtection.BLOCK
256
291
  r"""How to handle events when disk space is below the global 'Min free disk space' limit"""
257
292
 
293
+ force_close_on_shutdown: Annotated[
294
+ Optional[bool], pydantic.Field(alias="forceCloseOnShutdown")
295
+ ] = False
296
+ r"""Force all staged files to close during an orderly Node shutdown. This triggers immediate upload of in-progress data — regardless of idle time, file age, or size thresholds — to minimize data loss."""
297
+
258
298
  description: Optional[str] = None
259
299
 
260
- compress: Optional[OutputFilesystemCompression] = OutputFilesystemCompression.GZIP
300
+ compress: Annotated[
301
+ Optional[OutputFilesystemCompression], PlainValidator(validate_open_enum(False))
302
+ ] = OutputFilesystemCompression.GZIP
261
303
  r"""Data compression format to apply to HTTP content before it is delivered"""
262
304
 
263
305
  compression_level: Annotated[
264
- Optional[OutputFilesystemCompressionLevel],
306
+ Annotated[
307
+ Optional[OutputFilesystemCompressionLevel],
308
+ PlainValidator(validate_open_enum(False)),
309
+ ],
265
310
  pydantic.Field(alias="compressionLevel"),
266
311
  ] = OutputFilesystemCompressionLevel.BEST_SPEED
267
312
  r"""Compression level to apply before moving files to final destination"""
@@ -271,13 +316,25 @@ class OutputFilesystem(BaseModel):
271
316
  ] = False
272
317
  r"""Automatically calculate the schema based on the events of each Parquet file generated"""
273
318
 
319
+ parquet_schema: Annotated[Optional[str], pydantic.Field(alias="parquetSchema")] = (
320
+ None
321
+ )
322
+ r"""To add a new schema, navigate to Processing > Knowledge > Parquet Schemas"""
323
+
274
324
  parquet_version: Annotated[
275
- Optional[OutputFilesystemParquetVersion], pydantic.Field(alias="parquetVersion")
325
+ Annotated[
326
+ Optional[OutputFilesystemParquetVersion],
327
+ PlainValidator(validate_open_enum(False)),
328
+ ],
329
+ pydantic.Field(alias="parquetVersion"),
276
330
  ] = OutputFilesystemParquetVersion.PARQUET_2_6
277
331
  r"""Determines which data types are supported and how they are represented"""
278
332
 
279
333
  parquet_data_page_version: Annotated[
280
- Optional[OutputFilesystemDataPageVersion],
334
+ Annotated[
335
+ Optional[OutputFilesystemDataPageVersion],
336
+ PlainValidator(validate_open_enum(False)),
337
+ ],
281
338
  pydantic.Field(alias="parquetDataPageVersion"),
282
339
  ] = OutputFilesystemDataPageVersion.DATA_PAGE_V2
283
340
  r"""Serialization format of data pages. Note that some reader implementations use Data page V2's attributes to work more efficiently, while others ignore it."""
@@ -323,6 +380,11 @@ class OutputFilesystem(BaseModel):
323
380
  ] = 300
324
381
  r"""How frequently, in seconds, to clean up empty directories"""
325
382
 
383
+ directory_batch_size: Annotated[
384
+ Optional[float], pydantic.Field(alias="directoryBatchSize")
385
+ ] = 1000
386
+ r"""Number of directories to process in each batch during cleanup of empty directories. Minimum is 10, maximum is 10000. Higher values may require more memory."""
387
+
326
388
  deadletter_path: Annotated[
327
389
  Optional[str], pydantic.Field(alias="deadletterPath")
328
390
  ] = "$CRIBL_HOME/state/outputs/dead-letter"
@@ -330,3 +392,66 @@ class OutputFilesystem(BaseModel):
330
392
 
331
393
  max_retry_num: Annotated[Optional[float], pydantic.Field(alias="maxRetryNum")] = 20
332
394
  r"""The maximum number of times a file will attempt to move to its final destination before being dead-lettered"""
395
+
396
+ @field_serializer("format_")
397
+ def serialize_format_(self, value):
398
+ if isinstance(value, str):
399
+ try:
400
+ return models.OutputFilesystemDataFormat(value)
401
+ except ValueError:
402
+ return value
403
+ return value
404
+
405
+ @field_serializer("on_backpressure")
406
+ def serialize_on_backpressure(self, value):
407
+ if isinstance(value, str):
408
+ try:
409
+ return models.OutputFilesystemBackpressureBehavior(value)
410
+ except ValueError:
411
+ return value
412
+ return value
413
+
414
+ @field_serializer("on_disk_full_backpressure")
415
+ def serialize_on_disk_full_backpressure(self, value):
416
+ if isinstance(value, str):
417
+ try:
418
+ return models.OutputFilesystemDiskSpaceProtection(value)
419
+ except ValueError:
420
+ return value
421
+ return value
422
+
423
+ @field_serializer("compress")
424
+ def serialize_compress(self, value):
425
+ if isinstance(value, str):
426
+ try:
427
+ return models.OutputFilesystemCompression(value)
428
+ except ValueError:
429
+ return value
430
+ return value
431
+
432
+ @field_serializer("compression_level")
433
+ def serialize_compression_level(self, value):
434
+ if isinstance(value, str):
435
+ try:
436
+ return models.OutputFilesystemCompressionLevel(value)
437
+ except ValueError:
438
+ return value
439
+ return value
440
+
441
+ @field_serializer("parquet_version")
442
+ def serialize_parquet_version(self, value):
443
+ if isinstance(value, str):
444
+ try:
445
+ return models.OutputFilesystemParquetVersion(value)
446
+ except ValueError:
447
+ return value
448
+ return value
449
+
450
+ @field_serializer("parquet_data_page_version")
451
+ def serialize_parquet_data_page_version(self, value):
452
+ if isinstance(value, str):
453
+ try:
454
+ return models.OutputFilesystemDataPageVersion(value)
455
+ except ValueError:
456
+ return value
457
+ return value