cribl-control-plane 0.0.21__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 (436) hide show
  1. cribl_control_plane/_hooks/clientcredentials.py +113 -48
  2. cribl_control_plane/_version.py +4 -4
  3. cribl_control_plane/acl.py +225 -0
  4. cribl_control_plane/auth_sdk.py +12 -176
  5. cribl_control_plane/basesdk.py +17 -1
  6. cribl_control_plane/branches.py +351 -0
  7. cribl_control_plane/commits.py +1403 -0
  8. cribl_control_plane/commits_files.py +391 -0
  9. cribl_control_plane/configs_versions.py +201 -0
  10. cribl_control_plane/cribl.py +495 -0
  11. cribl_control_plane/destinations.py +146 -805
  12. cribl_control_plane/destinations_pq.py +379 -0
  13. cribl_control_plane/errors/__init__.py +26 -10
  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 +22 -0
  22. cribl_control_plane/groups_sdk.py +333 -578
  23. cribl_control_plane/health.py +38 -18
  24. cribl_control_plane/hectokens.py +503 -0
  25. cribl_control_plane/httpclient.py +0 -1
  26. cribl_control_plane/{lake.py → lakedatasets.py} +207 -115
  27. cribl_control_plane/models/__init__.py +3644 -5986
  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 +67 -11
  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/countedgitdiffresult.py +20 -0
  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/countedoutputsamplesresponse.py +20 -0
  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 +46 -0
  81. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +3 -21
  82. cribl_control_plane/models/createinputhectokenbyidop.py +3 -21
  83. cribl_control_plane/models/createoutputtestbyidop.py +3 -22
  84. cribl_control_plane/models/createroutesappendbyidop.py +4 -21
  85. cribl_control_plane/models/createversioncommitop.py +27 -20
  86. cribl_control_plane/models/createversionrevertop.py +7 -23
  87. cribl_control_plane/models/createversionundoop.py +7 -22
  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/currentbranchresult.py +13 -0
  92. cribl_control_plane/models/datasetmetadata.py +18 -2
  93. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +43 -0
  94. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +5 -24
  95. cribl_control_plane/models/deleteinputbyidop.py +3 -22
  96. cribl_control_plane/models/deleteoutputbyidop.py +3 -22
  97. cribl_control_plane/models/deleteoutputpqbyidop.py +3 -21
  98. cribl_control_plane/models/deletepacksbyidop.py +3 -22
  99. cribl_control_plane/models/deletepipelinebyidop.py +3 -22
  100. cribl_control_plane/models/difffiles.py +130 -0
  101. cribl_control_plane/models/diffline.py +26 -0
  102. cribl_control_plane/models/difflinecontext.py +28 -0
  103. cribl_control_plane/models/difflinedelete.py +25 -0
  104. cribl_control_plane/models/difflineinsert.py +25 -0
  105. cribl_control_plane/models/distributedsummary.py +6 -0
  106. cribl_control_plane/models/functionaggregatemetrics.py +206 -0
  107. cribl_control_plane/models/functionaggregation.py +172 -0
  108. cribl_control_plane/models/functionautotimestamp.py +173 -0
  109. cribl_control_plane/models/functioncef.py +111 -0
  110. cribl_control_plane/models/functionchain.py +75 -0
  111. cribl_control_plane/models/functionclone.py +75 -0
  112. cribl_control_plane/models/functioncode.py +96 -0
  113. cribl_control_plane/models/functioncomment.py +75 -0
  114. cribl_control_plane/models/functiondistinct.py +99 -0
  115. cribl_control_plane/models/functiondnslookup.py +250 -0
  116. cribl_control_plane/models/functiondrop.py +73 -0
  117. cribl_control_plane/models/functiondropdimensions.py +87 -0
  118. cribl_control_plane/models/functiondynamicsampling.py +121 -0
  119. cribl_control_plane/models/functioneval.py +103 -0
  120. cribl_control_plane/models/functioneventbreaker.py +103 -0
  121. cribl_control_plane/models/functioneventstats.py +92 -0
  122. cribl_control_plane/models/functionexternaldata.py +73 -0
  123. cribl_control_plane/models/functionflatten.py +90 -0
  124. cribl_control_plane/models/functionfoldkeys.py +89 -0
  125. cribl_control_plane/models/functiongenstats.py +73 -0
  126. cribl_control_plane/models/functiongeoip.py +120 -0
  127. cribl_control_plane/models/functiongrok.py +95 -0
  128. cribl_control_plane/models/functionhandlebar.py +112 -0
  129. cribl_control_plane/models/functionjoin.py +112 -0
  130. cribl_control_plane/models/functionjsonunroll.py +80 -0
  131. cribl_control_plane/models/functionlakeexport.py +102 -0
  132. cribl_control_plane/models/functionlimit.py +75 -0
  133. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
  134. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
  135. cribl_control_plane/models/functionlookup.py +148 -0
  136. cribl_control_plane/models/functionmask.py +121 -0
  137. cribl_control_plane/models/functionmvexpand.py +128 -0
  138. cribl_control_plane/models/functionmvpull.py +99 -0
  139. cribl_control_plane/models/functionnotificationpolicies.py +186 -0
  140. cribl_control_plane/models/functionnotifications.py +85 -0
  141. cribl_control_plane/models/functionnotify.py +196 -0
  142. cribl_control_plane/models/functionnumerify.py +119 -0
  143. cribl_control_plane/models/functionotlplogs.py +82 -0
  144. cribl_control_plane/models/functionotlpmetrics.py +118 -0
  145. cribl_control_plane/models/functionotlptraces.py +111 -0
  146. cribl_control_plane/models/functionpack.py +80 -0
  147. cribl_control_plane/models/functionpivot.py +85 -0
  148. cribl_control_plane/models/functionpublishmetrics.py +153 -0
  149. cribl_control_plane/models/functionredis.py +173 -0
  150. cribl_control_plane/models/functionregexextract.py +112 -0
  151. cribl_control_plane/models/functionregexfilter.py +95 -0
  152. cribl_control_plane/models/functionrename.py +107 -0
  153. cribl_control_plane/models/functionresponse.py +242 -0
  154. cribl_control_plane/models/functionrollupmetrics.py +114 -0
  155. cribl_control_plane/models/functionsampling.py +90 -0
  156. cribl_control_plane/models/functionsend.py +141 -0
  157. cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
  158. cribl_control_plane/models/functionserde.py +161 -0
  159. cribl_control_plane/models/functionserialize.py +134 -0
  160. cribl_control_plane/models/functionsidlookup.py +93 -0
  161. cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
  162. cribl_control_plane/models/functionsort.py +97 -0
  163. cribl_control_plane/models/functionstore.py +132 -0
  164. cribl_control_plane/models/functionsuppress.py +115 -0
  165. cribl_control_plane/models/functiontee.py +90 -0
  166. cribl_control_plane/models/functiontrimtimestamp.py +75 -0
  167. cribl_control_plane/models/functionunion.py +80 -0
  168. cribl_control_plane/models/functionunroll.py +80 -0
  169. cribl_control_plane/models/functionwindow.py +96 -0
  170. cribl_control_plane/models/functionxmlunroll.py +92 -0
  171. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +63 -0
  172. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +63 -0
  173. cribl_control_plane/models/getconfiggroupbyproductandidop.py +53 -0
  174. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +43 -0
  175. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +5 -24
  176. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +56 -16
  177. cribl_control_plane/models/getfunctionsbyidop.py +18 -0
  178. cribl_control_plane/models/getinputbyidop.py +3 -22
  179. cribl_control_plane/models/getmasterworkerentryop.py +22 -0
  180. cribl_control_plane/models/getoutputbyidop.py +3 -22
  181. cribl_control_plane/models/getoutputpqbyidop.py +3 -21
  182. cribl_control_plane/models/getoutputsamplesbyidop.py +3 -22
  183. cribl_control_plane/models/getpacksbyidop.py +18 -0
  184. cribl_control_plane/models/getpacksop.py +3 -21
  185. cribl_control_plane/models/getpipelinebyidop.py +3 -22
  186. cribl_control_plane/models/getroutesbyidop.py +3 -22
  187. cribl_control_plane/models/getsummaryop.py +23 -32
  188. cribl_control_plane/models/getversioncountop.py +10 -27
  189. cribl_control_plane/models/getversiondiffop.py +12 -28
  190. cribl_control_plane/models/getversionfilesop.py +10 -28
  191. cribl_control_plane/models/getversionop.py +30 -0
  192. cribl_control_plane/models/getversionshowop.py +12 -28
  193. cribl_control_plane/models/getversionstatusop.py +7 -23
  194. cribl_control_plane/models/gitcommitsummary.py +3 -3
  195. cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
  196. cribl_control_plane/models/gitdiffresult.py +16 -0
  197. cribl_control_plane/models/gitfilesresponse.py +7 -5
  198. cribl_control_plane/models/gitinfo.py +14 -3
  199. cribl_control_plane/models/gitlogresult.py +33 -0
  200. cribl_control_plane/models/gitrevertparams.py +3 -3
  201. cribl_control_plane/models/gitrevertresult.py +5 -5
  202. cribl_control_plane/models/gitshowresult.py +19 -0
  203. cribl_control_plane/models/gitstatusresult.py +0 -3
  204. cribl_control_plane/models/groupcreaterequest.py +172 -0
  205. cribl_control_plane/models/hbcriblinfo.py +42 -7
  206. cribl_control_plane/models/healthserverstatus.py +55 -0
  207. cribl_control_plane/models/heartbeatmetadata.py +6 -11
  208. cribl_control_plane/models/input.py +89 -81
  209. cribl_control_plane/models/inputappscope.py +131 -35
  210. cribl_control_plane/models/inputazureblob.py +62 -6
  211. cribl_control_plane/models/inputcloudflarehec.py +518 -0
  212. cribl_control_plane/models/inputcollection.py +49 -6
  213. cribl_control_plane/models/inputconfluentcloud.py +262 -22
  214. cribl_control_plane/models/inputcribl.py +52 -9
  215. cribl_control_plane/models/inputcriblhttp.py +124 -33
  216. cribl_control_plane/models/inputcribllakehttp.py +199 -29
  217. cribl_control_plane/models/inputcriblmetrics.py +53 -9
  218. cribl_control_plane/models/inputcribltcp.py +125 -27
  219. cribl_control_plane/models/inputcrowdstrike.py +99 -10
  220. cribl_control_plane/models/inputdatadogagent.py +101 -27
  221. cribl_control_plane/models/inputdatagen.py +47 -4
  222. cribl_control_plane/models/inputedgeprometheus.py +215 -58
  223. cribl_control_plane/models/inputelastic.py +170 -39
  224. cribl_control_plane/models/inputeventhub.py +212 -9
  225. cribl_control_plane/models/inputexec.py +59 -6
  226. cribl_control_plane/models/inputfile.py +83 -15
  227. cribl_control_plane/models/inputfirehose.py +100 -27
  228. cribl_control_plane/models/inputgooglepubsub.py +83 -15
  229. cribl_control_plane/models/{inputgrafana_union.py → inputgrafana.py} +261 -67
  230. cribl_control_plane/models/inputhttp.py +100 -27
  231. cribl_control_plane/models/inputhttpraw.py +100 -27
  232. cribl_control_plane/models/inputjournalfiles.py +51 -7
  233. cribl_control_plane/models/inputkafka.py +257 -19
  234. cribl_control_plane/models/inputkinesis.py +133 -17
  235. cribl_control_plane/models/inputkubeevents.py +52 -9
  236. cribl_control_plane/models/inputkubelogs.py +66 -13
  237. cribl_control_plane/models/inputkubemetrics.py +66 -13
  238. cribl_control_plane/models/inputloki.py +116 -30
  239. cribl_control_plane/models/inputmetrics.py +97 -24
  240. cribl_control_plane/models/inputmodeldriventelemetry.py +110 -29
  241. cribl_control_plane/models/inputmsk.py +148 -21
  242. cribl_control_plane/models/inputnetflow.py +50 -7
  243. cribl_control_plane/models/inputoffice365mgmt.py +115 -17
  244. cribl_control_plane/models/inputoffice365msgtrace.py +117 -19
  245. cribl_control_plane/models/inputoffice365service.py +117 -19
  246. cribl_control_plane/models/inputopentelemetry.py +146 -35
  247. cribl_control_plane/models/inputprometheus.py +196 -47
  248. cribl_control_plane/models/inputprometheusrw.py +117 -30
  249. cribl_control_plane/models/inputrawudp.py +50 -7
  250. cribl_control_plane/models/inputs3.py +85 -8
  251. cribl_control_plane/models/inputs3inventory.py +99 -10
  252. cribl_control_plane/models/inputsecuritylake.py +100 -10
  253. cribl_control_plane/models/inputsnmp.py +115 -24
  254. cribl_control_plane/models/inputsplunk.py +133 -31
  255. cribl_control_plane/models/inputsplunkhec.py +122 -32
  256. cribl_control_plane/models/inputsplunksearch.py +115 -18
  257. cribl_control_plane/models/inputsqs.py +102 -19
  258. cribl_control_plane/models/{inputsyslog_union.py → inputsyslog.py} +193 -51
  259. cribl_control_plane/models/inputsystemmetrics.py +207 -37
  260. cribl_control_plane/models/inputsystemstate.py +66 -13
  261. cribl_control_plane/models/inputtcp.py +125 -29
  262. cribl_control_plane/models/inputtcpjson.py +115 -29
  263. cribl_control_plane/models/inputwef.py +151 -22
  264. cribl_control_plane/models/inputwindowsmetrics.py +191 -38
  265. cribl_control_plane/models/inputwineventlogs.py +93 -11
  266. cribl_control_plane/models/inputwiz.py +176 -11
  267. cribl_control_plane/models/inputwizwebhook.py +466 -0
  268. cribl_control_plane/models/inputzscalerhec.py +122 -32
  269. cribl_control_plane/models/jobinfo.py +34 -0
  270. cribl_control_plane/models/jobstatus.py +48 -0
  271. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  272. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  273. cribl_control_plane/models/listconfiggroupbyproductop.py +46 -0
  274. cribl_control_plane/models/listmasterworkerentryop.py +64 -0
  275. cribl_control_plane/models/logininfo.py +3 -3
  276. cribl_control_plane/models/masterworkerentry.py +20 -13
  277. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  278. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  279. cribl_control_plane/models/nodeprovidedinfo.py +13 -11
  280. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  281. cribl_control_plane/models/nodeupgradestate.py +2 -1
  282. cribl_control_plane/models/nodeupgradestatus.py +51 -5
  283. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  284. cribl_control_plane/models/output.py +103 -89
  285. cribl_control_plane/models/outputazureblob.py +174 -21
  286. cribl_control_plane/models/outputazuredataexplorer.py +517 -93
  287. cribl_control_plane/models/outputazureeventhub.py +318 -34
  288. cribl_control_plane/models/outputazurelogs.py +145 -26
  289. cribl_control_plane/models/outputchronicle.py +532 -0
  290. cribl_control_plane/models/outputclickhouse.py +208 -37
  291. cribl_control_plane/models/outputcloudflarer2.py +632 -0
  292. cribl_control_plane/models/outputcloudwatch.py +132 -26
  293. cribl_control_plane/models/outputconfluentcloud.py +387 -46
  294. cribl_control_plane/models/outputcriblhttp.py +203 -36
  295. cribl_control_plane/models/outputcribllake.py +161 -21
  296. cribl_control_plane/models/outputcribltcp.py +199 -34
  297. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +176 -32
  298. cribl_control_plane/models/outputdatabricks.py +501 -0
  299. cribl_control_plane/models/outputdatadog.py +204 -36
  300. cribl_control_plane/models/outputdataset.py +186 -34
  301. cribl_control_plane/models/outputdevnull.py +5 -5
  302. cribl_control_plane/models/outputdiskspool.py +22 -7
  303. cribl_control_plane/models/outputdls3.py +238 -29
  304. cribl_control_plane/models/outputdynatracehttp.py +211 -37
  305. cribl_control_plane/models/outputdynatraceotlp.py +213 -39
  306. cribl_control_plane/models/outputelastic.py +199 -30
  307. cribl_control_plane/models/outputelasticcloud.py +174 -29
  308. cribl_control_plane/models/outputexabeam.py +99 -13
  309. cribl_control_plane/models/outputfilesystem.py +139 -14
  310. cribl_control_plane/models/outputgooglechronicle.py +216 -35
  311. cribl_control_plane/models/outputgooglecloudlogging.py +177 -34
  312. cribl_control_plane/models/outputgooglecloudstorage.py +220 -29
  313. cribl_control_plane/models/outputgooglepubsub.py +138 -51
  314. cribl_control_plane/models/outputgrafanacloud.py +386 -70
  315. cribl_control_plane/models/outputgraphite.py +131 -28
  316. cribl_control_plane/models/outputhoneycomb.py +145 -26
  317. cribl_control_plane/models/outputhumiohec.py +165 -31
  318. cribl_control_plane/models/outputinfluxdb.py +165 -28
  319. cribl_control_plane/models/outputkafka.py +378 -41
  320. cribl_control_plane/models/outputkinesis.py +168 -30
  321. cribl_control_plane/models/outputloki.py +171 -27
  322. cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
  323. cribl_control_plane/models/outputminio.py +228 -28
  324. cribl_control_plane/models/outputmsk.py +270 -43
  325. cribl_control_plane/models/outputnewrelic.py +176 -34
  326. cribl_control_plane/models/outputnewrelicevents.py +166 -31
  327. cribl_control_plane/models/outputopentelemetry.py +240 -40
  328. cribl_control_plane/models/outputprometheus.py +145 -26
  329. cribl_control_plane/models/outputring.py +54 -13
  330. cribl_control_plane/models/outputs3.py +238 -31
  331. cribl_control_plane/models/outputsecuritylake.py +182 -21
  332. cribl_control_plane/models/outputsentinel.py +175 -32
  333. cribl_control_plane/models/outputsentineloneaisiem.py +184 -38
  334. cribl_control_plane/models/outputservicenow.py +226 -41
  335. cribl_control_plane/models/outputsignalfx.py +145 -26
  336. cribl_control_plane/models/outputsns.py +146 -28
  337. cribl_control_plane/models/outputsplunk.py +209 -39
  338. cribl_control_plane/models/outputsplunkhec.py +243 -31
  339. cribl_control_plane/models/outputsplunklb.py +266 -46
  340. cribl_control_plane/models/outputsqs.py +166 -36
  341. cribl_control_plane/models/outputstatsd.py +130 -28
  342. cribl_control_plane/models/outputstatsdext.py +131 -28
  343. cribl_control_plane/models/outputsumologic.py +146 -25
  344. cribl_control_plane/models/outputsyslog.py +323 -51
  345. cribl_control_plane/models/outputtcpjson.py +191 -37
  346. cribl_control_plane/models/outputwavefront.py +145 -26
  347. cribl_control_plane/models/outputwebhook.py +216 -38
  348. cribl_control_plane/models/outputxsiam.py +148 -31
  349. cribl_control_plane/models/packinfo.py +11 -8
  350. cribl_control_plane/models/packinstallinfo.py +14 -11
  351. cribl_control_plane/models/packrequestbody_union.py +140 -0
  352. cribl_control_plane/models/packupgraderequest.py +26 -0
  353. cribl_control_plane/models/piisettings_union.py +31 -0
  354. cribl_control_plane/models/productscore.py +10 -0
  355. cribl_control_plane/models/rbacresource.py +2 -1
  356. cribl_control_plane/models/resourcepolicy.py +15 -2
  357. cribl_control_plane/models/rollbacksettings_union.py +44 -0
  358. cribl_control_plane/models/routeconf.py +3 -4
  359. cribl_control_plane/models/routes.py +0 -24
  360. cribl_control_plane/models/runnablejob.py +27 -0
  361. cribl_control_plane/models/runnablejobcollection.py +628 -0
  362. cribl_control_plane/models/runnablejobexecutor.py +360 -0
  363. cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
  364. cribl_control_plane/models/schemeclientoauth.py +5 -0
  365. cribl_control_plane/models/snisettings_union.py +31 -0
  366. cribl_control_plane/models/systemsettingsconf.py +291 -0
  367. cribl_control_plane/models/tlssettings_union.py +43 -0
  368. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +56 -0
  369. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +53 -0
  370. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +14 -29
  371. cribl_control_plane/models/updatehectokenrequest.py +7 -1
  372. cribl_control_plane/models/updateinputbyidop.py +5 -23
  373. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +5 -23
  374. cribl_control_plane/models/updateoutputbyidop.py +5 -23
  375. cribl_control_plane/models/updatepacksbyidop.py +12 -50
  376. cribl_control_plane/models/updatepacksop.py +12 -24
  377. cribl_control_plane/models/updatepipelinebyidop.py +5 -23
  378. cribl_control_plane/models/updateroutesbyidop.py +8 -27
  379. cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
  380. cribl_control_plane/models/upgradepackageurls.py +20 -0
  381. cribl_control_plane/models/upgradesettings.py +38 -0
  382. cribl_control_plane/models/uploadpackresponse.py +13 -0
  383. cribl_control_plane/models/{appmode.py → workertypes.py} +2 -5
  384. cribl_control_plane/{workers_sdk.py → nodes.py} +102 -234
  385. cribl_control_plane/packs.py +385 -184
  386. cribl_control_plane/pipelines.py +116 -66
  387. cribl_control_plane/routes_sdk.py +102 -70
  388. cribl_control_plane/samples.py +407 -0
  389. cribl_control_plane/sdk.py +35 -25
  390. cribl_control_plane/settings.py +20 -0
  391. cribl_control_plane/sources.py +143 -545
  392. cribl_control_plane/statuses.py +195 -0
  393. cribl_control_plane/summaries.py +195 -0
  394. cribl_control_plane/system_sdk.py +20 -0
  395. cribl_control_plane/teams.py +36 -28
  396. cribl_control_plane/tokens.py +210 -0
  397. cribl_control_plane/utils/__init__.py +18 -5
  398. cribl_control_plane/utils/annotations.py +32 -8
  399. cribl_control_plane/utils/eventstreaming.py +10 -0
  400. cribl_control_plane/utils/forms.py +21 -10
  401. cribl_control_plane/utils/queryparams.py +14 -2
  402. cribl_control_plane/utils/retries.py +69 -5
  403. cribl_control_plane/utils/security.py +5 -0
  404. cribl_control_plane/utils/unmarshal_json_response.py +15 -1
  405. cribl_control_plane/versions.py +31 -0
  406. cribl_control_plane/{distributed.py → versions_configs.py} +29 -35
  407. cribl_control_plane-0.4.0b23.dist-info/METADATA +855 -0
  408. cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
  409. {cribl_control_plane-0.0.21.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
  410. cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
  411. cribl_control_plane/errors/healthstatus_error.py +0 -32
  412. cribl_control_plane/models/createinputop.py +0 -18238
  413. cribl_control_plane/models/createoutputop.py +0 -18437
  414. cribl_control_plane/models/createpipelineop.py +0 -24
  415. cribl_control_plane/models/createproductsgroupsbyproductop.py +0 -54
  416. cribl_control_plane/models/createversionpushop.py +0 -23
  417. cribl_control_plane/models/createversionsyncop.py +0 -23
  418. cribl_control_plane/models/deletegroupsbyidop.py +0 -37
  419. cribl_control_plane/models/getgroupsaclbyidop.py +0 -63
  420. cribl_control_plane/models/getgroupsbyidop.py +0 -49
  421. cribl_control_plane/models/getgroupsconfigversionbyidop.py +0 -36
  422. cribl_control_plane/models/getproductsgroupsaclteamsbyproductandidop.py +0 -78
  423. cribl_control_plane/models/getproductsgroupsbyproductop.py +0 -58
  424. cribl_control_plane/models/getsummaryworkersop.py +0 -39
  425. cribl_control_plane/models/getversioncurrentbranchop.py +0 -23
  426. cribl_control_plane/models/getworkersop.py +0 -82
  427. cribl_control_plane/models/healthstatus.py +0 -33
  428. cribl_control_plane/models/packrequestbody.py +0 -75
  429. cribl_control_plane/models/restartresponse.py +0 -26
  430. cribl_control_plane/models/routesroute_input.py +0 -67
  431. cribl_control_plane/models/updategroupsbyidop.py +0 -48
  432. cribl_control_plane/models/updategroupsdeploybyidop.py +0 -46
  433. cribl_control_plane/models/updateworkersrestartop.py +0 -24
  434. cribl_control_plane/versioning.py +0 -2309
  435. cribl_control_plane-0.0.21.dist-info/METADATA +0 -561
  436. cribl_control_plane-0.0.21.dist-info/RECORD +0 -301
@@ -1,10 +1,14 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from 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
7
- from typing import Any, List, Optional, Union
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import List, Optional, Union
8
12
  from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
9
13
 
10
14
 
@@ -23,20 +27,32 @@ class InputGrafanaConnection2(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputGrafanaMode2(str, Enum):
30
+ class InputGrafanaMode2(str, Enum, metaclass=utils.OpenEnumMeta):
27
31
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
28
32
 
33
+ # Smart
29
34
  SMART = "smart"
35
+ # Always On
30
36
  ALWAYS = "always"
31
37
 
32
38
 
33
- class InputGrafanaCompression2(str, Enum):
39
+ class InputGrafanaCompression2(str, Enum, metaclass=utils.OpenEnumMeta):
34
40
  r"""Codec to use to compress the persisted data"""
35
41
 
42
+ # None
36
43
  NONE = "none"
44
+ # Gzip
37
45
  GZIP = "gzip"
38
46
 
39
47
 
48
+ class InputGrafanaPqControls2TypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputGrafanaPqControls2(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputGrafanaPq2TypedDict(TypedDict):
41
57
  mode: NotRequired[InputGrafanaMode2]
42
58
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
@@ -52,10 +68,13 @@ class InputGrafanaPq2TypedDict(TypedDict):
52
68
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
53
69
  compress: NotRequired[InputGrafanaCompression2]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputGrafanaPqControls2TypedDict]
55
72
 
56
73
 
57
74
  class InputGrafanaPq2(BaseModel):
58
- mode: Optional[InputGrafanaMode2] = InputGrafanaMode2.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputGrafanaMode2], PlainValidator(validate_open_enum(False))
77
+ ] = InputGrafanaMode2.ALWAYS
59
78
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
60
79
 
61
80
  max_buffer_size: Annotated[
@@ -79,18 +98,42 @@ class InputGrafanaPq2(BaseModel):
79
98
  path: Optional[str] = "$CRIBL_HOME/state/queues"
80
99
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
81
100
 
82
- compress: Optional[InputGrafanaCompression2] = InputGrafanaCompression2.NONE
101
+ compress: Annotated[
102
+ Optional[InputGrafanaCompression2], PlainValidator(validate_open_enum(False))
103
+ ] = InputGrafanaCompression2.NONE
83
104
  r"""Codec to use to compress the persisted data"""
84
105
 
106
+ pq_controls: Annotated[
107
+ Optional[InputGrafanaPqControls2], pydantic.Field(alias="pqControls")
108
+ ] = None
85
109
 
86
- class InputGrafanaMinimumTLSVersion2(str, Enum):
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputGrafanaMode2(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputGrafanaCompression2(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
128
+
129
+ class InputGrafanaMinimumTLSVersion2(str, Enum, metaclass=utils.OpenEnumMeta):
87
130
  TL_SV1 = "TLSv1"
88
131
  TL_SV1_1 = "TLSv1.1"
89
132
  TL_SV1_2 = "TLSv1.2"
90
133
  TL_SV1_3 = "TLSv1.3"
91
134
 
92
135
 
93
- class InputGrafanaMaximumTLSVersion2(str, Enum):
136
+ class InputGrafanaMaximumTLSVersion2(str, Enum, metaclass=utils.OpenEnumMeta):
94
137
  TL_SV1 = "TLSv1"
95
138
  TL_SV1_1 = "TLSv1.1"
96
139
  TL_SV1_2 = "TLSv1.2"
@@ -99,6 +142,12 @@ class InputGrafanaMaximumTLSVersion2(str, Enum):
99
142
 
100
143
  class InputGrafanaTLSSettingsServerSide2TypedDict(TypedDict):
101
144
  disabled: NotRequired[bool]
145
+ request_cert: NotRequired[bool]
146
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
147
+ reject_unauthorized: NotRequired[bool]
148
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
149
+ common_name_regex: NotRequired[str]
150
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
102
151
  certificate_name: NotRequired[str]
103
152
  r"""The name of the predefined certificate"""
104
153
  priv_key_path: NotRequired[str]
@@ -109,10 +158,6 @@ class InputGrafanaTLSSettingsServerSide2TypedDict(TypedDict):
109
158
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
110
159
  ca_path: NotRequired[str]
111
160
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
112
- request_cert: NotRequired[bool]
113
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
114
- reject_unauthorized: NotRequired[Any]
115
- common_name_regex: NotRequired[Any]
116
161
  min_version: NotRequired[InputGrafanaMinimumTLSVersion2]
117
162
  max_version: NotRequired[InputGrafanaMaximumTLSVersion2]
118
163
 
@@ -120,6 +165,19 @@ class InputGrafanaTLSSettingsServerSide2TypedDict(TypedDict):
120
165
  class InputGrafanaTLSSettingsServerSide2(BaseModel):
121
166
  disabled: Optional[bool] = True
122
167
 
168
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
169
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
170
+
171
+ reject_unauthorized: Annotated[
172
+ Optional[bool], pydantic.Field(alias="rejectUnauthorized")
173
+ ] = True
174
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
175
+
176
+ common_name_regex: Annotated[
177
+ Optional[str], pydantic.Field(alias="commonNameRegex")
178
+ ] = "/.*/"
179
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
180
+
123
181
  certificate_name: Annotated[
124
182
  Optional[str], pydantic.Field(alias="certificateName")
125
183
  ] = None
@@ -137,27 +195,44 @@ class InputGrafanaTLSSettingsServerSide2(BaseModel):
137
195
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
138
196
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
139
197
 
140
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
141
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
142
-
143
- reject_unauthorized: Annotated[
144
- Optional[Any], pydantic.Field(alias="rejectUnauthorized")
145
- ] = None
146
-
147
- common_name_regex: Annotated[
148
- Optional[Any], pydantic.Field(alias="commonNameRegex")
149
- ] = None
150
-
151
198
  min_version: Annotated[
152
- Optional[InputGrafanaMinimumTLSVersion2], pydantic.Field(alias="minVersion")
199
+ Annotated[
200
+ Optional[InputGrafanaMinimumTLSVersion2],
201
+ PlainValidator(validate_open_enum(False)),
202
+ ],
203
+ pydantic.Field(alias="minVersion"),
153
204
  ] = None
154
205
 
155
206
  max_version: Annotated[
156
- Optional[InputGrafanaMaximumTLSVersion2], pydantic.Field(alias="maxVersion")
207
+ Annotated[
208
+ Optional[InputGrafanaMaximumTLSVersion2],
209
+ PlainValidator(validate_open_enum(False)),
210
+ ],
211
+ pydantic.Field(alias="maxVersion"),
157
212
  ] = None
158
213
 
159
-
160
- class InputGrafanaPrometheusAuthAuthenticationType2(str, Enum):
214
+ @field_serializer("min_version")
215
+ def serialize_min_version(self, value):
216
+ if isinstance(value, str):
217
+ try:
218
+ return models.InputGrafanaMinimumTLSVersion2(value)
219
+ except ValueError:
220
+ return value
221
+ return value
222
+
223
+ @field_serializer("max_version")
224
+ def serialize_max_version(self, value):
225
+ if isinstance(value, str):
226
+ try:
227
+ return models.InputGrafanaMaximumTLSVersion2(value)
228
+ except ValueError:
229
+ return value
230
+ return value
231
+
232
+
233
+ class InputGrafanaPrometheusAuthAuthenticationType2(
234
+ str, Enum, metaclass=utils.OpenEnumMeta
235
+ ):
161
236
  r"""Remote Write authentication type"""
162
237
 
163
238
  NONE = "none"
@@ -229,7 +304,10 @@ class InputGrafanaPrometheusAuth2TypedDict(TypedDict):
229
304
 
230
305
  class InputGrafanaPrometheusAuth2(BaseModel):
231
306
  auth_type: Annotated[
232
- Optional[InputGrafanaPrometheusAuthAuthenticationType2],
307
+ Annotated[
308
+ Optional[InputGrafanaPrometheusAuthAuthenticationType2],
309
+ PlainValidator(validate_open_enum(False)),
310
+ ],
233
311
  pydantic.Field(alias="authType"),
234
312
  ] = InputGrafanaPrometheusAuthAuthenticationType2.NONE
235
313
  r"""Remote Write authentication type"""
@@ -285,8 +363,17 @@ class InputGrafanaPrometheusAuth2(BaseModel):
285
363
  ] = None
286
364
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
287
365
 
366
+ @field_serializer("auth_type")
367
+ def serialize_auth_type(self, value):
368
+ if isinstance(value, str):
369
+ try:
370
+ return models.InputGrafanaPrometheusAuthAuthenticationType2(value)
371
+ except ValueError:
372
+ return value
373
+ return value
374
+
288
375
 
289
- class InputGrafanaLokiAuthAuthenticationType2(str, Enum):
376
+ class InputGrafanaLokiAuthAuthenticationType2(str, Enum, metaclass=utils.OpenEnumMeta):
290
377
  r"""Loki logs authentication type"""
291
378
 
292
379
  NONE = "none"
@@ -358,7 +445,10 @@ class InputGrafanaLokiAuth2TypedDict(TypedDict):
358
445
 
359
446
  class InputGrafanaLokiAuth2(BaseModel):
360
447
  auth_type: Annotated[
361
- Optional[InputGrafanaLokiAuthAuthenticationType2],
448
+ Annotated[
449
+ Optional[InputGrafanaLokiAuthAuthenticationType2],
450
+ PlainValidator(validate_open_enum(False)),
451
+ ],
362
452
  pydantic.Field(alias="authType"),
363
453
  ] = InputGrafanaLokiAuthAuthenticationType2.NONE
364
454
  r"""Loki logs authentication type"""
@@ -414,6 +504,15 @@ class InputGrafanaLokiAuth2(BaseModel):
414
504
  ] = None
415
505
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
416
506
 
507
+ @field_serializer("auth_type")
508
+ def serialize_auth_type(self, value):
509
+ if isinstance(value, str):
510
+ try:
511
+ return models.InputGrafanaLokiAuthAuthenticationType2(value)
512
+ except ValueError:
513
+ return value
514
+ return value
515
+
417
516
 
418
517
  class InputGrafanaMetadatum2TypedDict(TypedDict):
419
518
  name: str
@@ -429,11 +528,11 @@ class InputGrafanaMetadatum2(BaseModel):
429
528
 
430
529
 
431
530
  class InputGrafanaGrafana2TypedDict(TypedDict):
531
+ type: InputGrafanaType2
432
532
  port: float
433
533
  r"""Port to listen on"""
434
534
  id: NotRequired[str]
435
535
  r"""Unique ID for this input"""
436
- type: NotRequired[InputGrafanaType2]
437
536
  disabled: NotRequired[bool]
438
537
  pipeline: NotRequired[str]
439
538
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -485,14 +584,14 @@ class InputGrafanaGrafana2TypedDict(TypedDict):
485
584
 
486
585
 
487
586
  class InputGrafanaGrafana2(BaseModel):
587
+ type: InputGrafanaType2
588
+
488
589
  port: float
489
590
  r"""Port to listen on"""
490
591
 
491
592
  id: Optional[str] = None
492
593
  r"""Unique ID for this input"""
493
594
 
494
- type: Optional[InputGrafanaType2] = None
495
-
496
595
  disabled: Optional[bool] = False
497
596
 
498
597
  pipeline: Optional[str] = None
@@ -616,20 +715,32 @@ class InputGrafanaConnection1(BaseModel):
616
715
  pipeline: Optional[str] = None
617
716
 
618
717
 
619
- class InputGrafanaMode1(str, Enum):
718
+ class InputGrafanaMode1(str, Enum, metaclass=utils.OpenEnumMeta):
620
719
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
621
720
 
721
+ # Smart
622
722
  SMART = "smart"
723
+ # Always On
623
724
  ALWAYS = "always"
624
725
 
625
726
 
626
- class InputGrafanaCompression1(str, Enum):
727
+ class InputGrafanaCompression1(str, Enum, metaclass=utils.OpenEnumMeta):
627
728
  r"""Codec to use to compress the persisted data"""
628
729
 
730
+ # None
629
731
  NONE = "none"
732
+ # Gzip
630
733
  GZIP = "gzip"
631
734
 
632
735
 
736
+ class InputGrafanaPqControls1TypedDict(TypedDict):
737
+ pass
738
+
739
+
740
+ class InputGrafanaPqControls1(BaseModel):
741
+ pass
742
+
743
+
633
744
  class InputGrafanaPq1TypedDict(TypedDict):
634
745
  mode: NotRequired[InputGrafanaMode1]
635
746
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
@@ -645,10 +756,13 @@ class InputGrafanaPq1TypedDict(TypedDict):
645
756
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
646
757
  compress: NotRequired[InputGrafanaCompression1]
647
758
  r"""Codec to use to compress the persisted data"""
759
+ pq_controls: NotRequired[InputGrafanaPqControls1TypedDict]
648
760
 
649
761
 
650
762
  class InputGrafanaPq1(BaseModel):
651
- mode: Optional[InputGrafanaMode1] = InputGrafanaMode1.ALWAYS
763
+ mode: Annotated[
764
+ Optional[InputGrafanaMode1], PlainValidator(validate_open_enum(False))
765
+ ] = InputGrafanaMode1.ALWAYS
652
766
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
653
767
 
654
768
  max_buffer_size: Annotated[
@@ -672,18 +786,42 @@ class InputGrafanaPq1(BaseModel):
672
786
  path: Optional[str] = "$CRIBL_HOME/state/queues"
673
787
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
674
788
 
675
- compress: Optional[InputGrafanaCompression1] = InputGrafanaCompression1.NONE
789
+ compress: Annotated[
790
+ Optional[InputGrafanaCompression1], PlainValidator(validate_open_enum(False))
791
+ ] = InputGrafanaCompression1.NONE
676
792
  r"""Codec to use to compress the persisted data"""
677
793
 
794
+ pq_controls: Annotated[
795
+ Optional[InputGrafanaPqControls1], pydantic.Field(alias="pqControls")
796
+ ] = None
678
797
 
679
- class InputGrafanaMinimumTLSVersion1(str, Enum):
798
+ @field_serializer("mode")
799
+ def serialize_mode(self, value):
800
+ if isinstance(value, str):
801
+ try:
802
+ return models.InputGrafanaMode1(value)
803
+ except ValueError:
804
+ return value
805
+ return value
806
+
807
+ @field_serializer("compress")
808
+ def serialize_compress(self, value):
809
+ if isinstance(value, str):
810
+ try:
811
+ return models.InputGrafanaCompression1(value)
812
+ except ValueError:
813
+ return value
814
+ return value
815
+
816
+
817
+ class InputGrafanaMinimumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
680
818
  TL_SV1 = "TLSv1"
681
819
  TL_SV1_1 = "TLSv1.1"
682
820
  TL_SV1_2 = "TLSv1.2"
683
821
  TL_SV1_3 = "TLSv1.3"
684
822
 
685
823
 
686
- class InputGrafanaMaximumTLSVersion1(str, Enum):
824
+ class InputGrafanaMaximumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
687
825
  TL_SV1 = "TLSv1"
688
826
  TL_SV1_1 = "TLSv1.1"
689
827
  TL_SV1_2 = "TLSv1.2"
@@ -692,6 +830,12 @@ class InputGrafanaMaximumTLSVersion1(str, Enum):
692
830
 
693
831
  class InputGrafanaTLSSettingsServerSide1TypedDict(TypedDict):
694
832
  disabled: NotRequired[bool]
833
+ request_cert: NotRequired[bool]
834
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
835
+ reject_unauthorized: NotRequired[bool]
836
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
837
+ common_name_regex: NotRequired[str]
838
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
695
839
  certificate_name: NotRequired[str]
696
840
  r"""The name of the predefined certificate"""
697
841
  priv_key_path: NotRequired[str]
@@ -702,10 +846,6 @@ class InputGrafanaTLSSettingsServerSide1TypedDict(TypedDict):
702
846
  r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
703
847
  ca_path: NotRequired[str]
704
848
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
705
- request_cert: NotRequired[bool]
706
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
707
- reject_unauthorized: NotRequired[Any]
708
- common_name_regex: NotRequired[Any]
709
849
  min_version: NotRequired[InputGrafanaMinimumTLSVersion1]
710
850
  max_version: NotRequired[InputGrafanaMaximumTLSVersion1]
711
851
 
@@ -713,6 +853,19 @@ class InputGrafanaTLSSettingsServerSide1TypedDict(TypedDict):
713
853
  class InputGrafanaTLSSettingsServerSide1(BaseModel):
714
854
  disabled: Optional[bool] = True
715
855
 
856
+ request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
857
+ r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
858
+
859
+ reject_unauthorized: Annotated[
860
+ Optional[bool], pydantic.Field(alias="rejectUnauthorized")
861
+ ] = True
862
+ r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
863
+
864
+ common_name_regex: Annotated[
865
+ Optional[str], pydantic.Field(alias="commonNameRegex")
866
+ ] = "/.*/"
867
+ r"""Regex matching allowable common names in peer certificates' subject attribute"""
868
+
716
869
  certificate_name: Annotated[
717
870
  Optional[str], pydantic.Field(alias="certificateName")
718
871
  ] = None
@@ -730,27 +883,44 @@ class InputGrafanaTLSSettingsServerSide1(BaseModel):
730
883
  ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
731
884
  r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
732
885
 
733
- request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
734
- r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
735
-
736
- reject_unauthorized: Annotated[
737
- Optional[Any], pydantic.Field(alias="rejectUnauthorized")
738
- ] = None
739
-
740
- common_name_regex: Annotated[
741
- Optional[Any], pydantic.Field(alias="commonNameRegex")
742
- ] = None
743
-
744
886
  min_version: Annotated[
745
- Optional[InputGrafanaMinimumTLSVersion1], pydantic.Field(alias="minVersion")
887
+ Annotated[
888
+ Optional[InputGrafanaMinimumTLSVersion1],
889
+ PlainValidator(validate_open_enum(False)),
890
+ ],
891
+ pydantic.Field(alias="minVersion"),
746
892
  ] = None
747
893
 
748
894
  max_version: Annotated[
749
- Optional[InputGrafanaMaximumTLSVersion1], pydantic.Field(alias="maxVersion")
895
+ Annotated[
896
+ Optional[InputGrafanaMaximumTLSVersion1],
897
+ PlainValidator(validate_open_enum(False)),
898
+ ],
899
+ pydantic.Field(alias="maxVersion"),
750
900
  ] = None
751
901
 
752
-
753
- class InputGrafanaPrometheusAuthAuthenticationType1(str, Enum):
902
+ @field_serializer("min_version")
903
+ def serialize_min_version(self, value):
904
+ if isinstance(value, str):
905
+ try:
906
+ return models.InputGrafanaMinimumTLSVersion1(value)
907
+ except ValueError:
908
+ return value
909
+ return value
910
+
911
+ @field_serializer("max_version")
912
+ def serialize_max_version(self, value):
913
+ if isinstance(value, str):
914
+ try:
915
+ return models.InputGrafanaMaximumTLSVersion1(value)
916
+ except ValueError:
917
+ return value
918
+ return value
919
+
920
+
921
+ class InputGrafanaPrometheusAuthAuthenticationType1(
922
+ str, Enum, metaclass=utils.OpenEnumMeta
923
+ ):
754
924
  r"""Remote Write authentication type"""
755
925
 
756
926
  NONE = "none"
@@ -822,7 +992,10 @@ class InputGrafanaPrometheusAuth1TypedDict(TypedDict):
822
992
 
823
993
  class InputGrafanaPrometheusAuth1(BaseModel):
824
994
  auth_type: Annotated[
825
- Optional[InputGrafanaPrometheusAuthAuthenticationType1],
995
+ Annotated[
996
+ Optional[InputGrafanaPrometheusAuthAuthenticationType1],
997
+ PlainValidator(validate_open_enum(False)),
998
+ ],
826
999
  pydantic.Field(alias="authType"),
827
1000
  ] = InputGrafanaPrometheusAuthAuthenticationType1.NONE
828
1001
  r"""Remote Write authentication type"""
@@ -878,8 +1051,17 @@ class InputGrafanaPrometheusAuth1(BaseModel):
878
1051
  ] = None
879
1052
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
880
1053
 
1054
+ @field_serializer("auth_type")
1055
+ def serialize_auth_type(self, value):
1056
+ if isinstance(value, str):
1057
+ try:
1058
+ return models.InputGrafanaPrometheusAuthAuthenticationType1(value)
1059
+ except ValueError:
1060
+ return value
1061
+ return value
1062
+
881
1063
 
882
- class InputGrafanaLokiAuthAuthenticationType1(str, Enum):
1064
+ class InputGrafanaLokiAuthAuthenticationType1(str, Enum, metaclass=utils.OpenEnumMeta):
883
1065
  r"""Loki logs authentication type"""
884
1066
 
885
1067
  NONE = "none"
@@ -951,7 +1133,10 @@ class InputGrafanaLokiAuth1TypedDict(TypedDict):
951
1133
 
952
1134
  class InputGrafanaLokiAuth1(BaseModel):
953
1135
  auth_type: Annotated[
954
- Optional[InputGrafanaLokiAuthAuthenticationType1],
1136
+ Annotated[
1137
+ Optional[InputGrafanaLokiAuthAuthenticationType1],
1138
+ PlainValidator(validate_open_enum(False)),
1139
+ ],
955
1140
  pydantic.Field(alias="authType"),
956
1141
  ] = InputGrafanaLokiAuthAuthenticationType1.NONE
957
1142
  r"""Loki logs authentication type"""
@@ -1007,6 +1192,15 @@ class InputGrafanaLokiAuth1(BaseModel):
1007
1192
  ] = None
1008
1193
  r"""Additional headers to send in the OAuth login request. @{product} will automatically add the content-type header 'application/x-www-form-urlencoded' when sending this request."""
1009
1194
 
1195
+ @field_serializer("auth_type")
1196
+ def serialize_auth_type(self, value):
1197
+ if isinstance(value, str):
1198
+ try:
1199
+ return models.InputGrafanaLokiAuthAuthenticationType1(value)
1200
+ except ValueError:
1201
+ return value
1202
+ return value
1203
+
1010
1204
 
1011
1205
  class InputGrafanaMetadatum1TypedDict(TypedDict):
1012
1206
  name: str
@@ -1022,11 +1216,11 @@ class InputGrafanaMetadatum1(BaseModel):
1022
1216
 
1023
1217
 
1024
1218
  class InputGrafanaGrafana1TypedDict(TypedDict):
1219
+ type: InputGrafanaType1
1025
1220
  port: float
1026
1221
  r"""Port to listen on"""
1027
1222
  id: NotRequired[str]
1028
1223
  r"""Unique ID for this input"""
1029
- type: NotRequired[InputGrafanaType1]
1030
1224
  disabled: NotRequired[bool]
1031
1225
  pipeline: NotRequired[str]
1032
1226
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -1078,14 +1272,14 @@ class InputGrafanaGrafana1TypedDict(TypedDict):
1078
1272
 
1079
1273
 
1080
1274
  class InputGrafanaGrafana1(BaseModel):
1275
+ type: InputGrafanaType1
1276
+
1081
1277
  port: float
1082
1278
  r"""Port to listen on"""
1083
1279
 
1084
1280
  id: Optional[str] = None
1085
1281
  r"""Unique ID for this input"""
1086
1282
 
1087
- type: Optional[InputGrafanaType1] = None
1088
-
1089
1283
  disabled: Optional[bool] = False
1090
1284
 
1091
1285
  pipeline: Optional[str] = None
@@ -1194,12 +1388,12 @@ class InputGrafanaGrafana1(BaseModel):
1194
1388
  description: Optional[str] = None
1195
1389
 
1196
1390
 
1197
- InputGrafanaUnionTypedDict = TypeAliasType(
1198
- "InputGrafanaUnionTypedDict",
1391
+ InputGrafanaTypedDict = TypeAliasType(
1392
+ "InputGrafanaTypedDict",
1199
1393
  Union[InputGrafanaGrafana1TypedDict, InputGrafanaGrafana2TypedDict],
1200
1394
  )
1201
1395
 
1202
1396
 
1203
- InputGrafanaUnion = TypeAliasType(
1204
- "InputGrafanaUnion", Union[InputGrafanaGrafana1, InputGrafanaGrafana2]
1397
+ InputGrafana = TypeAliasType(
1398
+ "InputGrafana", Union[InputGrafanaGrafana1, InputGrafanaGrafana2]
1205
1399
  )