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
@@ -0,0 +1,629 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .collectorconf import CollectorConf, CollectorConfTypedDict
5
+ from cribl_control_plane import models, utils
6
+ from cribl_control_plane.types import BaseModel
7
+ from cribl_control_plane.utils import validate_open_enum
8
+ from enum import Enum
9
+ import pydantic
10
+ from pydantic import field_serializer
11
+ from pydantic.functional_validators import PlainValidator
12
+ from typing import Any, List, Optional
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
14
+
15
+
16
+ class RunnableJobCollectionJobType(str, Enum, metaclass=utils.OpenEnumMeta):
17
+ COLLECTION = "collection"
18
+ EXECUTOR = "executor"
19
+ SCHEDULED_SEARCH = "scheduledSearch"
20
+
21
+
22
+ class RunnableJobCollectionRunType(str, Enum, metaclass=utils.OpenEnumMeta):
23
+ COLLECTION = "collection"
24
+
25
+
26
+ class RunnableJobCollectionScheduleLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
27
+ r"""Level at which to set task logging"""
28
+
29
+ ERROR = "error"
30
+ WARN = "warn"
31
+ INFO = "info"
32
+ DEBUG = "debug"
33
+ SILLY = "silly"
34
+
35
+
36
+ class RunnableJobCollectionScheduleTimeWarningTypedDict(TypedDict):
37
+ pass
38
+
39
+
40
+ class RunnableJobCollectionScheduleTimeWarning(BaseModel):
41
+ pass
42
+
43
+
44
+ class RunnableJobCollectionRunSettingsTypedDict(TypedDict):
45
+ type: NotRequired[RunnableJobCollectionRunType]
46
+ reschedule_dropped_tasks: NotRequired[bool]
47
+ r"""Reschedule tasks that failed with non-fatal errors"""
48
+ max_task_reschedule: NotRequired[float]
49
+ r"""Maximum number of times a task can be rescheduled"""
50
+ log_level: NotRequired[RunnableJobCollectionScheduleLogLevel]
51
+ r"""Level at which to set task logging"""
52
+ job_timeout: NotRequired[str]
53
+ r"""Maximum time the job is allowed to run. Time unit defaults to seconds if not specified (examples: 30, 45s, 15m). Enter 0 for unlimited time."""
54
+ mode: NotRequired[str]
55
+ r"""Job run mode. Preview will either return up to N matching results, or will run until capture time T is reached. Discovery will gather the list of files to turn into streaming tasks, without running the data collection job. Full Run will run the collection job."""
56
+ time_range_type: NotRequired[str]
57
+ earliest: NotRequired[float]
58
+ r"""Earliest time to collect data for the selected timezone"""
59
+ latest: NotRequired[float]
60
+ r"""Latest time to collect data for the selected timezone"""
61
+ timestamp_timezone: NotRequired[Any]
62
+ time_warning: NotRequired[RunnableJobCollectionScheduleTimeWarningTypedDict]
63
+ expression: NotRequired[str]
64
+ r"""A filter for tokens in the provided collect path and/or the events being collected"""
65
+ min_task_size: NotRequired[str]
66
+ r"""Limits the bundle size for small tasks. For example,
67
+
68
+
69
+ if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
70
+ """
71
+ max_task_size: NotRequired[str]
72
+ r"""Limits the bundle size for files above the lower task bundle size. For example, if your upper bundle size is 10MB,
73
+
74
+
75
+ you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
76
+ """
77
+
78
+
79
+ class RunnableJobCollectionRunSettings(BaseModel):
80
+ type: Annotated[
81
+ Optional[RunnableJobCollectionRunType],
82
+ PlainValidator(validate_open_enum(False)),
83
+ ] = None
84
+
85
+ reschedule_dropped_tasks: Annotated[
86
+ Optional[bool], pydantic.Field(alias="rescheduleDroppedTasks")
87
+ ] = True
88
+ r"""Reschedule tasks that failed with non-fatal errors"""
89
+
90
+ max_task_reschedule: Annotated[
91
+ Optional[float], pydantic.Field(alias="maxTaskReschedule")
92
+ ] = 1
93
+ r"""Maximum number of times a task can be rescheduled"""
94
+
95
+ log_level: Annotated[
96
+ Annotated[
97
+ Optional[RunnableJobCollectionScheduleLogLevel],
98
+ PlainValidator(validate_open_enum(False)),
99
+ ],
100
+ pydantic.Field(alias="logLevel"),
101
+ ] = RunnableJobCollectionScheduleLogLevel.INFO
102
+ r"""Level at which to set task logging"""
103
+
104
+ job_timeout: Annotated[Optional[str], pydantic.Field(alias="jobTimeout")] = "0"
105
+ r"""Maximum time the job is allowed to run. Time unit defaults to seconds if not specified (examples: 30, 45s, 15m). Enter 0 for unlimited time."""
106
+
107
+ mode: Optional[str] = "list"
108
+ r"""Job run mode. Preview will either return up to N matching results, or will run until capture time T is reached. Discovery will gather the list of files to turn into streaming tasks, without running the data collection job. Full Run will run the collection job."""
109
+
110
+ time_range_type: Annotated[Optional[str], pydantic.Field(alias="timeRangeType")] = (
111
+ "relative"
112
+ )
113
+
114
+ earliest: Optional[float] = None
115
+ r"""Earliest time to collect data for the selected timezone"""
116
+
117
+ latest: Optional[float] = None
118
+ r"""Latest time to collect data for the selected timezone"""
119
+
120
+ timestamp_timezone: Annotated[
121
+ Optional[Any], pydantic.Field(alias="timestampTimezone")
122
+ ] = None
123
+
124
+ time_warning: Annotated[
125
+ Optional[RunnableJobCollectionScheduleTimeWarning],
126
+ pydantic.Field(alias="timeWarning"),
127
+ ] = None
128
+
129
+ expression: Optional[str] = "true"
130
+ r"""A filter for tokens in the provided collect path and/or the events being collected"""
131
+
132
+ min_task_size: Annotated[Optional[str], pydantic.Field(alias="minTaskSize")] = "1MB"
133
+ r"""Limits the bundle size for small tasks. For example,
134
+
135
+
136
+ if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
137
+ """
138
+
139
+ max_task_size: Annotated[Optional[str], pydantic.Field(alias="maxTaskSize")] = (
140
+ "10MB"
141
+ )
142
+ r"""Limits the bundle size for files above the lower task bundle size. For example, if your upper bundle size is 10MB,
143
+
144
+
145
+ you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
146
+ """
147
+
148
+ @field_serializer("type")
149
+ def serialize_type(self, value):
150
+ if isinstance(value, str):
151
+ try:
152
+ return models.RunnableJobCollectionRunType(value)
153
+ except ValueError:
154
+ return value
155
+ return value
156
+
157
+ @field_serializer("log_level")
158
+ def serialize_log_level(self, value):
159
+ if isinstance(value, str):
160
+ try:
161
+ return models.RunnableJobCollectionScheduleLogLevel(value)
162
+ except ValueError:
163
+ return value
164
+ return value
165
+
166
+
167
+ class RunnableJobCollectionScheduleTypedDict(TypedDict):
168
+ r"""Configuration for a scheduled job"""
169
+
170
+ enabled: NotRequired[bool]
171
+ r"""Enable to configure scheduling for this Collector"""
172
+ skippable: NotRequired[bool]
173
+ r"""Skippable jobs can be delayed, up to their next run time, if the system is hitting concurrency limits"""
174
+ resume_missed: NotRequired[bool]
175
+ r"""If Stream Leader (or single instance) restarts, run all missed jobs according to their original schedules"""
176
+ cron_schedule: NotRequired[str]
177
+ r"""A cron schedule on which to run this job"""
178
+ max_concurrent_runs: NotRequired[float]
179
+ r"""The maximum number of instances of this scheduled job that may be running at any time"""
180
+ run: NotRequired[RunnableJobCollectionRunSettingsTypedDict]
181
+
182
+
183
+ class RunnableJobCollectionSchedule(BaseModel):
184
+ r"""Configuration for a scheduled job"""
185
+
186
+ enabled: Optional[bool] = None
187
+ r"""Enable to configure scheduling for this Collector"""
188
+
189
+ skippable: Optional[bool] = True
190
+ r"""Skippable jobs can be delayed, up to their next run time, if the system is hitting concurrency limits"""
191
+
192
+ resume_missed: Annotated[Optional[bool], pydantic.Field(alias="resumeMissed")] = (
193
+ False
194
+ )
195
+ r"""If Stream Leader (or single instance) restarts, run all missed jobs according to their original schedules"""
196
+
197
+ cron_schedule: Annotated[Optional[str], pydantic.Field(alias="cronSchedule")] = (
198
+ "*/5 * * * *"
199
+ )
200
+ r"""A cron schedule on which to run this job"""
201
+
202
+ max_concurrent_runs: Annotated[
203
+ Optional[float], pydantic.Field(alias="maxConcurrentRuns")
204
+ ] = 1
205
+ r"""The maximum number of instances of this scheduled job that may be running at any time"""
206
+
207
+ run: Optional[RunnableJobCollectionRunSettings] = None
208
+
209
+
210
+ class RunnableJobCollectionCollectorTypedDict(TypedDict):
211
+ type: str
212
+ r"""The type of collector to run"""
213
+ conf: CollectorConfTypedDict
214
+ r"""Collector configuration"""
215
+ destructive: NotRequired[bool]
216
+ r"""Delete any files collected (where applicable)"""
217
+ encoding: NotRequired[str]
218
+ r"""Character encoding to use when parsing ingested data. When not set, @{product} will default to UTF-8 but may incorrectly interpret multi-byte characters."""
219
+
220
+
221
+ class RunnableJobCollectionCollector(BaseModel):
222
+ type: str
223
+ r"""The type of collector to run"""
224
+
225
+ conf: CollectorConf
226
+ r"""Collector configuration"""
227
+
228
+ destructive: Optional[bool] = False
229
+ r"""Delete any files collected (where applicable)"""
230
+
231
+ encoding: Optional[str] = None
232
+ r"""Character encoding to use when parsing ingested data. When not set, @{product} will default to UTF-8 but may incorrectly interpret multi-byte characters."""
233
+
234
+
235
+ class RunnableJobCollectionInputType(str, Enum, metaclass=utils.OpenEnumMeta):
236
+ COLLECTION = "collection"
237
+
238
+
239
+ class RunnableJobCollectionPreprocessTypedDict(TypedDict):
240
+ disabled: NotRequired[bool]
241
+ command: NotRequired[str]
242
+ r"""Command to feed the data through (via stdin) and process its output (stdout)"""
243
+ args: NotRequired[List[str]]
244
+ r"""Arguments to be added to the custom command"""
245
+
246
+
247
+ class RunnableJobCollectionPreprocess(BaseModel):
248
+ disabled: Optional[bool] = True
249
+
250
+ command: Optional[str] = None
251
+ r"""Command to feed the data through (via stdin) and process its output (stdout)"""
252
+
253
+ args: Optional[List[str]] = None
254
+ r"""Arguments to be added to the custom command"""
255
+
256
+
257
+ class RunnableJobCollectionMetadatumTypedDict(TypedDict):
258
+ name: str
259
+ value: str
260
+ r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
261
+
262
+
263
+ class RunnableJobCollectionMetadatum(BaseModel):
264
+ name: str
265
+
266
+ value: str
267
+ r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
268
+
269
+
270
+ class RunnableJobCollectionInputTypedDict(TypedDict):
271
+ type: NotRequired[RunnableJobCollectionInputType]
272
+ breaker_rulesets: NotRequired[List[str]]
273
+ r"""A list of event-breaking rulesets that will be applied, in order, to the input data stream"""
274
+ stale_channel_flush_ms: NotRequired[float]
275
+ r"""How long (in milliseconds) the Event Breaker will wait for new data to be sent to a specific channel before flushing the data stream out, as is, to the Pipelines"""
276
+ send_to_routes: NotRequired[bool]
277
+ r"""Send events to normal routing and event processing. Disable to select a specific Pipeline/Destination combination."""
278
+ preprocess: NotRequired[RunnableJobCollectionPreprocessTypedDict]
279
+ throttle_rate_per_sec: NotRequired[str]
280
+ r"""Rate (in bytes per second) to throttle while writing to an output. Accepts values with multiple-byte units, such as KB, MB, and GB. (Example: 42 MB) Default value of 0 specifies no throttling."""
281
+ metadata: NotRequired[List[RunnableJobCollectionMetadatumTypedDict]]
282
+ r"""Fields to add to events from this input"""
283
+ pipeline: NotRequired[str]
284
+ r"""Pipeline to process results"""
285
+ output: NotRequired[str]
286
+ r"""Destination to send results to"""
287
+
288
+
289
+ class RunnableJobCollectionInput(BaseModel):
290
+ type: Annotated[
291
+ Optional[RunnableJobCollectionInputType],
292
+ PlainValidator(validate_open_enum(False)),
293
+ ] = RunnableJobCollectionInputType.COLLECTION
294
+
295
+ breaker_rulesets: Annotated[
296
+ Optional[List[str]], pydantic.Field(alias="breakerRulesets")
297
+ ] = None
298
+ r"""A list of event-breaking rulesets that will be applied, in order, to the input data stream"""
299
+
300
+ stale_channel_flush_ms: Annotated[
301
+ Optional[float], pydantic.Field(alias="staleChannelFlushMs")
302
+ ] = 10000
303
+ r"""How long (in milliseconds) the Event Breaker will wait for new data to be sent to a specific channel before flushing the data stream out, as is, to the Pipelines"""
304
+
305
+ send_to_routes: Annotated[Optional[bool], pydantic.Field(alias="sendToRoutes")] = (
306
+ True
307
+ )
308
+ r"""Send events to normal routing and event processing. Disable to select a specific Pipeline/Destination combination."""
309
+
310
+ preprocess: Optional[RunnableJobCollectionPreprocess] = None
311
+
312
+ throttle_rate_per_sec: Annotated[
313
+ Optional[str], pydantic.Field(alias="throttleRatePerSec")
314
+ ] = "0"
315
+ r"""Rate (in bytes per second) to throttle while writing to an output. Accepts values with multiple-byte units, such as KB, MB, and GB. (Example: 42 MB) Default value of 0 specifies no throttling."""
316
+
317
+ metadata: Optional[List[RunnableJobCollectionMetadatum]] = None
318
+ r"""Fields to add to events from this input"""
319
+
320
+ pipeline: Optional[str] = None
321
+ r"""Pipeline to process results"""
322
+
323
+ output: Optional[str] = None
324
+ r"""Destination to send results to"""
325
+
326
+ @field_serializer("type")
327
+ def serialize_type(self, value):
328
+ if isinstance(value, str):
329
+ try:
330
+ return models.RunnableJobCollectionInputType(value)
331
+ except ValueError:
332
+ return value
333
+ return value
334
+
335
+
336
+ class RunnableJobCollectionLogLevel(str, Enum, metaclass=utils.OpenEnumMeta):
337
+ r"""Level at which to set task logging"""
338
+
339
+ ERROR = "error"
340
+ WARN = "warn"
341
+ INFO = "info"
342
+ DEBUG = "debug"
343
+ SILLY = "silly"
344
+
345
+
346
+ class RunnableJobCollectionMode(str, Enum, metaclass=utils.OpenEnumMeta):
347
+ r"""Job run mode. Preview will either return up to N matching results, or will run until capture time T is reached. Discovery will gather the list of files to turn into streaming tasks, without running the data collection job. Full Run will run the collection job."""
348
+
349
+ LIST = "list"
350
+ PREVIEW = "preview"
351
+ RUN = "run"
352
+
353
+
354
+ class TimeRange(str, Enum, metaclass=utils.OpenEnumMeta):
355
+ ABSOLUTE = "absolute"
356
+ RELATIVE = "relative"
357
+
358
+
359
+ class RunnableJobCollectionTimeWarningTypedDict(TypedDict):
360
+ pass
361
+
362
+
363
+ class RunnableJobCollectionTimeWarning(BaseModel):
364
+ pass
365
+
366
+
367
+ class WhereToCapture(int, Enum, metaclass=utils.OpenEnumMeta):
368
+ # 1. Before pre-processing Pipeline
369
+ ZERO = 0
370
+ # 2. Before the Routes
371
+ ONE = 1
372
+ # 3. Before post-processing Pipeline
373
+ TWO = 2
374
+ # 4. Before the Destination
375
+ THREE = 3
376
+
377
+
378
+ class CaptureSettingsTypedDict(TypedDict):
379
+ duration: NotRequired[float]
380
+ r"""Amount of time to keep capture open, in seconds"""
381
+ max_events: NotRequired[float]
382
+ r"""Maximum number of events to capture"""
383
+ level: NotRequired[WhereToCapture]
384
+
385
+
386
+ class CaptureSettings(BaseModel):
387
+ duration: Optional[float] = 60
388
+ r"""Amount of time to keep capture open, in seconds"""
389
+
390
+ max_events: Annotated[Optional[float], pydantic.Field(alias="maxEvents")] = 100
391
+ r"""Maximum number of events to capture"""
392
+
393
+ level: Annotated[
394
+ Optional[WhereToCapture], PlainValidator(validate_open_enum(True))
395
+ ] = WhereToCapture.ZERO
396
+
397
+ @field_serializer("level")
398
+ def serialize_level(self, value):
399
+ if isinstance(value, str):
400
+ try:
401
+ return models.WhereToCapture(value)
402
+ except ValueError:
403
+ return value
404
+ return value
405
+
406
+
407
+ class RunnableJobCollectionRunTypedDict(TypedDict):
408
+ reschedule_dropped_tasks: NotRequired[bool]
409
+ r"""Reschedule tasks that failed with non-fatal errors"""
410
+ max_task_reschedule: NotRequired[float]
411
+ r"""Maximum number of times a task can be rescheduled"""
412
+ log_level: NotRequired[RunnableJobCollectionLogLevel]
413
+ r"""Level at which to set task logging"""
414
+ job_timeout: NotRequired[str]
415
+ r"""Maximum time the job is allowed to run. Time unit defaults to seconds if not specified (examples: 30, 45s, 15m). Enter 0 for unlimited time."""
416
+ mode: NotRequired[RunnableJobCollectionMode]
417
+ r"""Job run mode. Preview will either return up to N matching results, or will run until capture time T is reached. Discovery will gather the list of files to turn into streaming tasks, without running the data collection job. Full Run will run the collection job."""
418
+ time_range_type: NotRequired[TimeRange]
419
+ earliest: NotRequired[float]
420
+ r"""Earliest time to collect data for the selected timezone"""
421
+ latest: NotRequired[float]
422
+ r"""Latest time to collect data for the selected timezone"""
423
+ timestamp_timezone: NotRequired[str]
424
+ r"""Timezone to use for Earliest and Latest times"""
425
+ time_warning: NotRequired[RunnableJobCollectionTimeWarningTypedDict]
426
+ expression: NotRequired[str]
427
+ r"""A filter for tokens in the provided collect path and/or the events being collected"""
428
+ min_task_size: NotRequired[str]
429
+ r"""Limits the bundle size for small tasks. For example,
430
+
431
+
432
+ if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
433
+ """
434
+ max_task_size: NotRequired[str]
435
+ r"""Limits the bundle size for files above the lower task bundle size. For example, if your upper bundle size is 10MB,
436
+
437
+
438
+ you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
439
+ """
440
+ discover_to_routes: NotRequired[bool]
441
+ r"""Send discover results to Routes"""
442
+ capture: NotRequired[CaptureSettingsTypedDict]
443
+
444
+
445
+ class RunnableJobCollectionRun(BaseModel):
446
+ reschedule_dropped_tasks: Annotated[
447
+ Optional[bool], pydantic.Field(alias="rescheduleDroppedTasks")
448
+ ] = True
449
+ r"""Reschedule tasks that failed with non-fatal errors"""
450
+
451
+ max_task_reschedule: Annotated[
452
+ Optional[float], pydantic.Field(alias="maxTaskReschedule")
453
+ ] = 1
454
+ r"""Maximum number of times a task can be rescheduled"""
455
+
456
+ log_level: Annotated[
457
+ Annotated[
458
+ Optional[RunnableJobCollectionLogLevel],
459
+ PlainValidator(validate_open_enum(False)),
460
+ ],
461
+ pydantic.Field(alias="logLevel"),
462
+ ] = RunnableJobCollectionLogLevel.INFO
463
+ r"""Level at which to set task logging"""
464
+
465
+ job_timeout: Annotated[Optional[str], pydantic.Field(alias="jobTimeout")] = "0"
466
+ r"""Maximum time the job is allowed to run. Time unit defaults to seconds if not specified (examples: 30, 45s, 15m). Enter 0 for unlimited time."""
467
+
468
+ mode: Annotated[
469
+ Optional[RunnableJobCollectionMode], PlainValidator(validate_open_enum(False))
470
+ ] = RunnableJobCollectionMode.LIST
471
+ r"""Job run mode. Preview will either return up to N matching results, or will run until capture time T is reached. Discovery will gather the list of files to turn into streaming tasks, without running the data collection job. Full Run will run the collection job."""
472
+
473
+ time_range_type: Annotated[
474
+ Annotated[Optional[TimeRange], PlainValidator(validate_open_enum(False))],
475
+ pydantic.Field(alias="timeRangeType"),
476
+ ] = TimeRange.RELATIVE
477
+
478
+ earliest: Optional[float] = None
479
+ r"""Earliest time to collect data for the selected timezone"""
480
+
481
+ latest: Optional[float] = None
482
+ r"""Latest time to collect data for the selected timezone"""
483
+
484
+ timestamp_timezone: Annotated[
485
+ Optional[str], pydantic.Field(alias="timestampTimezone")
486
+ ] = "UTC"
487
+ r"""Timezone to use for Earliest and Latest times"""
488
+
489
+ time_warning: Annotated[
490
+ Optional[RunnableJobCollectionTimeWarning], pydantic.Field(alias="timeWarning")
491
+ ] = None
492
+
493
+ expression: Optional[str] = "true"
494
+ r"""A filter for tokens in the provided collect path and/or the events being collected"""
495
+
496
+ min_task_size: Annotated[Optional[str], pydantic.Field(alias="minTaskSize")] = "1MB"
497
+ r"""Limits the bundle size for small tasks. For example,
498
+
499
+
500
+ if your lower bundle size is 1MB, you can bundle up to five 200KB files into one task.
501
+ """
502
+
503
+ max_task_size: Annotated[Optional[str], pydantic.Field(alias="maxTaskSize")] = (
504
+ "10MB"
505
+ )
506
+ r"""Limits the bundle size for files above the lower task bundle size. For example, if your upper bundle size is 10MB,
507
+
508
+
509
+ you can bundle up to five 2MB files into one task. Files greater than this size will be assigned to individual tasks.
510
+ """
511
+
512
+ discover_to_routes: Annotated[
513
+ Optional[bool], pydantic.Field(alias="discoverToRoutes")
514
+ ] = False
515
+ r"""Send discover results to Routes"""
516
+
517
+ capture: Optional[CaptureSettings] = None
518
+
519
+ @field_serializer("log_level")
520
+ def serialize_log_level(self, value):
521
+ if isinstance(value, str):
522
+ try:
523
+ return models.RunnableJobCollectionLogLevel(value)
524
+ except ValueError:
525
+ return value
526
+ return value
527
+
528
+ @field_serializer("mode")
529
+ def serialize_mode(self, value):
530
+ if isinstance(value, str):
531
+ try:
532
+ return models.RunnableJobCollectionMode(value)
533
+ except ValueError:
534
+ return value
535
+ return value
536
+
537
+ @field_serializer("time_range_type")
538
+ def serialize_time_range_type(self, value):
539
+ if isinstance(value, str):
540
+ try:
541
+ return models.TimeRange(value)
542
+ except ValueError:
543
+ return value
544
+ return value
545
+
546
+
547
+ class RunnableJobCollectionTypedDict(TypedDict):
548
+ collector: RunnableJobCollectionCollectorTypedDict
549
+ run: RunnableJobCollectionRunTypedDict
550
+ id: NotRequired[str]
551
+ r"""Unique ID for this Job"""
552
+ description: NotRequired[str]
553
+ type: NotRequired[RunnableJobCollectionJobType]
554
+ ttl: NotRequired[str]
555
+ r"""Time to keep the job's artifacts on disk after job completion. This also affects how long a job is listed in the Job Inspector."""
556
+ ignore_group_jobs_limit: NotRequired[bool]
557
+ r"""When enabled, this job's artifacts are not counted toward the Worker Group's finished job artifacts limit. Artifacts will be removed only after the Collector's configured time to live."""
558
+ remove_fields: NotRequired[List[str]]
559
+ r"""List of fields to remove from Discover results. Wildcards (for example, aws*) are allowed. This is useful when discovery returns sensitive fields that should not be exposed in the Jobs user interface."""
560
+ resume_on_boot: NotRequired[bool]
561
+ r"""Resume the ad hoc job if a failure condition causes Stream to restart during job execution"""
562
+ environment: NotRequired[str]
563
+ r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
564
+ schedule: NotRequired[RunnableJobCollectionScheduleTypedDict]
565
+ r"""Configuration for a scheduled job"""
566
+ streamtags: NotRequired[List[str]]
567
+ r"""Tags for filtering and grouping in @{product}"""
568
+ worker_affinity: NotRequired[bool]
569
+ r"""If enabled, tasks are created and run by the same Worker Node"""
570
+ input: NotRequired[RunnableJobCollectionInputTypedDict]
571
+
572
+
573
+ class RunnableJobCollection(BaseModel):
574
+ collector: RunnableJobCollectionCollector
575
+
576
+ run: RunnableJobCollectionRun
577
+
578
+ id: Optional[str] = None
579
+ r"""Unique ID for this Job"""
580
+
581
+ description: Optional[str] = None
582
+
583
+ type: Annotated[
584
+ Optional[RunnableJobCollectionJobType],
585
+ PlainValidator(validate_open_enum(False)),
586
+ ] = None
587
+
588
+ ttl: Optional[str] = "4h"
589
+ r"""Time to keep the job's artifacts on disk after job completion. This also affects how long a job is listed in the Job Inspector."""
590
+
591
+ ignore_group_jobs_limit: Annotated[
592
+ Optional[bool], pydantic.Field(alias="ignoreGroupJobsLimit")
593
+ ] = False
594
+ r"""When enabled, this job's artifacts are not counted toward the Worker Group's finished job artifacts limit. Artifacts will be removed only after the Collector's configured time to live."""
595
+
596
+ remove_fields: Annotated[
597
+ Optional[List[str]], pydantic.Field(alias="removeFields")
598
+ ] = None
599
+ r"""List of fields to remove from Discover results. Wildcards (for example, aws*) are allowed. This is useful when discovery returns sensitive fields that should not be exposed in the Jobs user interface."""
600
+
601
+ resume_on_boot: Annotated[Optional[bool], pydantic.Field(alias="resumeOnBoot")] = (
602
+ False
603
+ )
604
+ r"""Resume the ad hoc job if a failure condition causes Stream to restart during job execution"""
605
+
606
+ environment: Optional[str] = None
607
+ r"""Optionally, enable this config only on a specified Git branch. If empty, will be enabled everywhere."""
608
+
609
+ schedule: Optional[RunnableJobCollectionSchedule] = None
610
+ r"""Configuration for a scheduled job"""
611
+
612
+ streamtags: Optional[List[str]] = None
613
+ r"""Tags for filtering and grouping in @{product}"""
614
+
615
+ worker_affinity: Annotated[
616
+ Optional[bool], pydantic.Field(alias="workerAffinity")
617
+ ] = False
618
+ r"""If enabled, tasks are created and run by the same Worker Node"""
619
+
620
+ input: Optional[RunnableJobCollectionInput] = None
621
+
622
+ @field_serializer("type")
623
+ def serialize_type(self, value):
624
+ if isinstance(value, str):
625
+ try:
626
+ return models.RunnableJobCollectionJobType(value)
627
+ except ValueError:
628
+ return value
629
+ return value