cribl-control-plane 0.0.39__py3-none-any.whl → 0.4.0b23__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 (403) 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/commits.py +119 -47
  8. cribl_control_plane/commits_files.py +44 -24
  9. cribl_control_plane/configs_versions.py +16 -10
  10. cribl_control_plane/cribl.py +495 -0
  11. cribl_control_plane/destinations.py +86 -34
  12. cribl_control_plane/destinations_pq.py +34 -14
  13. cribl_control_plane/errors/__init__.py +23 -8
  14. cribl_control_plane/errors/apierror.py +2 -0
  15. cribl_control_plane/errors/criblcontrolplaneerror.py +11 -7
  16. cribl_control_plane/errors/error.py +4 -2
  17. cribl_control_plane/errors/healthserverstatus_error.py +41 -0
  18. cribl_control_plane/errors/no_response_error.py +5 -1
  19. cribl_control_plane/errors/responsevalidationerror.py +2 -0
  20. cribl_control_plane/functions.py +367 -0
  21. cribl_control_plane/groups_configs.py +8 -3
  22. cribl_control_plane/groups_sdk.py +156 -94
  23. cribl_control_plane/health.py +34 -14
  24. cribl_control_plane/hectokens.py +44 -20
  25. cribl_control_plane/httpclient.py +0 -1
  26. cribl_control_plane/lakedatasets.py +156 -62
  27. cribl_control_plane/models/__init__.py +3298 -479
  28. cribl_control_plane/models/addhectokenrequest.py +7 -1
  29. cribl_control_plane/models/authtoken.py +5 -1
  30. cribl_control_plane/models/backupssettings_union.py +37 -0
  31. cribl_control_plane/models/{lookupversions.py → branchinfo.py} +4 -4
  32. cribl_control_plane/models/cacheconnection.py +30 -2
  33. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  34. cribl_control_plane/models/cloudprovider.py +2 -1
  35. cribl_control_plane/models/collectorazureblob.py +130 -0
  36. cribl_control_plane/models/collectorconf.py +56 -0
  37. cribl_control_plane/models/collectorcribllake.py +27 -0
  38. cribl_control_plane/models/collectordatabase.py +92 -0
  39. cribl_control_plane/models/collectorfilesystem.py +66 -0
  40. cribl_control_plane/models/collectorgooglecloudstorage.py +131 -0
  41. cribl_control_plane/models/collectorhealthcheck.py +269 -0
  42. cribl_control_plane/models/collectorrest.py +340 -0
  43. cribl_control_plane/models/collectors3.py +239 -0
  44. cribl_control_plane/models/collectorscript.py +59 -0
  45. cribl_control_plane/models/collectorsplunk.py +253 -0
  46. cribl_control_plane/models/configgroup.py +62 -8
  47. cribl_control_plane/models/configgroupcloud.py +17 -3
  48. cribl_control_plane/models/countedbranchinfo.py +20 -0
  49. cribl_control_plane/models/countedconfiggroup.py +20 -0
  50. cribl_control_plane/models/countedcribllakedataset.py +20 -0
  51. cribl_control_plane/models/counteddistributedsummary.py +20 -0
  52. cribl_control_plane/models/countedfunctionresponse.py +20 -0
  53. cribl_control_plane/models/countedgitcommitsummary.py +20 -0
  54. cribl_control_plane/models/countedgitcountresult.py +20 -0
  55. cribl_control_plane/models/{createinputop.py → countedgitdiffresult.py} +5 -9
  56. cribl_control_plane/models/countedgitfilesresponse.py +20 -0
  57. cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
  58. cribl_control_plane/models/countedgitlogresult.py +20 -0
  59. cribl_control_plane/models/countedgitrevertresult.py +20 -0
  60. cribl_control_plane/models/countedgitshowresult.py +20 -0
  61. cribl_control_plane/models/countedgitstatusresult.py +20 -0
  62. cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
  63. cribl_control_plane/models/countedinputsplunkhec.py +20 -0
  64. cribl_control_plane/models/countedjobinfo.py +20 -0
  65. cribl_control_plane/models/countedmasterworkerentry.py +20 -0
  66. cribl_control_plane/models/countednumber.py +19 -0
  67. cribl_control_plane/models/{getversionbranchop.py → countedobject.py} +2 -6
  68. cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
  69. cribl_control_plane/models/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
  70. cribl_control_plane/models/countedoutputtestresponse.py +20 -0
  71. cribl_control_plane/models/countedpackinfo.py +20 -0
  72. cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
  73. cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
  74. cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
  75. cribl_control_plane/models/countedstring.py +19 -0
  76. cribl_control_plane/models/countedsystemsettingsconf.py +20 -0
  77. cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
  78. cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
  79. cribl_control_plane/models/createauthloginop.py +18 -0
  80. cribl_control_plane/models/createconfiggroupbyproductop.py +26 -27
  81. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
  82. cribl_control_plane/models/createinputhectokenbyidop.py +1 -19
  83. cribl_control_plane/models/createoutputtestbyidop.py +1 -20
  84. cribl_control_plane/models/createroutesappendbyidop.py +4 -22
  85. cribl_control_plane/models/createversioncommitop.py +1 -19
  86. cribl_control_plane/models/createversionrevertop.py +3 -21
  87. cribl_control_plane/models/createversionundoop.py +1 -18
  88. cribl_control_plane/models/criblevent.py +15 -0
  89. cribl_control_plane/models/cribllakedataset.py +23 -3
  90. cribl_control_plane/models/cribllakedatasetupdate.py +95 -0
  91. cribl_control_plane/models/datasetmetadata.py +18 -2
  92. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +18 -21
  93. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
  94. cribl_control_plane/models/deleteinputbyidop.py +1 -20
  95. cribl_control_plane/models/deleteoutputbyidop.py +1 -20
  96. cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
  97. cribl_control_plane/models/deletepacksbyidop.py +1 -20
  98. cribl_control_plane/models/deletepipelinebyidop.py +3 -22
  99. cribl_control_plane/models/difffiles.py +130 -0
  100. cribl_control_plane/models/diffline.py +26 -0
  101. cribl_control_plane/models/difflinecontext.py +28 -0
  102. cribl_control_plane/models/difflinedelete.py +25 -0
  103. cribl_control_plane/models/difflineinsert.py +25 -0
  104. cribl_control_plane/models/distributedsummary.py +6 -0
  105. cribl_control_plane/models/functionaggregatemetrics.py +206 -0
  106. cribl_control_plane/models/functionaggregation.py +172 -0
  107. cribl_control_plane/models/functionautotimestamp.py +173 -0
  108. cribl_control_plane/models/functioncef.py +111 -0
  109. cribl_control_plane/models/functionchain.py +75 -0
  110. cribl_control_plane/models/functionclone.py +75 -0
  111. cribl_control_plane/models/functioncode.py +96 -0
  112. cribl_control_plane/models/functioncomment.py +75 -0
  113. cribl_control_plane/models/functiondistinct.py +99 -0
  114. cribl_control_plane/models/functiondnslookup.py +250 -0
  115. cribl_control_plane/models/functiondrop.py +73 -0
  116. cribl_control_plane/models/functiondropdimensions.py +87 -0
  117. cribl_control_plane/models/functiondynamicsampling.py +121 -0
  118. cribl_control_plane/models/functioneval.py +103 -0
  119. cribl_control_plane/models/functioneventbreaker.py +103 -0
  120. cribl_control_plane/models/functioneventstats.py +92 -0
  121. cribl_control_plane/models/functionexternaldata.py +73 -0
  122. cribl_control_plane/models/functionflatten.py +90 -0
  123. cribl_control_plane/models/functionfoldkeys.py +89 -0
  124. cribl_control_plane/models/functiongenstats.py +73 -0
  125. cribl_control_plane/models/functiongeoip.py +120 -0
  126. cribl_control_plane/models/functiongrok.py +95 -0
  127. cribl_control_plane/models/functionhandlebar.py +112 -0
  128. cribl_control_plane/models/functionjoin.py +112 -0
  129. cribl_control_plane/models/functionjsonunroll.py +80 -0
  130. cribl_control_plane/models/functionlakeexport.py +102 -0
  131. cribl_control_plane/models/functionlimit.py +75 -0
  132. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
  133. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
  134. cribl_control_plane/models/functionlookup.py +148 -0
  135. cribl_control_plane/models/functionmask.py +121 -0
  136. cribl_control_plane/models/functionmvexpand.py +128 -0
  137. cribl_control_plane/models/functionmvpull.py +99 -0
  138. cribl_control_plane/models/functionnotificationpolicies.py +186 -0
  139. cribl_control_plane/models/functionnotifications.py +85 -0
  140. cribl_control_plane/models/functionnotify.py +196 -0
  141. cribl_control_plane/models/functionnumerify.py +119 -0
  142. cribl_control_plane/models/functionotlplogs.py +82 -0
  143. cribl_control_plane/models/functionotlpmetrics.py +118 -0
  144. cribl_control_plane/models/functionotlptraces.py +111 -0
  145. cribl_control_plane/models/functionpack.py +80 -0
  146. cribl_control_plane/models/functionpivot.py +85 -0
  147. cribl_control_plane/models/functionpublishmetrics.py +153 -0
  148. cribl_control_plane/models/functionredis.py +173 -0
  149. cribl_control_plane/models/functionregexextract.py +112 -0
  150. cribl_control_plane/models/functionregexfilter.py +95 -0
  151. cribl_control_plane/models/functionrename.py +107 -0
  152. cribl_control_plane/models/functionresponse.py +242 -0
  153. cribl_control_plane/models/functionrollupmetrics.py +114 -0
  154. cribl_control_plane/models/functionsampling.py +90 -0
  155. cribl_control_plane/models/functionsend.py +141 -0
  156. cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
  157. cribl_control_plane/models/functionserde.py +161 -0
  158. cribl_control_plane/models/functionserialize.py +134 -0
  159. cribl_control_plane/models/functionsidlookup.py +93 -0
  160. cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
  161. cribl_control_plane/models/functionsort.py +97 -0
  162. cribl_control_plane/models/functionstore.py +132 -0
  163. cribl_control_plane/models/functionsuppress.py +115 -0
  164. cribl_control_plane/models/functiontee.py +90 -0
  165. cribl_control_plane/models/functiontrimtimestamp.py +75 -0
  166. cribl_control_plane/models/functionunion.py +80 -0
  167. cribl_control_plane/models/functionunroll.py +80 -0
  168. cribl_control_plane/models/functionwindow.py +96 -0
  169. cribl_control_plane/models/functionxmlunroll.py +92 -0
  170. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +24 -20
  171. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +24 -20
  172. cribl_control_plane/models/getconfiggroupbyproductandidop.py +14 -19
  173. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +18 -20
  174. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
  175. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +54 -14
  176. cribl_control_plane/models/getfunctionsbyidop.py +18 -0
  177. cribl_control_plane/models/getinputbyidop.py +1 -20
  178. cribl_control_plane/models/getmasterworkerentryop.py +1 -18
  179. cribl_control_plane/models/getoutputbyidop.py +1 -20
  180. cribl_control_plane/models/getoutputpqbyidop.py +1 -19
  181. cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
  182. cribl_control_plane/models/getpacksbyidop.py +1 -20
  183. cribl_control_plane/models/getpacksop.py +1 -19
  184. cribl_control_plane/models/getpipelinebyidop.py +3 -22
  185. cribl_control_plane/models/getroutesbyidop.py +3 -22
  186. cribl_control_plane/models/getsummaryop.py +18 -20
  187. cribl_control_plane/models/getversioncountop.py +3 -21
  188. cribl_control_plane/models/getversiondiffop.py +1 -18
  189. cribl_control_plane/models/getversionfilesop.py +3 -22
  190. cribl_control_plane/models/getversionop.py +1 -19
  191. cribl_control_plane/models/getversionshowop.py +1 -18
  192. cribl_control_plane/models/getversionstatusop.py +1 -19
  193. cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
  194. cribl_control_plane/models/gitdiffresult.py +16 -0
  195. cribl_control_plane/models/gitinfo.py +14 -3
  196. cribl_control_plane/models/gitshowresult.py +19 -0
  197. cribl_control_plane/models/groupcreaterequest.py +172 -0
  198. cribl_control_plane/models/hbcriblinfo.py +42 -7
  199. cribl_control_plane/models/healthserverstatus.py +55 -0
  200. cribl_control_plane/models/heartbeatmetadata.py +6 -11
  201. cribl_control_plane/models/input.py +83 -78
  202. cribl_control_plane/models/inputappscope.py +126 -30
  203. cribl_control_plane/models/inputazureblob.py +62 -6
  204. cribl_control_plane/models/inputcloudflarehec.py +518 -0
  205. cribl_control_plane/models/inputcollection.py +47 -4
  206. cribl_control_plane/models/inputconfluentcloud.py +258 -32
  207. cribl_control_plane/models/inputcribl.py +47 -4
  208. cribl_control_plane/models/inputcriblhttp.py +121 -30
  209. cribl_control_plane/models/inputcribllakehttp.py +136 -30
  210. cribl_control_plane/models/inputcriblmetrics.py +48 -4
  211. cribl_control_plane/models/inputcribltcp.py +122 -24
  212. cribl_control_plane/models/inputcrowdstrike.py +92 -10
  213. cribl_control_plane/models/inputdatadogagent.py +98 -24
  214. cribl_control_plane/models/inputdatagen.py +47 -4
  215. cribl_control_plane/models/inputedgeprometheus.py +210 -50
  216. cribl_control_plane/models/inputelastic.py +167 -36
  217. cribl_control_plane/models/inputeventhub.py +209 -6
  218. cribl_control_plane/models/inputexec.py +59 -6
  219. cribl_control_plane/models/inputfile.py +78 -10
  220. cribl_control_plane/models/inputfirehose.py +97 -24
  221. cribl_control_plane/models/inputgooglepubsub.py +67 -6
  222. cribl_control_plane/models/inputgrafana.py +251 -71
  223. cribl_control_plane/models/inputhttp.py +97 -24
  224. cribl_control_plane/models/inputhttpraw.py +97 -24
  225. cribl_control_plane/models/inputjournalfiles.py +48 -4
  226. cribl_control_plane/models/inputkafka.py +252 -28
  227. cribl_control_plane/models/inputkinesis.py +130 -14
  228. cribl_control_plane/models/inputkubeevents.py +47 -4
  229. cribl_control_plane/models/inputkubelogs.py +61 -8
  230. cribl_control_plane/models/inputkubemetrics.py +61 -8
  231. cribl_control_plane/models/inputloki.py +113 -34
  232. cribl_control_plane/models/inputmetrics.py +97 -24
  233. cribl_control_plane/models/inputmodeldriventelemetry.py +107 -26
  234. cribl_control_plane/models/inputmsk.py +145 -32
  235. cribl_control_plane/models/inputnetflow.py +47 -4
  236. cribl_control_plane/models/inputoffice365mgmt.py +112 -14
  237. cribl_control_plane/models/inputoffice365msgtrace.py +114 -16
  238. cribl_control_plane/models/inputoffice365service.py +114 -16
  239. cribl_control_plane/models/inputopentelemetry.py +143 -32
  240. cribl_control_plane/models/inputprometheus.py +193 -44
  241. cribl_control_plane/models/inputprometheusrw.py +114 -27
  242. cribl_control_plane/models/inputrawudp.py +47 -4
  243. cribl_control_plane/models/inputs3.py +78 -8
  244. cribl_control_plane/models/inputs3inventory.py +92 -10
  245. cribl_control_plane/models/inputsecuritylake.py +93 -10
  246. cribl_control_plane/models/inputsnmp.py +112 -21
  247. cribl_control_plane/models/inputsplunk.py +130 -28
  248. cribl_control_plane/models/inputsplunkhec.py +119 -29
  249. cribl_control_plane/models/inputsplunksearch.py +112 -15
  250. cribl_control_plane/models/inputsqs.py +99 -16
  251. cribl_control_plane/models/inputsyslog.py +189 -47
  252. cribl_control_plane/models/inputsystemmetrics.py +202 -32
  253. cribl_control_plane/models/inputsystemstate.py +61 -8
  254. cribl_control_plane/models/inputtcp.py +122 -26
  255. cribl_control_plane/models/inputtcpjson.py +112 -26
  256. cribl_control_plane/models/inputwef.py +144 -15
  257. cribl_control_plane/models/inputwindowsmetrics.py +186 -33
  258. cribl_control_plane/models/inputwineventlogs.py +93 -11
  259. cribl_control_plane/models/inputwiz.py +173 -8
  260. cribl_control_plane/models/inputwizwebhook.py +97 -24
  261. cribl_control_plane/models/inputzscalerhec.py +119 -29
  262. cribl_control_plane/models/jobinfo.py +34 -0
  263. cribl_control_plane/models/jobstatus.py +48 -0
  264. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  265. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  266. cribl_control_plane/models/listconfiggroupbyproductop.py +14 -19
  267. cribl_control_plane/models/listmasterworkerentryop.py +1 -19
  268. cribl_control_plane/models/logininfo.py +3 -3
  269. cribl_control_plane/models/masterworkerentry.py +20 -13
  270. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  271. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  272. cribl_control_plane/models/nodeprovidedinfo.py +13 -11
  273. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  274. cribl_control_plane/models/nodeupgradestate.py +2 -1
  275. cribl_control_plane/models/nodeupgradestatus.py +51 -5
  276. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  277. cribl_control_plane/models/output.py +104 -90
  278. cribl_control_plane/models/outputazureblob.py +171 -18
  279. cribl_control_plane/models/outputazuredataexplorer.py +514 -90
  280. cribl_control_plane/models/outputazureeventhub.py +315 -31
  281. cribl_control_plane/models/outputazurelogs.py +145 -26
  282. cribl_control_plane/models/outputchronicle.py +532 -0
  283. cribl_control_plane/models/outputclickhouse.py +205 -34
  284. cribl_control_plane/models/outputcloudflarer2.py +632 -0
  285. cribl_control_plane/models/outputcloudwatch.py +129 -23
  286. cribl_control_plane/models/outputconfluentcloud.py +384 -57
  287. cribl_control_plane/models/outputcriblhttp.py +198 -31
  288. cribl_control_plane/models/outputcribllake.py +156 -16
  289. cribl_control_plane/models/outputcribltcp.py +194 -29
  290. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +172 -28
  291. cribl_control_plane/models/outputdatabricks.py +501 -0
  292. cribl_control_plane/models/outputdatadog.py +199 -31
  293. cribl_control_plane/models/outputdataset.py +181 -29
  294. cribl_control_plane/models/outputdiskspool.py +17 -2
  295. cribl_control_plane/models/outputdls3.py +233 -24
  296. cribl_control_plane/models/outputdynatracehttp.py +208 -34
  297. cribl_control_plane/models/outputdynatraceotlp.py +210 -36
  298. cribl_control_plane/models/outputelastic.py +199 -30
  299. cribl_control_plane/models/outputelasticcloud.py +171 -26
  300. cribl_control_plane/models/outputexabeam.py +96 -10
  301. cribl_control_plane/models/outputfilesystem.py +139 -14
  302. cribl_control_plane/models/outputgooglechronicle.py +216 -35
  303. cribl_control_plane/models/outputgooglecloudlogging.py +174 -31
  304. cribl_control_plane/models/outputgooglecloudstorage.py +215 -24
  305. cribl_control_plane/models/outputgooglepubsub.py +131 -23
  306. cribl_control_plane/models/outputgrafanacloud.py +376 -74
  307. cribl_control_plane/models/outputgraphite.py +128 -25
  308. cribl_control_plane/models/outputhoneycomb.py +145 -26
  309. cribl_control_plane/models/outputhumiohec.py +162 -28
  310. cribl_control_plane/models/outputinfluxdb.py +165 -28
  311. cribl_control_plane/models/outputkafka.py +375 -52
  312. cribl_control_plane/models/outputkinesis.py +165 -27
  313. cribl_control_plane/models/outputloki.py +164 -34
  314. cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
  315. cribl_control_plane/models/outputminio.py +225 -25
  316. cribl_control_plane/models/outputmsk.py +267 -54
  317. cribl_control_plane/models/outputnewrelic.py +171 -29
  318. cribl_control_plane/models/outputnewrelicevents.py +163 -28
  319. cribl_control_plane/models/outputopentelemetry.py +240 -40
  320. cribl_control_plane/models/outputprometheus.py +145 -26
  321. cribl_control_plane/models/outputring.py +49 -8
  322. cribl_control_plane/models/outputs3.py +233 -26
  323. cribl_control_plane/models/outputsecuritylake.py +179 -18
  324. cribl_control_plane/models/outputsentinel.py +172 -29
  325. cribl_control_plane/models/outputsentineloneaisiem.py +178 -32
  326. cribl_control_plane/models/outputservicenow.py +223 -38
  327. cribl_control_plane/models/outputsignalfx.py +145 -26
  328. cribl_control_plane/models/outputsns.py +143 -25
  329. cribl_control_plane/models/outputsplunk.py +206 -36
  330. cribl_control_plane/models/outputsplunkhec.py +238 -26
  331. cribl_control_plane/models/outputsplunklb.py +262 -42
  332. cribl_control_plane/models/outputsqs.py +163 -33
  333. cribl_control_plane/models/outputstatsd.py +127 -25
  334. cribl_control_plane/models/outputstatsdext.py +128 -25
  335. cribl_control_plane/models/outputsumologic.py +146 -25
  336. cribl_control_plane/models/outputsyslog.py +318 -46
  337. cribl_control_plane/models/outputtcpjson.py +186 -32
  338. cribl_control_plane/models/outputwavefront.py +145 -26
  339. cribl_control_plane/models/outputwebhook.py +211 -33
  340. cribl_control_plane/models/outputxsiam.py +143 -26
  341. cribl_control_plane/models/packinfo.py +8 -5
  342. cribl_control_plane/models/packinstallinfo.py +11 -8
  343. cribl_control_plane/models/piisettings_union.py +31 -0
  344. cribl_control_plane/models/productscore.py +2 -1
  345. cribl_control_plane/models/rbacresource.py +2 -1
  346. cribl_control_plane/models/resourcepolicy.py +15 -2
  347. cribl_control_plane/models/rollbacksettings_union.py +44 -0
  348. cribl_control_plane/models/routeconf.py +3 -4
  349. cribl_control_plane/models/runnablejob.py +27 -0
  350. cribl_control_plane/models/runnablejobcollection.py +628 -0
  351. cribl_control_plane/models/runnablejobexecutor.py +360 -0
  352. cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
  353. cribl_control_plane/models/snisettings_union.py +31 -0
  354. cribl_control_plane/models/systemsettingsconf.py +291 -0
  355. cribl_control_plane/models/tlssettings_union.py +43 -0
  356. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +19 -20
  357. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +19 -21
  358. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +10 -25
  359. cribl_control_plane/models/updatehectokenrequest.py +7 -1
  360. cribl_control_plane/models/updateinputbyidop.py +1 -19
  361. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -19
  362. cribl_control_plane/models/updateoutputbyidop.py +1 -19
  363. cribl_control_plane/models/updatepacksbyidop.py +1 -20
  364. cribl_control_plane/models/updatepacksop.py +25 -0
  365. cribl_control_plane/models/updatepipelinebyidop.py +5 -23
  366. cribl_control_plane/models/updateroutesbyidop.py +3 -21
  367. cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
  368. cribl_control_plane/models/upgradepackageurls.py +20 -0
  369. cribl_control_plane/models/upgradesettings.py +38 -0
  370. cribl_control_plane/models/uploadpackresponse.py +13 -0
  371. cribl_control_plane/models/workertypes.py +2 -1
  372. cribl_control_plane/nodes.py +37 -23
  373. cribl_control_plane/packs.py +292 -37
  374. cribl_control_plane/pipelines.py +98 -48
  375. cribl_control_plane/routes_sdk.py +86 -50
  376. cribl_control_plane/samples.py +32 -16
  377. cribl_control_plane/sdk.py +26 -6
  378. cribl_control_plane/settings.py +20 -0
  379. cribl_control_plane/sources.py +85 -33
  380. cribl_control_plane/statuses.py +16 -6
  381. cribl_control_plane/summaries.py +16 -6
  382. cribl_control_plane/system_sdk.py +20 -0
  383. cribl_control_plane/teams.py +16 -6
  384. cribl_control_plane/tokens.py +49 -21
  385. cribl_control_plane/utils/__init__.py +15 -3
  386. cribl_control_plane/utils/annotations.py +32 -8
  387. cribl_control_plane/utils/eventstreaming.py +10 -0
  388. cribl_control_plane/utils/forms.py +21 -10
  389. cribl_control_plane/utils/queryparams.py +14 -2
  390. cribl_control_plane/utils/retries.py +69 -5
  391. cribl_control_plane/utils/unmarshal_json_response.py +15 -1
  392. cribl_control_plane/versions.py +11 -6
  393. cribl_control_plane/versions_configs.py +16 -6
  394. {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/METADATA +99 -43
  395. cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
  396. {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
  397. cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
  398. cribl_control_plane/errors/healthstatus_error.py +0 -32
  399. cribl_control_plane/models/appmode.py +0 -13
  400. cribl_control_plane/models/createpipelineop.py +0 -24
  401. cribl_control_plane/models/createversionpushop.py +0 -23
  402. cribl_control_plane/models/healthstatus.py +0 -33
  403. 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,14 +16,14 @@ class OutputConfluentCloudType(str, Enum):
12
16
  CONFLUENT_CLOUD = "confluent_cloud"
13
17
 
14
18
 
15
- class OutputConfluentCloudMinimumTLSVersion(str, Enum):
19
+ class OutputConfluentCloudMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
16
20
  TL_SV1 = "TLSv1"
17
21
  TL_SV1_1 = "TLSv1.1"
18
22
  TL_SV1_2 = "TLSv1.2"
19
23
  TL_SV1_3 = "TLSv1.3"
20
24
 
21
25
 
22
- class OutputConfluentCloudMaximumTLSVersion(str, Enum):
26
+ class OutputConfluentCloudMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
23
27
  TL_SV1 = "TLSv1"
24
28
  TL_SV1_1 = "TLSv1.1"
25
29
  TL_SV1_2 = "TLSv1.2"
@@ -79,46 +83,75 @@ class OutputConfluentCloudTLSSettingsClientSide(BaseModel):
79
83
  r"""Passphrase to use to decrypt private key"""
80
84
 
81
85
  min_version: Annotated[
82
- Optional[OutputConfluentCloudMinimumTLSVersion],
86
+ Annotated[
87
+ Optional[OutputConfluentCloudMinimumTLSVersion],
88
+ PlainValidator(validate_open_enum(False)),
89
+ ],
83
90
  pydantic.Field(alias="minVersion"),
84
91
  ] = None
85
92
 
86
93
  max_version: Annotated[
87
- Optional[OutputConfluentCloudMaximumTLSVersion],
94
+ Annotated[
95
+ Optional[OutputConfluentCloudMaximumTLSVersion],
96
+ PlainValidator(validate_open_enum(False)),
97
+ ],
88
98
  pydantic.Field(alias="maxVersion"),
89
99
  ] = None
90
100
 
91
-
92
- class OutputConfluentCloudAcknowledgments(int, Enum):
101
+ @field_serializer("min_version")
102
+ def serialize_min_version(self, value):
103
+ if isinstance(value, str):
104
+ try:
105
+ return models.OutputConfluentCloudMinimumTLSVersion(value)
106
+ except ValueError:
107
+ return value
108
+ return value
109
+
110
+ @field_serializer("max_version")
111
+ def serialize_max_version(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.OutputConfluentCloudMaximumTLSVersion(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+
120
+ class OutputConfluentCloudAcknowledgments(int, Enum, metaclass=utils.OpenEnumMeta):
93
121
  r"""Control the number of required acknowledgments."""
94
122
 
123
+ # Leader
95
124
  ONE = 1
125
+ # None
96
126
  ZERO = 0
127
+ # All
97
128
  MINUS_1 = -1
98
129
 
99
130
 
100
- class OutputConfluentCloudRecordDataFormat(str, Enum):
131
+ class OutputConfluentCloudRecordDataFormat(str, Enum, metaclass=utils.OpenEnumMeta):
101
132
  r"""Format to use to serialize events before writing to Kafka."""
102
133
 
134
+ # JSON
103
135
  JSON = "json"
136
+ # Field _raw
104
137
  RAW = "raw"
138
+ # Protobuf
105
139
  PROTOBUF = "protobuf"
106
140
 
107
141
 
108
- class OutputConfluentCloudCompression(str, Enum):
142
+ class OutputConfluentCloudCompression(str, Enum, metaclass=utils.OpenEnumMeta):
109
143
  r"""Codec to use to compress the data before sending to Kafka"""
110
144
 
145
+ # None
111
146
  NONE = "none"
147
+ # Gzip
112
148
  GZIP = "gzip"
149
+ # Snappy
113
150
  SNAPPY = "snappy"
151
+ # LZ4
114
152
  LZ4 = "lz4"
115
-
116
-
117
- class OutputConfluentCloudSchemaType(str, Enum):
118
- r"""The schema format used to encode and decode event data"""
119
-
120
- AVRO = "avro"
121
- JSON = "json"
153
+ # ZSTD
154
+ ZSTD = "zstd"
122
155
 
123
156
 
124
157
  class OutputConfluentCloudAuthTypedDict(TypedDict):
@@ -140,14 +173,18 @@ class OutputConfluentCloudAuth(BaseModel):
140
173
  r"""Select or create a secret that references your credentials"""
141
174
 
142
175
 
143
- class OutputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(str, Enum):
176
+ class OutputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(
177
+ str, Enum, metaclass=utils.OpenEnumMeta
178
+ ):
144
179
  TL_SV1 = "TLSv1"
145
180
  TL_SV1_1 = "TLSv1.1"
146
181
  TL_SV1_2 = "TLSv1.2"
147
182
  TL_SV1_3 = "TLSv1.3"
148
183
 
149
184
 
150
- class OutputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(str, Enum):
185
+ class OutputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(
186
+ str, Enum, metaclass=utils.OpenEnumMeta
187
+ ):
151
188
  TL_SV1 = "TLSv1"
152
189
  TL_SV1_1 = "TLSv1.1"
153
190
  TL_SV1_2 = "TLSv1.2"
@@ -207,22 +244,48 @@ class OutputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
207
244
  r"""Passphrase to use to decrypt private key"""
208
245
 
209
246
  min_version: Annotated[
210
- Optional[OutputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion],
247
+ Annotated[
248
+ Optional[OutputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion],
249
+ PlainValidator(validate_open_enum(False)),
250
+ ],
211
251
  pydantic.Field(alias="minVersion"),
212
252
  ] = None
213
253
 
214
254
  max_version: Annotated[
215
- Optional[OutputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion],
255
+ Annotated[
256
+ Optional[OutputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion],
257
+ PlainValidator(validate_open_enum(False)),
258
+ ],
216
259
  pydantic.Field(alias="maxVersion"),
217
260
  ] = None
218
261
 
262
+ @field_serializer("min_version")
263
+ def serialize_min_version(self, value):
264
+ if isinstance(value, str):
265
+ try:
266
+ return models.OutputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(
267
+ value
268
+ )
269
+ except ValueError:
270
+ return value
271
+ return value
272
+
273
+ @field_serializer("max_version")
274
+ def serialize_max_version(self, value):
275
+ if isinstance(value, str):
276
+ try:
277
+ return models.OutputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(
278
+ value
279
+ )
280
+ except ValueError:
281
+ return value
282
+ return value
283
+
219
284
 
220
285
  class OutputConfluentCloudKafkaSchemaRegistryAuthenticationTypedDict(TypedDict):
221
286
  disabled: NotRequired[bool]
222
287
  schema_registry_url: NotRequired[str]
223
288
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
224
- schema_type: NotRequired[OutputConfluentCloudSchemaType]
225
- r"""The schema format used to encode and decode event data"""
226
289
  connection_timeout: NotRequired[float]
227
290
  r"""Maximum time to wait for a Schema Registry connection to complete successfully"""
228
291
  request_timeout: NotRequired[float]
@@ -248,11 +311,6 @@ class OutputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
248
311
  ] = "http://localhost:8081"
249
312
  r"""URL for accessing the Confluent Schema Registry. Example: http://localhost:8081. To connect over TLS, use https instead of http."""
250
313
 
251
- schema_type: Annotated[
252
- Optional[OutputConfluentCloudSchemaType], pydantic.Field(alias="schemaType")
253
- ] = OutputConfluentCloudSchemaType.AVRO
254
- r"""The schema format used to encode and decode event data"""
255
-
256
314
  connection_timeout: Annotated[
257
315
  Optional[float], pydantic.Field(alias="connectionTimeout")
258
316
  ] = 30000
@@ -282,18 +340,76 @@ class OutputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
282
340
  r"""Used when __valueSchemaIdOut is not present, to transform _raw, leave blank if value transformation is not required by default."""
283
341
 
284
342
 
285
- class OutputConfluentCloudSASLMechanism(str, Enum):
343
+ class OutputConfluentCloudAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
344
+ r"""Enter credentials directly, or select a stored secret"""
345
+
346
+ MANUAL = "manual"
347
+ SECRET = "secret"
348
+
349
+
350
+ class OutputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
351
+ # PLAIN
286
352
  PLAIN = "plain"
353
+ # SCRAM-SHA-256
287
354
  SCRAM_SHA_256 = "scram-sha-256"
355
+ # SCRAM-SHA-512
288
356
  SCRAM_SHA_512 = "scram-sha-512"
357
+ # GSSAPI/Kerberos
289
358
  KERBEROS = "kerberos"
290
359
 
291
360
 
361
+ class OutputConfluentCloudOauthParamTypedDict(TypedDict):
362
+ name: str
363
+ value: str
364
+
365
+
366
+ class OutputConfluentCloudOauthParam(BaseModel):
367
+ name: str
368
+
369
+ value: str
370
+
371
+
372
+ class OutputConfluentCloudSaslExtensionTypedDict(TypedDict):
373
+ name: str
374
+ value: str
375
+
376
+
377
+ class OutputConfluentCloudSaslExtension(BaseModel):
378
+ name: str
379
+
380
+ value: str
381
+
382
+
292
383
  class OutputConfluentCloudAuthenticationTypedDict(TypedDict):
293
384
  r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
294
385
 
295
386
  disabled: NotRequired[bool]
387
+ username: NotRequired[str]
388
+ password: NotRequired[str]
389
+ auth_type: NotRequired[OutputConfluentCloudAuthenticationMethod]
390
+ r"""Enter credentials directly, or select a stored secret"""
391
+ credentials_secret: NotRequired[str]
392
+ r"""Select or create a secret that references your credentials"""
296
393
  mechanism: NotRequired[OutputConfluentCloudSASLMechanism]
394
+ keytab_location: NotRequired[str]
395
+ r"""Location of keytab file for authentication principal"""
396
+ principal: NotRequired[str]
397
+ r"""Authentication principal, such as `kafka_user@example.com`"""
398
+ broker_service_class: NotRequired[str]
399
+ r"""Kerberos service class for Kafka brokers, such as `kafka`"""
400
+ oauth_enabled: NotRequired[bool]
401
+ r"""Enable OAuth authentication"""
402
+ token_url: NotRequired[str]
403
+ r"""URL of the token endpoint to use for OAuth authentication"""
404
+ client_id: NotRequired[str]
405
+ r"""Client ID to use for OAuth authentication"""
406
+ oauth_secret_type: NotRequired[str]
407
+ client_text_secret: NotRequired[str]
408
+ r"""Select or create a stored text secret"""
409
+ oauth_params: NotRequired[List[OutputConfluentCloudOauthParamTypedDict]]
410
+ r"""Additional fields to send to the token endpoint, such as scope or audience"""
411
+ sasl_extensions: NotRequired[List[OutputConfluentCloudSaslExtensionTypedDict]]
412
+ r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
297
413
 
298
414
 
299
415
  class OutputConfluentCloudAuthentication(BaseModel):
@@ -301,41 +417,135 @@ class OutputConfluentCloudAuthentication(BaseModel):
301
417
 
302
418
  disabled: Optional[bool] = True
303
419
 
304
- mechanism: Optional[OutputConfluentCloudSASLMechanism] = (
305
- OutputConfluentCloudSASLMechanism.PLAIN
420
+ username: Optional[str] = None
421
+
422
+ password: Optional[str] = None
423
+
424
+ auth_type: Annotated[
425
+ Annotated[
426
+ Optional[OutputConfluentCloudAuthenticationMethod],
427
+ PlainValidator(validate_open_enum(False)),
428
+ ],
429
+ pydantic.Field(alias="authType"),
430
+ ] = OutputConfluentCloudAuthenticationMethod.MANUAL
431
+ r"""Enter credentials directly, or select a stored secret"""
432
+
433
+ credentials_secret: Annotated[
434
+ Optional[str], pydantic.Field(alias="credentialsSecret")
435
+ ] = None
436
+ r"""Select or create a secret that references your credentials"""
437
+
438
+ mechanism: Annotated[
439
+ Optional[OutputConfluentCloudSASLMechanism],
440
+ PlainValidator(validate_open_enum(False)),
441
+ ] = OutputConfluentCloudSASLMechanism.PLAIN
442
+
443
+ keytab_location: Annotated[
444
+ Optional[str], pydantic.Field(alias="keytabLocation")
445
+ ] = None
446
+ r"""Location of keytab file for authentication principal"""
447
+
448
+ principal: Optional[str] = None
449
+ r"""Authentication principal, such as `kafka_user@example.com`"""
450
+
451
+ broker_service_class: Annotated[
452
+ Optional[str], pydantic.Field(alias="brokerServiceClass")
453
+ ] = None
454
+ r"""Kerberos service class for Kafka brokers, such as `kafka`"""
455
+
456
+ oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
457
+ False
306
458
  )
459
+ r"""Enable OAuth authentication"""
460
+
461
+ token_url: Annotated[Optional[str], pydantic.Field(alias="tokenUrl")] = None
462
+ r"""URL of the token endpoint to use for OAuth authentication"""
463
+
464
+ client_id: Annotated[Optional[str], pydantic.Field(alias="clientId")] = None
465
+ r"""Client ID to use for OAuth authentication"""
307
466
 
467
+ oauth_secret_type: Annotated[
468
+ Optional[str], pydantic.Field(alias="oauthSecretType")
469
+ ] = "secret"
470
+
471
+ client_text_secret: Annotated[
472
+ Optional[str], pydantic.Field(alias="clientTextSecret")
473
+ ] = None
474
+ r"""Select or create a stored text secret"""
308
475
 
309
- class OutputConfluentCloudBackpressureBehavior(str, Enum):
476
+ oauth_params: Annotated[
477
+ Optional[List[OutputConfluentCloudOauthParam]],
478
+ pydantic.Field(alias="oauthParams"),
479
+ ] = None
480
+ r"""Additional fields to send to the token endpoint, such as scope or audience"""
481
+
482
+ sasl_extensions: Annotated[
483
+ Optional[List[OutputConfluentCloudSaslExtension]],
484
+ pydantic.Field(alias="saslExtensions"),
485
+ ] = None
486
+ r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
487
+
488
+ @field_serializer("auth_type")
489
+ def serialize_auth_type(self, value):
490
+ if isinstance(value, str):
491
+ try:
492
+ return models.OutputConfluentCloudAuthenticationMethod(value)
493
+ except ValueError:
494
+ return value
495
+ return value
496
+
497
+ @field_serializer("mechanism")
498
+ def serialize_mechanism(self, value):
499
+ if isinstance(value, str):
500
+ try:
501
+ return models.OutputConfluentCloudSASLMechanism(value)
502
+ except ValueError:
503
+ return value
504
+ return value
505
+
506
+
507
+ class OutputConfluentCloudBackpressureBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
310
508
  r"""How to handle events when all receivers are exerting backpressure"""
311
509
 
510
+ # Block
312
511
  BLOCK = "block"
512
+ # Drop
313
513
  DROP = "drop"
514
+ # Persistent Queue
314
515
  QUEUE = "queue"
315
516
 
316
517
 
317
- class OutputConfluentCloudPqCompressCompression(str, Enum):
518
+ class OutputConfluentCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
519
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
520
+
521
+ # Error
522
+ ERROR = "error"
523
+ # Backpressure
524
+ ALWAYS = "always"
525
+ # Always On
526
+ BACKPRESSURE = "backpressure"
527
+
528
+
529
+ class OutputConfluentCloudPqCompressCompression(
530
+ str, Enum, metaclass=utils.OpenEnumMeta
531
+ ):
318
532
  r"""Codec to use to compress the persisted data"""
319
533
 
534
+ # None
320
535
  NONE = "none"
536
+ # Gzip
321
537
  GZIP = "gzip"
322
538
 
323
539
 
324
- class OutputConfluentCloudQueueFullBehavior(str, Enum):
540
+ class OutputConfluentCloudQueueFullBehavior(str, Enum, metaclass=utils.OpenEnumMeta):
325
541
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
326
542
 
543
+ # Block
327
544
  BLOCK = "block"
545
+ # Drop new data
328
546
  DROP = "drop"
329
547
 
330
548
 
331
- class OutputConfluentCloudMode(str, Enum):
332
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
333
-
334
- ERROR = "error"
335
- BACKPRESSURE = "backpressure"
336
- ALWAYS = "always"
337
-
338
-
339
549
  class OutputConfluentCloudPqControlsTypedDict(TypedDict):
340
550
  pass
341
551
 
@@ -399,6 +609,18 @@ class OutputConfluentCloudTypedDict(TypedDict):
399
609
  description: NotRequired[str]
400
610
  protobuf_library_id: NotRequired[str]
401
611
  r"""Select a set of Protobuf definitions for the events you want to send"""
612
+ protobuf_encoding_id: NotRequired[str]
613
+ r"""Select the type of object you want the Protobuf definitions to use for event encoding"""
614
+ pq_strict_ordering: NotRequired[bool]
615
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
616
+ pq_rate_per_sec: NotRequired[float]
617
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
618
+ pq_mode: NotRequired[OutputConfluentCloudMode]
619
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
620
+ pq_max_buffer_size: NotRequired[float]
621
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
622
+ pq_max_backpressure_sec: NotRequired[float]
623
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
402
624
  pq_max_file_size: NotRequired[str]
403
625
  r"""The maximum size to store in each queue file before closing and optionally compressing (KB, MB, etc.)"""
404
626
  pq_max_size: NotRequired[str]
@@ -409,8 +631,6 @@ class OutputConfluentCloudTypedDict(TypedDict):
409
631
  r"""Codec to use to compress the persisted data"""
410
632
  pq_on_backpressure: NotRequired[OutputConfluentCloudQueueFullBehavior]
411
633
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
412
- pq_mode: NotRequired[OutputConfluentCloudMode]
413
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
414
634
  pq_controls: NotRequired[OutputConfluentCloudPqControlsTypedDict]
415
635
 
416
636
 
@@ -442,19 +662,25 @@ class OutputConfluentCloud(BaseModel):
442
662
 
443
663
  tls: Optional[OutputConfluentCloudTLSSettingsClientSide] = None
444
664
 
445
- ack: Optional[OutputConfluentCloudAcknowledgments] = (
446
- OutputConfluentCloudAcknowledgments.ONE
447
- )
665
+ ack: Annotated[
666
+ Optional[OutputConfluentCloudAcknowledgments],
667
+ PlainValidator(validate_open_enum(True)),
668
+ ] = OutputConfluentCloudAcknowledgments.ONE
448
669
  r"""Control the number of required acknowledgments."""
449
670
 
450
671
  format_: Annotated[
451
- Optional[OutputConfluentCloudRecordDataFormat], pydantic.Field(alias="format")
672
+ Annotated[
673
+ Optional[OutputConfluentCloudRecordDataFormat],
674
+ PlainValidator(validate_open_enum(False)),
675
+ ],
676
+ pydantic.Field(alias="format"),
452
677
  ] = OutputConfluentCloudRecordDataFormat.JSON
453
678
  r"""Format to use to serialize events before writing to Kafka."""
454
679
 
455
- compression: Optional[OutputConfluentCloudCompression] = (
456
- OutputConfluentCloudCompression.GZIP
457
- )
680
+ compression: Annotated[
681
+ Optional[OutputConfluentCloudCompression],
682
+ PlainValidator(validate_open_enum(False)),
683
+ ] = OutputConfluentCloudCompression.GZIP
458
684
  r"""Codec to use to compress the data before sending to Kafka"""
459
685
 
460
686
  max_record_size_kb: Annotated[
@@ -515,7 +741,10 @@ class OutputConfluentCloud(BaseModel):
515
741
  r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
516
742
 
517
743
  on_backpressure: Annotated[
518
- Optional[OutputConfluentCloudBackpressureBehavior],
744
+ Annotated[
745
+ Optional[OutputConfluentCloudBackpressureBehavior],
746
+ PlainValidator(validate_open_enum(False)),
747
+ ],
519
748
  pydantic.Field(alias="onBackpressure"),
520
749
  ] = OutputConfluentCloudBackpressureBehavior.BLOCK
521
750
  r"""How to handle events when all receivers are exerting backpressure"""
@@ -527,6 +756,40 @@ class OutputConfluentCloud(BaseModel):
527
756
  ] = None
528
757
  r"""Select a set of Protobuf definitions for the events you want to send"""
529
758
 
759
+ protobuf_encoding_id: Annotated[
760
+ Optional[str], pydantic.Field(alias="protobufEncodingId")
761
+ ] = None
762
+ r"""Select the type of object you want the Protobuf definitions to use for event encoding"""
763
+
764
+ pq_strict_ordering: Annotated[
765
+ Optional[bool], pydantic.Field(alias="pqStrictOrdering")
766
+ ] = True
767
+ r"""Use FIFO (first in, first out) processing. Disable to forward new events to receivers before queue is flushed."""
768
+
769
+ pq_rate_per_sec: Annotated[
770
+ Optional[float], pydantic.Field(alias="pqRatePerSec")
771
+ ] = 0
772
+ r"""Throttling rate (in events per second) to impose while writing to Destinations from PQ. Defaults to 0, which disables throttling."""
773
+
774
+ pq_mode: Annotated[
775
+ Annotated[
776
+ Optional[OutputConfluentCloudMode],
777
+ PlainValidator(validate_open_enum(False)),
778
+ ],
779
+ pydantic.Field(alias="pqMode"),
780
+ ] = OutputConfluentCloudMode.ERROR
781
+ r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
782
+
783
+ pq_max_buffer_size: Annotated[
784
+ Optional[float], pydantic.Field(alias="pqMaxBufferSize")
785
+ ] = 42
786
+ r"""The maximum number of events to hold in memory before writing the events to disk"""
787
+
788
+ pq_max_backpressure_sec: Annotated[
789
+ Optional[float], pydantic.Field(alias="pqMaxBackpressureSec")
790
+ ] = 30
791
+ r"""How long (in seconds) to wait for backpressure to resolve before engaging the queue"""
792
+
530
793
  pq_max_file_size: Annotated[
531
794
  Optional[str], pydantic.Field(alias="pqMaxFileSize")
532
795
  ] = "1 MB"
@@ -541,22 +804,86 @@ class OutputConfluentCloud(BaseModel):
541
804
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/<output-id>."""
542
805
 
543
806
  pq_compress: Annotated[
544
- Optional[OutputConfluentCloudPqCompressCompression],
807
+ Annotated[
808
+ Optional[OutputConfluentCloudPqCompressCompression],
809
+ PlainValidator(validate_open_enum(False)),
810
+ ],
545
811
  pydantic.Field(alias="pqCompress"),
546
812
  ] = OutputConfluentCloudPqCompressCompression.NONE
547
813
  r"""Codec to use to compress the persisted data"""
548
814
 
549
815
  pq_on_backpressure: Annotated[
550
- Optional[OutputConfluentCloudQueueFullBehavior],
816
+ Annotated[
817
+ Optional[OutputConfluentCloudQueueFullBehavior],
818
+ PlainValidator(validate_open_enum(False)),
819
+ ],
551
820
  pydantic.Field(alias="pqOnBackpressure"),
552
821
  ] = OutputConfluentCloudQueueFullBehavior.BLOCK
553
822
  r"""How to handle events when the queue is exerting backpressure (full capacity or low disk). 'Block' is the same behavior as non-PQ blocking. 'Drop new data' throws away incoming data, while leaving the contents of the PQ unchanged."""
554
823
 
555
- pq_mode: Annotated[
556
- Optional[OutputConfluentCloudMode], pydantic.Field(alias="pqMode")
557
- ] = OutputConfluentCloudMode.ERROR
558
- r"""In Error mode, PQ writes events to the filesystem if the Destination is unavailable. In Backpressure mode, PQ writes events to the filesystem when it detects backpressure from the Destination. In Always On mode, PQ always writes events to the filesystem."""
559
-
560
824
  pq_controls: Annotated[
561
825
  Optional[OutputConfluentCloudPqControls], pydantic.Field(alias="pqControls")
562
826
  ] = None
827
+
828
+ @field_serializer("ack")
829
+ def serialize_ack(self, value):
830
+ if isinstance(value, str):
831
+ try:
832
+ return models.OutputConfluentCloudAcknowledgments(value)
833
+ except ValueError:
834
+ return value
835
+ return value
836
+
837
+ @field_serializer("format_")
838
+ def serialize_format_(self, value):
839
+ if isinstance(value, str):
840
+ try:
841
+ return models.OutputConfluentCloudRecordDataFormat(value)
842
+ except ValueError:
843
+ return value
844
+ return value
845
+
846
+ @field_serializer("compression")
847
+ def serialize_compression(self, value):
848
+ if isinstance(value, str):
849
+ try:
850
+ return models.OutputConfluentCloudCompression(value)
851
+ except ValueError:
852
+ return value
853
+ return value
854
+
855
+ @field_serializer("on_backpressure")
856
+ def serialize_on_backpressure(self, value):
857
+ if isinstance(value, str):
858
+ try:
859
+ return models.OutputConfluentCloudBackpressureBehavior(value)
860
+ except ValueError:
861
+ return value
862
+ return value
863
+
864
+ @field_serializer("pq_mode")
865
+ def serialize_pq_mode(self, value):
866
+ if isinstance(value, str):
867
+ try:
868
+ return models.OutputConfluentCloudMode(value)
869
+ except ValueError:
870
+ return value
871
+ return value
872
+
873
+ @field_serializer("pq_compress")
874
+ def serialize_pq_compress(self, value):
875
+ if isinstance(value, str):
876
+ try:
877
+ return models.OutputConfluentCloudPqCompressCompression(value)
878
+ except ValueError:
879
+ return value
880
+ return value
881
+
882
+ @field_serializer("pq_on_backpressure")
883
+ def serialize_pq_on_backpressure(self, value):
884
+ if isinstance(value, str):
885
+ try:
886
+ return models.OutputConfluentCloudQueueFullBehavior(value)
887
+ except ValueError:
888
+ return value
889
+ return value