@orq-ai/node 4.11.0-rc.15 → 4.11.0-rc.17

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 (297) hide show
  1. package/README.md +55 -36
  2. package/funcs/budgetsCheck.d.ts +17 -0
  3. package/funcs/budgetsCheck.d.ts.map +1 -0
  4. package/funcs/budgetsCheck.js +115 -0
  5. package/funcs/budgetsCheck.js.map +1 -0
  6. package/funcs/budgetsCreate.d.ts +17 -0
  7. package/funcs/budgetsCreate.d.ts.map +1 -0
  8. package/funcs/budgetsCreate.js +115 -0
  9. package/funcs/budgetsCreate.js.map +1 -0
  10. package/funcs/budgetsDelete.d.ts +18 -0
  11. package/funcs/budgetsDelete.d.ts.map +1 -0
  12. package/funcs/budgetsDelete.js +121 -0
  13. package/funcs/budgetsDelete.js.map +1 -0
  14. package/funcs/budgetsGet.d.ts +18 -0
  15. package/funcs/budgetsGet.d.ts.map +1 -0
  16. package/funcs/budgetsGet.js +121 -0
  17. package/funcs/budgetsGet.js.map +1 -0
  18. package/funcs/budgetsGetConsumption.d.ts +18 -0
  19. package/funcs/budgetsGetConsumption.d.ts.map +1 -0
  20. package/funcs/budgetsGetConsumption.js +121 -0
  21. package/funcs/budgetsGetConsumption.js.map +1 -0
  22. package/funcs/budgetsList.d.ts +18 -0
  23. package/funcs/budgetsList.d.ts.map +1 -0
  24. package/funcs/budgetsList.js +126 -0
  25. package/funcs/budgetsList.js.map +1 -0
  26. package/funcs/budgetsResetConsumption.d.ts +18 -0
  27. package/funcs/budgetsResetConsumption.d.ts.map +1 -0
  28. package/funcs/budgetsResetConsumption.js +124 -0
  29. package/funcs/budgetsResetConsumption.js.map +1 -0
  30. package/funcs/budgetsUpdate.d.ts +18 -0
  31. package/funcs/budgetsUpdate.d.ts.map +1 -0
  32. package/funcs/budgetsUpdate.js +124 -0
  33. package/funcs/budgetsUpdate.js.map +1 -0
  34. package/jsr.json +1 -1
  35. package/lib/config.d.ts +3 -3
  36. package/lib/config.js +3 -3
  37. package/lib/event-streams.d.ts.map +1 -1
  38. package/lib/event-streams.js +28 -13
  39. package/lib/event-streams.js.map +1 -1
  40. package/models/components/apikeybudgetscope.d.ts +23 -0
  41. package/models/components/apikeybudgetscope.d.ts.map +1 -0
  42. package/models/components/apikeybudgetscope.js +67 -0
  43. package/models/components/apikeybudgetscope.js.map +1 -0
  44. package/models/components/budget.d.ts +60 -0
  45. package/models/components/budget.d.ts.map +1 -0
  46. package/models/components/budget.js +73 -0
  47. package/models/components/budget.js.map +1 -0
  48. package/models/components/budgetlimits.d.ts +29 -0
  49. package/models/components/budgetlimits.d.ts.map +1 -0
  50. package/models/components/budgetlimits.js +72 -0
  51. package/models/components/budgetlimits.js.map +1 -0
  52. package/models/components/budgetmatch.d.ts +26 -0
  53. package/models/components/budgetmatch.d.ts.map +1 -0
  54. package/models/components/budgetmatch.js +58 -0
  55. package/models/components/budgetmatch.js.map +1 -0
  56. package/models/components/budgetperiod.d.ts +16 -0
  57. package/models/components/budgetperiod.d.ts.map +1 -0
  58. package/models/components/budgetperiod.js +53 -0
  59. package/models/components/budgetperiod.js.map +1 -0
  60. package/models/components/budgetrejection.d.ts +17 -0
  61. package/models/components/budgetrejection.d.ts.map +1 -0
  62. package/models/components/budgetrejection.js +60 -0
  63. package/models/components/budgetrejection.js.map +1 -0
  64. package/models/components/budgetscope.d.ts +71 -0
  65. package/models/components/budgetscope.d.ts.map +1 -0
  66. package/models/components/budgetscope.js +83 -0
  67. package/models/components/budgetscope.js.map +1 -0
  68. package/models/components/budgetscopekind.d.ts +15 -0
  69. package/models/components/budgetscopekind.d.ts.map +1 -0
  70. package/models/components/budgetscopekind.js +52 -0
  71. package/models/components/budgetscopekind.js.map +1 -0
  72. package/models/components/checkbudgetsrequest.d.ts +72 -0
  73. package/models/components/checkbudgetsrequest.d.ts.map +1 -0
  74. package/models/components/checkbudgetsrequest.js +69 -0
  75. package/models/components/checkbudgetsrequest.js.map +1 -0
  76. package/models/components/checkbudgetsresponse.d.ts +34 -0
  77. package/models/components/checkbudgetsresponse.d.ts.map +1 -0
  78. package/models/components/checkbudgetsresponse.js +56 -0
  79. package/models/components/checkbudgetsresponse.js.map +1 -0
  80. package/models/components/createbudgetrequest.d.ts +62 -0
  81. package/models/components/createbudgetrequest.d.ts.map +1 -0
  82. package/models/components/createbudgetrequest.js +65 -0
  83. package/models/components/createbudgetrequest.js.map +1 -0
  84. package/models/components/createbudgetresponse.d.ts +14 -0
  85. package/models/components/createbudgetresponse.d.ts.map +1 -0
  86. package/models/components/createbudgetresponse.js +51 -0
  87. package/models/components/createbudgetresponse.js.map +1 -0
  88. package/models/components/deletebudgetresponse.d.ts +8 -0
  89. package/models/components/deletebudgetresponse.d.ts.map +1 -0
  90. package/models/components/deletebudgetresponse.js +48 -0
  91. package/models/components/deletebudgetresponse.js.map +1 -0
  92. package/models/components/dimensioninfo.d.ts +15 -0
  93. package/models/components/dimensioninfo.d.ts.map +1 -0
  94. package/models/components/dimensioninfo.js +57 -0
  95. package/models/components/dimensioninfo.js.map +1 -0
  96. package/models/components/getbudgetconsumptionresponse.d.ts +34 -0
  97. package/models/components/getbudgetconsumptionresponse.d.ts.map +1 -0
  98. package/models/components/getbudgetconsumptionresponse.js +63 -0
  99. package/models/components/getbudgetconsumptionresponse.js.map +1 -0
  100. package/models/components/getbudgetresponse.d.ts +14 -0
  101. package/models/components/getbudgetresponse.d.ts.map +1 -0
  102. package/models/components/getbudgetresponse.js +51 -0
  103. package/models/components/getbudgetresponse.js.map +1 -0
  104. package/models/components/identity.d.ts +4 -4
  105. package/models/components/identity.d.ts.map +1 -1
  106. package/models/components/identity.js +6 -6
  107. package/models/components/identity.js.map +1 -1
  108. package/models/components/identitybudgetscope.d.ts +23 -0
  109. package/models/components/identitybudgetscope.d.ts.map +1 -0
  110. package/models/components/identitybudgetscope.js +67 -0
  111. package/models/components/identitybudgetscope.js.map +1 -0
  112. package/models/components/index.d.ts +27 -0
  113. package/models/components/index.d.ts.map +1 -1
  114. package/models/components/index.js +27 -0
  115. package/models/components/index.js.map +1 -1
  116. package/models/components/listbudgetsresponse.d.ts +25 -0
  117. package/models/components/listbudgetsresponse.d.ts.map +1 -0
  118. package/models/components/listbudgetsresponse.js +58 -0
  119. package/models/components/listbudgetsresponse.js.map +1 -0
  120. package/models/components/modelbudgetscope.d.ts +24 -0
  121. package/models/components/modelbudgetscope.d.ts.map +1 -0
  122. package/models/components/modelbudgetscope.js +67 -0
  123. package/models/components/modelbudgetscope.js.map +1 -0
  124. package/models/components/projectbudgetscope.d.ts +20 -0
  125. package/models/components/projectbudgetscope.d.ts.map +1 -0
  126. package/models/components/projectbudgetscope.js +67 -0
  127. package/models/components/projectbudgetscope.js.map +1 -0
  128. package/models/components/providerbudgetscope.d.ts +23 -0
  129. package/models/components/providerbudgetscope.d.ts.map +1 -0
  130. package/models/components/providerbudgetscope.js +58 -0
  131. package/models/components/providerbudgetscope.js.map +1 -0
  132. package/models/components/ratelimit.d.ts +23 -0
  133. package/models/components/ratelimit.d.ts.map +1 -0
  134. package/models/components/ratelimit.js +67 -0
  135. package/models/components/ratelimit.js.map +1 -0
  136. package/models/components/reasoningpart.js +1 -1
  137. package/models/components/resetbudgetconsumptionrequest.d.ts +8 -0
  138. package/models/components/resetbudgetconsumptionrequest.d.ts.map +1 -0
  139. package/models/components/resetbudgetconsumptionrequest.js +47 -0
  140. package/models/components/resetbudgetconsumptionrequest.js.map +1 -0
  141. package/models/components/resetbudgetconsumptionresponse.d.ts +17 -0
  142. package/models/components/resetbudgetconsumptionresponse.d.ts.map +1 -0
  143. package/models/components/resetbudgetconsumptionresponse.js +51 -0
  144. package/models/components/resetbudgetconsumptionresponse.js.map +1 -0
  145. package/models/components/updatebudgetrequest.d.ts +50 -0
  146. package/models/components/updatebudgetrequest.d.ts.map +1 -0
  147. package/models/components/updatebudgetrequest.js +65 -0
  148. package/models/components/updatebudgetrequest.js.map +1 -0
  149. package/models/components/updatebudgetresponse.d.ts +14 -0
  150. package/models/components/updatebudgetresponse.d.ts.map +1 -0
  151. package/models/components/updatebudgetresponse.js +51 -0
  152. package/models/components/updatebudgetresponse.js.map +1 -0
  153. package/models/components/workspacebudgetscope.d.ts +16 -0
  154. package/models/components/workspacebudgetscope.d.ts.map +1 -0
  155. package/models/components/workspacebudgetscope.js +54 -0
  156. package/models/components/workspacebudgetscope.js.map +1 -0
  157. package/models/operations/budgetdelete.d.ts +15 -0
  158. package/models/operations/budgetdelete.d.ts.map +1 -0
  159. package/models/operations/budgetdelete.js +54 -0
  160. package/models/operations/budgetdelete.js.map +1 -0
  161. package/models/operations/budgetget.d.ts +15 -0
  162. package/models/operations/budgetget.d.ts.map +1 -0
  163. package/models/operations/budgetget.js +54 -0
  164. package/models/operations/budgetget.js.map +1 -0
  165. package/models/operations/budgetgetconsumption.d.ts +15 -0
  166. package/models/operations/budgetgetconsumption.d.ts.map +1 -0
  167. package/models/operations/budgetgetconsumption.js +54 -0
  168. package/models/operations/budgetgetconsumption.js.map +1 -0
  169. package/models/operations/budgetlist.d.ts +67 -0
  170. package/models/operations/budgetlist.d.ts.map +1 -0
  171. package/models/operations/budgetlist.js +66 -0
  172. package/models/operations/budgetlist.js.map +1 -0
  173. package/models/operations/budgetresetconsumption.d.ts +18 -0
  174. package/models/operations/budgetresetconsumption.d.ts.map +1 -0
  175. package/models/operations/budgetresetconsumption.js +57 -0
  176. package/models/operations/budgetresetconsumption.js.map +1 -0
  177. package/models/operations/budgetupdate.d.ts +18 -0
  178. package/models/operations/budgetupdate.d.ts.map +1 -0
  179. package/models/operations/budgetupdate.js +57 -0
  180. package/models/operations/budgetupdate.js.map +1 -0
  181. package/models/operations/createdataset.js +1 -1
  182. package/models/operations/createdatasetitem.js +4 -4
  183. package/models/operations/createdatasource.js +1 -1
  184. package/models/operations/createeval.js +16 -16
  185. package/models/operations/createtool.js +6 -6
  186. package/models/operations/getalltools.js +6 -6
  187. package/models/operations/getevals.js +16 -16
  188. package/models/operations/getv2humanevalsets.js +2 -2
  189. package/models/operations/getv2humanevalsetsid.js +2 -2
  190. package/models/operations/index.d.ts +6 -0
  191. package/models/operations/index.d.ts.map +1 -1
  192. package/models/operations/index.js +6 -0
  193. package/models/operations/index.js.map +1 -1
  194. package/models/operations/listdatasetdatapoints.js +4 -4
  195. package/models/operations/listdatasets.js +1 -1
  196. package/models/operations/listdatasources.js +1 -1
  197. package/models/operations/patchv2humanevalsetsid.js +2 -2
  198. package/models/operations/postv2feedbackevaluation.js +3 -3
  199. package/models/operations/postv2humanevalsets.js +2 -2
  200. package/models/operations/retrievedatapoint.js +4 -4
  201. package/models/operations/retrievedataset.js +1 -1
  202. package/models/operations/retrievedatasource.js +1 -1
  203. package/models/operations/retrievetool.js +6 -6
  204. package/models/operations/runagent.js +1 -1
  205. package/models/operations/streamrunagent.js +1 -1
  206. package/models/operations/updatedatapoint.js +4 -4
  207. package/models/operations/updatedataset.js +1 -1
  208. package/models/operations/updatedatasource.js +1 -1
  209. package/models/operations/updateeval.js +16 -16
  210. package/models/operations/updatetool.js +7 -7
  211. package/package.json +5 -5
  212. package/sdk/budgets.d.ts +62 -0
  213. package/sdk/budgets.d.ts.map +1 -0
  214. package/sdk/budgets.js +92 -0
  215. package/sdk/budgets.js.map +1 -0
  216. package/sdk/feedback.d.ts +1 -1
  217. package/sdk/feedback.js +1 -1
  218. package/sdk/sdk.d.ts +3 -0
  219. package/sdk/sdk.d.ts.map +1 -1
  220. package/sdk/sdk.js +4 -0
  221. package/sdk/sdk.js.map +1 -1
  222. package/src/funcs/budgetsCheck.ts +162 -0
  223. package/src/funcs/budgetsCreate.ts +162 -0
  224. package/src/funcs/budgetsDelete.ts +168 -0
  225. package/src/funcs/budgetsGet.ts +168 -0
  226. package/src/funcs/budgetsGetConsumption.ts +169 -0
  227. package/src/funcs/budgetsList.ts +175 -0
  228. package/src/funcs/budgetsResetConsumption.ts +174 -0
  229. package/src/funcs/budgetsUpdate.ts +171 -0
  230. package/src/lib/config.ts +3 -3
  231. package/src/lib/event-streams.ts +31 -13
  232. package/src/models/components/apikeybudgetscope.ts +66 -0
  233. package/src/models/components/budget.ts +102 -0
  234. package/src/models/components/budgetlimits.ts +76 -0
  235. package/src/models/components/budgetmatch.ts +56 -0
  236. package/src/models/components/budgetperiod.ts +23 -0
  237. package/src/models/components/budgetrejection.ts +48 -0
  238. package/src/models/components/budgetscope.ts +150 -0
  239. package/src/models/components/budgetscopekind.ts +22 -0
  240. package/src/models/components/checkbudgetsrequest.ts +111 -0
  241. package/src/models/components/checkbudgetsresponse.ts +62 -0
  242. package/src/models/components/createbudgetrequest.ts +109 -0
  243. package/src/models/components/createbudgetresponse.ts +35 -0
  244. package/src/models/components/deletebudgetresponse.ts +27 -0
  245. package/src/models/components/dimensioninfo.ts +43 -0
  246. package/src/models/components/getbudgetconsumptionresponse.ts +67 -0
  247. package/src/models/components/getbudgetresponse.ts +35 -0
  248. package/src/models/components/identity.ts +9 -9
  249. package/src/models/components/identitybudgetscope.ts +66 -0
  250. package/src/models/components/index.ts +27 -0
  251. package/src/models/components/listbudgetsresponse.ts +53 -0
  252. package/src/models/components/modelbudgetscope.ts +67 -0
  253. package/src/models/components/projectbudgetscope.ts +63 -0
  254. package/src/models/components/providerbudgetscope.ts +57 -0
  255. package/src/models/components/ratelimit.ts +62 -0
  256. package/src/models/components/reasoningpart.ts +1 -1
  257. package/src/models/components/resetbudgetconsumptionrequest.ts +27 -0
  258. package/src/models/components/resetbudgetconsumptionresponse.ts +38 -0
  259. package/src/models/components/updatebudgetrequest.ts +94 -0
  260. package/src/models/components/updatebudgetresponse.ts +35 -0
  261. package/src/models/components/workspacebudgetscope.ts +46 -0
  262. package/src/models/operations/budgetdelete.ts +39 -0
  263. package/src/models/operations/budgetget.ts +39 -0
  264. package/src/models/operations/budgetgetconsumption.ts +41 -0
  265. package/src/models/operations/budgetlist.ts +102 -0
  266. package/src/models/operations/budgetresetconsumption.ts +48 -0
  267. package/src/models/operations/budgetupdate.ts +44 -0
  268. package/src/models/operations/createdataset.ts +1 -1
  269. package/src/models/operations/createdatasetitem.ts +4 -4
  270. package/src/models/operations/createdatasource.ts +1 -1
  271. package/src/models/operations/createeval.ts +16 -16
  272. package/src/models/operations/createtool.ts +6 -6
  273. package/src/models/operations/getalltools.ts +6 -6
  274. package/src/models/operations/getevals.ts +16 -16
  275. package/src/models/operations/getv2humanevalsets.ts +2 -2
  276. package/src/models/operations/getv2humanevalsetsid.ts +2 -2
  277. package/src/models/operations/index.ts +6 -0
  278. package/src/models/operations/listdatasetdatapoints.ts +4 -4
  279. package/src/models/operations/listdatasets.ts +1 -1
  280. package/src/models/operations/listdatasources.ts +1 -1
  281. package/src/models/operations/patchv2humanevalsetsid.ts +2 -2
  282. package/src/models/operations/postv2feedbackevaluation.ts +3 -3
  283. package/src/models/operations/postv2humanevalsets.ts +2 -2
  284. package/src/models/operations/retrievedatapoint.ts +4 -4
  285. package/src/models/operations/retrievedataset.ts +1 -1
  286. package/src/models/operations/retrievedatasource.ts +1 -1
  287. package/src/models/operations/retrievetool.ts +6 -6
  288. package/src/models/operations/runagent.ts +1 -1
  289. package/src/models/operations/streamrunagent.ts +1 -1
  290. package/src/models/operations/updatedatapoint.ts +4 -4
  291. package/src/models/operations/updatedataset.ts +1 -1
  292. package/src/models/operations/updatedatasource.ts +1 -1
  293. package/src/models/operations/updateeval.ts +16 -16
  294. package/src/models/operations/updatetool.ts +7 -7
  295. package/src/sdk/budgets.ts +154 -0
  296. package/src/sdk/feedback.ts +1 -1
  297. package/src/sdk/sdk.ts +6 -0
@@ -0,0 +1,150 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
10
+ import {
11
+ ApiKeyBudgetScope,
12
+ ApiKeyBudgetScope$inboundSchema,
13
+ ApiKeyBudgetScope$Outbound,
14
+ ApiKeyBudgetScope$outboundSchema,
15
+ } from "./apikeybudgetscope.js";
16
+ import {
17
+ IdentityBudgetScope,
18
+ IdentityBudgetScope$inboundSchema,
19
+ IdentityBudgetScope$Outbound,
20
+ IdentityBudgetScope$outboundSchema,
21
+ } from "./identitybudgetscope.js";
22
+ import {
23
+ ModelBudgetScope,
24
+ ModelBudgetScope$inboundSchema,
25
+ ModelBudgetScope$Outbound,
26
+ ModelBudgetScope$outboundSchema,
27
+ } from "./modelbudgetscope.js";
28
+ import {
29
+ ProjectBudgetScope,
30
+ ProjectBudgetScope$inboundSchema,
31
+ ProjectBudgetScope$Outbound,
32
+ ProjectBudgetScope$outboundSchema,
33
+ } from "./projectbudgetscope.js";
34
+ import {
35
+ ProviderBudgetScope,
36
+ ProviderBudgetScope$inboundSchema,
37
+ ProviderBudgetScope$Outbound,
38
+ ProviderBudgetScope$outboundSchema,
39
+ } from "./providerbudgetscope.js";
40
+ import {
41
+ WorkspaceBudgetScope,
42
+ WorkspaceBudgetScope$inboundSchema,
43
+ WorkspaceBudgetScope$Outbound,
44
+ WorkspaceBudgetScope$outboundSchema,
45
+ } from "./workspacebudgetscope.js";
46
+
47
+ /**
48
+ * BudgetScope is a closed oneof. Exactly one variant must be set. The
49
+ *
50
+ * @remarks
51
+ * six variants are ordered by enforcement precedence (most specific to
52
+ * most general) and mirror the BudgetScopeKind filter enum.
53
+ */
54
+ export type BudgetScope = {
55
+ /**
56
+ * Workspace-wide ceiling. The implicit target is the caller's workspace.
57
+ */
58
+ workspace?: WorkspaceBudgetScope | undefined;
59
+ /**
60
+ * Per-project cap.
61
+ */
62
+ project?: ProjectBudgetScope | undefined;
63
+ /**
64
+ * Per-identity cap. Keyed by the contact's external_id (not the
65
+ *
66
+ * @remarks
67
+ * internal Mongo `_id`) so the scope is stable across imports.
68
+ */
69
+ identity?: IdentityBudgetScope | undefined;
70
+ /**
71
+ * Per-api-key cap. Replaces the legacy embedded `constraints.budget`
72
+ *
73
+ * @remarks
74
+ * on auth.apiKeys.
75
+ */
76
+ apiKey?: ApiKeyBudgetScope | undefined;
77
+ /**
78
+ * Per-provider cap. The value is the provider enum string (e.g.
79
+ *
80
+ * @remarks
81
+ * "openai", "anthropic") drawn from ModelIntegrationIdentifier.
82
+ */
83
+ provider?: ProviderBudgetScope | undefined;
84
+ /**
85
+ * Per-model cap. The value is the FULL model reference as callers send
86
+ *
87
+ * @remarks
88
+ * it ("openai/gpt-4o", or "workspaceKey@openai/gpt-4o" for private
89
+ * models) — NOT the Mongo `_id` of the model master-data document.
90
+ */
91
+ model?: ModelBudgetScope | undefined;
92
+ };
93
+
94
+ /** @internal */
95
+ export const BudgetScope$inboundSchema: z.ZodType<
96
+ BudgetScope,
97
+ z.ZodTypeDef,
98
+ unknown
99
+ > = z.object({
100
+ workspace: WorkspaceBudgetScope$inboundSchema.optional(),
101
+ project: ProjectBudgetScope$inboundSchema.optional(),
102
+ identity: IdentityBudgetScope$inboundSchema.optional(),
103
+ api_key: ApiKeyBudgetScope$inboundSchema.optional(),
104
+ provider: ProviderBudgetScope$inboundSchema.optional(),
105
+ model: ModelBudgetScope$inboundSchema.optional(),
106
+ }).transform((v) => {
107
+ return remap$(v, {
108
+ "api_key": "apiKey",
109
+ });
110
+ });
111
+ /** @internal */
112
+ export type BudgetScope$Outbound = {
113
+ workspace?: WorkspaceBudgetScope$Outbound | undefined;
114
+ project?: ProjectBudgetScope$Outbound | undefined;
115
+ identity?: IdentityBudgetScope$Outbound | undefined;
116
+ api_key?: ApiKeyBudgetScope$Outbound | undefined;
117
+ provider?: ProviderBudgetScope$Outbound | undefined;
118
+ model?: ModelBudgetScope$Outbound | undefined;
119
+ };
120
+
121
+ /** @internal */
122
+ export const BudgetScope$outboundSchema: z.ZodType<
123
+ BudgetScope$Outbound,
124
+ z.ZodTypeDef,
125
+ BudgetScope
126
+ > = z.object({
127
+ workspace: WorkspaceBudgetScope$outboundSchema.optional(),
128
+ project: ProjectBudgetScope$outboundSchema.optional(),
129
+ identity: IdentityBudgetScope$outboundSchema.optional(),
130
+ apiKey: ApiKeyBudgetScope$outboundSchema.optional(),
131
+ provider: ProviderBudgetScope$outboundSchema.optional(),
132
+ model: ModelBudgetScope$outboundSchema.optional(),
133
+ }).transform((v) => {
134
+ return remap$(v, {
135
+ apiKey: "api_key",
136
+ });
137
+ });
138
+
139
+ export function budgetScopeToJSON(budgetScope: BudgetScope): string {
140
+ return JSON.stringify(BudgetScope$outboundSchema.parse(budgetScope));
141
+ }
142
+ export function budgetScopeFromJSON(
143
+ jsonString: string,
144
+ ): SafeParseResult<BudgetScope, SDKValidationError> {
145
+ return safeParse(
146
+ jsonString,
147
+ (x) => BudgetScope$inboundSchema.parse(JSON.parse(x)),
148
+ `Failed to parse 'BudgetScope' from JSON`,
149
+ );
150
+ }
@@ -0,0 +1,22 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { ClosedEnum } from "../../types/enums.js";
7
+
8
+ export const BudgetScopeKind = {
9
+ BudgetScopeKindUnspecified: "BUDGET_SCOPE_KIND_UNSPECIFIED",
10
+ BudgetScopeKindWorkspace: "BUDGET_SCOPE_KIND_WORKSPACE",
11
+ BudgetScopeKindProject: "BUDGET_SCOPE_KIND_PROJECT",
12
+ BudgetScopeKindIdentity: "BUDGET_SCOPE_KIND_IDENTITY",
13
+ BudgetScopeKindApiKey: "BUDGET_SCOPE_KIND_API_KEY",
14
+ BudgetScopeKindProvider: "BUDGET_SCOPE_KIND_PROVIDER",
15
+ BudgetScopeKindModel: "BUDGET_SCOPE_KIND_MODEL",
16
+ } as const;
17
+ export type BudgetScopeKind = ClosedEnum<typeof BudgetScopeKind>;
18
+
19
+ /** @internal */
20
+ export const BudgetScopeKind$outboundSchema: z.ZodNativeEnum<
21
+ typeof BudgetScopeKind
22
+ > = z.nativeEnum(BudgetScopeKind);
@@ -0,0 +1,111 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+
8
+ /**
9
+ * Request metadata forwarded for dynamic-budget matching
10
+ *
11
+ * @remarks
12
+ * (`metadata.team == "ml"`). Free-form JSON object from the request
13
+ * body's `metadata` field.
14
+ */
15
+ export type Metadata = {};
16
+
17
+ export type CheckBudgetsRequest = {
18
+ /**
19
+ * API key that issued the request (if any).
20
+ */
21
+ apiKeyId?: string | undefined;
22
+ /**
23
+ * Project the request targets (if any).
24
+ */
25
+ projectId?: string | undefined;
26
+ /**
27
+ * Identity external id for contact-scoped budgets (if any).
28
+ */
29
+ identityExternalId?: string | undefined;
30
+ /**
31
+ * Provider enum value for provider-scoped budgets (if any).
32
+ */
33
+ provider?: string | undefined;
34
+ /**
35
+ * Full model reference for model-scoped budgets (if any), exactly as
36
+ *
37
+ * @remarks
38
+ * the caller sent it: "provider/model" or "workspaceKey@provider/model".
39
+ */
40
+ modelId?: string | undefined;
41
+ /**
42
+ * Request metadata forwarded for dynamic-budget matching
43
+ *
44
+ * @remarks
45
+ * (`metadata.team == "ml"`). Free-form JSON object from the request
46
+ * body's `metadata` field.
47
+ */
48
+ metadata?: Metadata | undefined;
49
+ /**
50
+ * Request headers (lowercase keys) forwarded for dynamic-budget
51
+ *
52
+ * @remarks
53
+ * matching (`headers["x-env"] == "prod"`).
54
+ */
55
+ headers?: { [k: string]: string } | undefined;
56
+ };
57
+
58
+ /** @internal */
59
+ export type Metadata$Outbound = {};
60
+
61
+ /** @internal */
62
+ export const Metadata$outboundSchema: z.ZodType<
63
+ Metadata$Outbound,
64
+ z.ZodTypeDef,
65
+ Metadata
66
+ > = z.object({});
67
+
68
+ export function metadataToJSON(metadata: Metadata): string {
69
+ return JSON.stringify(Metadata$outboundSchema.parse(metadata));
70
+ }
71
+
72
+ /** @internal */
73
+ export type CheckBudgetsRequest$Outbound = {
74
+ api_key_id?: string | undefined;
75
+ project_id?: string | undefined;
76
+ identity_external_id?: string | undefined;
77
+ provider?: string | undefined;
78
+ model_id?: string | undefined;
79
+ metadata?: Metadata$Outbound | undefined;
80
+ headers?: { [k: string]: string } | undefined;
81
+ };
82
+
83
+ /** @internal */
84
+ export const CheckBudgetsRequest$outboundSchema: z.ZodType<
85
+ CheckBudgetsRequest$Outbound,
86
+ z.ZodTypeDef,
87
+ CheckBudgetsRequest
88
+ > = z.object({
89
+ apiKeyId: z.string().optional(),
90
+ projectId: z.string().optional(),
91
+ identityExternalId: z.string().optional(),
92
+ provider: z.string().optional(),
93
+ modelId: z.string().optional(),
94
+ metadata: z.lazy(() => Metadata$outboundSchema).optional(),
95
+ headers: z.record(z.string()).optional(),
96
+ }).transform((v) => {
97
+ return remap$(v, {
98
+ apiKeyId: "api_key_id",
99
+ projectId: "project_id",
100
+ identityExternalId: "identity_external_id",
101
+ modelId: "model_id",
102
+ });
103
+ });
104
+
105
+ export function checkBudgetsRequestToJSON(
106
+ checkBudgetsRequest: CheckBudgetsRequest,
107
+ ): string {
108
+ return JSON.stringify(
109
+ CheckBudgetsRequest$outboundSchema.parse(checkBudgetsRequest),
110
+ );
111
+ }
@@ -0,0 +1,62 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+ import {
10
+ BudgetRejection,
11
+ BudgetRejection$inboundSchema,
12
+ } from "./budgetrejection.js";
13
+ import { DimensionInfo, DimensionInfo$inboundSchema } from "./dimensioninfo.js";
14
+
15
+ export type CheckBudgetsResponse = {
16
+ /**
17
+ * True when no applicable budget exceeds its limit.
18
+ */
19
+ allowed?: boolean | undefined;
20
+ /**
21
+ * Populated when allowed is false; identifies which budget and
22
+ *
23
+ * @remarks
24
+ * dimension triggered the rejection.
25
+ */
26
+ rejection?: BudgetRejection | undefined;
27
+ /**
28
+ * Cost dimension info for rate-limit headers (nil when no cost budget applies).
29
+ */
30
+ cost?: DimensionInfo | undefined;
31
+ /**
32
+ * Token dimension info for rate-limit headers (nil when no token budget applies).
33
+ */
34
+ tokens?: DimensionInfo | undefined;
35
+ /**
36
+ * Requests dimension info for rate-limit headers (nil when no RPM budget applies).
37
+ */
38
+ requests?: DimensionInfo | undefined;
39
+ };
40
+
41
+ /** @internal */
42
+ export const CheckBudgetsResponse$inboundSchema: z.ZodType<
43
+ CheckBudgetsResponse,
44
+ z.ZodTypeDef,
45
+ unknown
46
+ > = z.object({
47
+ allowed: z.boolean().optional(),
48
+ rejection: BudgetRejection$inboundSchema.optional(),
49
+ cost: DimensionInfo$inboundSchema.optional(),
50
+ tokens: DimensionInfo$inboundSchema.optional(),
51
+ requests: DimensionInfo$inboundSchema.optional(),
52
+ });
53
+
54
+ export function checkBudgetsResponseFromJSON(
55
+ jsonString: string,
56
+ ): SafeParseResult<CheckBudgetsResponse, SDKValidationError> {
57
+ return safeParse(
58
+ jsonString,
59
+ (x) => CheckBudgetsResponse$inboundSchema.parse(JSON.parse(x)),
60
+ `Failed to parse 'CheckBudgetsResponse' from JSON`,
61
+ );
62
+ }
@@ -0,0 +1,109 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import {
8
+ BudgetLimits,
9
+ BudgetLimits$Outbound,
10
+ BudgetLimits$outboundSchema,
11
+ } from "./budgetlimits.js";
12
+ import {
13
+ BudgetMatch,
14
+ BudgetMatch$Outbound,
15
+ BudgetMatch$outboundSchema,
16
+ } from "./budgetmatch.js";
17
+ import {
18
+ BudgetScope,
19
+ BudgetScope$Outbound,
20
+ BudgetScope$outboundSchema,
21
+ } from "./budgetscope.js";
22
+ import {
23
+ RateLimit,
24
+ RateLimit$Outbound,
25
+ RateLimit$outboundSchema,
26
+ } from "./ratelimit.js";
27
+
28
+ export type CreateBudgetRequest = {
29
+ /**
30
+ * Structured scope. Mutually exclusive with `match`: provide a scope
31
+ *
32
+ * @remarks
33
+ * for the six canonical kinds (the server derives the matching CEL),
34
+ * or provide `match` for a dynamic budget. Exactly one of the two
35
+ * must be set; the handler enforces that invariant.
36
+ */
37
+ scope?: BudgetScope | undefined;
38
+ /**
39
+ * Raw CEL matching expression for dynamic budgets (e.g.
40
+ *
41
+ * @remarks
42
+ * `metadata.team == "ml" && provider == "openai"`). Validated via
43
+ * CEL parse at write time. Mutually exclusive with `scope`.
44
+ */
45
+ match?: BudgetMatch | undefined;
46
+ /**
47
+ * At least one of amount / token_limit / rate_limit.requests_per_minute
48
+ *
49
+ * @remarks
50
+ * must be provided on the budget; the handler enforces that invariant.
51
+ */
52
+ limits?: BudgetLimits | undefined;
53
+ /**
54
+ * Optional rate limit.
55
+ */
56
+ rateLimit?: RateLimit | undefined;
57
+ /**
58
+ * Whether the budget should be active immediately. Defaults to true
59
+ *
60
+ * @remarks
61
+ * when omitted (handler enforces).
62
+ */
63
+ isActive?: boolean | undefined;
64
+ /**
65
+ * Optional expiration. When set in combination with is_active=true,
66
+ *
67
+ * @remarks
68
+ * the value MUST be in the future; the handler rejects past values.
69
+ */
70
+ expiresAt?: Date | undefined;
71
+ };
72
+
73
+ /** @internal */
74
+ export type CreateBudgetRequest$Outbound = {
75
+ scope?: BudgetScope$Outbound | undefined;
76
+ match?: BudgetMatch$Outbound | undefined;
77
+ limits?: BudgetLimits$Outbound | undefined;
78
+ rate_limit?: RateLimit$Outbound | undefined;
79
+ is_active?: boolean | undefined;
80
+ expires_at?: string | undefined;
81
+ };
82
+
83
+ /** @internal */
84
+ export const CreateBudgetRequest$outboundSchema: z.ZodType<
85
+ CreateBudgetRequest$Outbound,
86
+ z.ZodTypeDef,
87
+ CreateBudgetRequest
88
+ > = z.object({
89
+ scope: BudgetScope$outboundSchema.optional(),
90
+ match: BudgetMatch$outboundSchema.optional(),
91
+ limits: BudgetLimits$outboundSchema.optional(),
92
+ rateLimit: RateLimit$outboundSchema.optional(),
93
+ isActive: z.boolean().optional(),
94
+ expiresAt: z.date().transform(v => v.toISOString()).optional(),
95
+ }).transform((v) => {
96
+ return remap$(v, {
97
+ rateLimit: "rate_limit",
98
+ isActive: "is_active",
99
+ expiresAt: "expires_at",
100
+ });
101
+ });
102
+
103
+ export function createBudgetRequestToJSON(
104
+ createBudgetRequest: CreateBudgetRequest,
105
+ ): string {
106
+ return JSON.stringify(
107
+ CreateBudgetRequest$outboundSchema.parse(createBudgetRequest),
108
+ );
109
+ }
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+ import { Budget, Budget$inboundSchema } from "./budget.js";
10
+
11
+ export type CreateBudgetResponse = {
12
+ /**
13
+ * Newly created budget.
14
+ */
15
+ budget?: Budget | undefined;
16
+ };
17
+
18
+ /** @internal */
19
+ export const CreateBudgetResponse$inboundSchema: z.ZodType<
20
+ CreateBudgetResponse,
21
+ z.ZodTypeDef,
22
+ unknown
23
+ > = z.object({
24
+ budget: Budget$inboundSchema.optional(),
25
+ });
26
+
27
+ export function createBudgetResponseFromJSON(
28
+ jsonString: string,
29
+ ): SafeParseResult<CreateBudgetResponse, SDKValidationError> {
30
+ return safeParse(
31
+ jsonString,
32
+ (x) => CreateBudgetResponse$inboundSchema.parse(JSON.parse(x)),
33
+ `Failed to parse 'CreateBudgetResponse' from JSON`,
34
+ );
35
+ }
@@ -0,0 +1,27 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+
10
+ export type DeleteBudgetResponse = {};
11
+
12
+ /** @internal */
13
+ export const DeleteBudgetResponse$inboundSchema: z.ZodType<
14
+ DeleteBudgetResponse,
15
+ z.ZodTypeDef,
16
+ unknown
17
+ > = z.object({});
18
+
19
+ export function deleteBudgetResponseFromJSON(
20
+ jsonString: string,
21
+ ): SafeParseResult<DeleteBudgetResponse, SDKValidationError> {
22
+ return safeParse(
23
+ jsonString,
24
+ (x) => DeleteBudgetResponse$inboundSchema.parse(JSON.parse(x)),
25
+ `Failed to parse 'DeleteBudgetResponse' from JSON`,
26
+ );
27
+ }
@@ -0,0 +1,43 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
10
+
11
+ /**
12
+ * DimensionInfo carries limit/remaining/reset for a single dimension.
13
+ */
14
+ export type DimensionInfo = {
15
+ limit?: number | undefined;
16
+ remaining?: number | undefined;
17
+ resetSeconds?: number | undefined;
18
+ };
19
+
20
+ /** @internal */
21
+ export const DimensionInfo$inboundSchema: z.ZodType<
22
+ DimensionInfo,
23
+ z.ZodTypeDef,
24
+ unknown
25
+ > = z.object({
26
+ limit: z.number().optional(),
27
+ remaining: z.number().optional(),
28
+ reset_seconds: z.number().int().optional(),
29
+ }).transform((v) => {
30
+ return remap$(v, {
31
+ "reset_seconds": "resetSeconds",
32
+ });
33
+ });
34
+
35
+ export function dimensionInfoFromJSON(
36
+ jsonString: string,
37
+ ): SafeParseResult<DimensionInfo, SDKValidationError> {
38
+ return safeParse(
39
+ jsonString,
40
+ (x) => DimensionInfo$inboundSchema.parse(JSON.parse(x)),
41
+ `Failed to parse 'DimensionInfo' from JSON`,
42
+ );
43
+ }
@@ -0,0 +1,67 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { remap as remap$ } from "../../lib/primitives.js";
7
+ import { safeParse } from "../../lib/schemas.js";
8
+ import { Result as SafeParseResult } from "../../types/fp.js";
9
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
10
+ import { BudgetPeriod, BudgetPeriod$inboundSchema } from "./budgetperiod.js";
11
+
12
+ export type GetBudgetConsumptionResponse = {
13
+ /**
14
+ * Budget id whose counters are reported.
15
+ */
16
+ budgetId?: string | undefined;
17
+ period?: BudgetPeriod | undefined;
18
+ /**
19
+ * Period bucket label (e.g. "2025-05-27" for DAILY, "2025-05" for
20
+ *
21
+ * @remarks
22
+ * MONTHLY). Empty when no counters exist for the current period.
23
+ */
24
+ periodDate?: string | undefined;
25
+ /**
26
+ * Cost accumulated in the current period, in USD.
27
+ */
28
+ cost?: number | undefined;
29
+ /**
30
+ * Tokens accumulated in the current period.
31
+ */
32
+ tokens?: string | undefined;
33
+ /**
34
+ * Requests counted in the current 60-second rolling window.
35
+ */
36
+ requestsInWindow?: number | undefined;
37
+ };
38
+
39
+ /** @internal */
40
+ export const GetBudgetConsumptionResponse$inboundSchema: z.ZodType<
41
+ GetBudgetConsumptionResponse,
42
+ z.ZodTypeDef,
43
+ unknown
44
+ > = z.object({
45
+ budget_id: z.string().optional(),
46
+ period: BudgetPeriod$inboundSchema.optional(),
47
+ period_date: z.string().optional(),
48
+ cost: z.number().optional(),
49
+ tokens: z.string().optional(),
50
+ requests_in_window: z.number().int().optional(),
51
+ }).transform((v) => {
52
+ return remap$(v, {
53
+ "budget_id": "budgetId",
54
+ "period_date": "periodDate",
55
+ "requests_in_window": "requestsInWindow",
56
+ });
57
+ });
58
+
59
+ export function getBudgetConsumptionResponseFromJSON(
60
+ jsonString: string,
61
+ ): SafeParseResult<GetBudgetConsumptionResponse, SDKValidationError> {
62
+ return safeParse(
63
+ jsonString,
64
+ (x) => GetBudgetConsumptionResponse$inboundSchema.parse(JSON.parse(x)),
65
+ `Failed to parse 'GetBudgetConsumptionResponse' from JSON`,
66
+ );
67
+ }
@@ -0,0 +1,35 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+ import { Budget, Budget$inboundSchema } from "./budget.js";
10
+
11
+ export type GetBudgetResponse = {
12
+ /**
13
+ * Requested budget.
14
+ */
15
+ budget?: Budget | undefined;
16
+ };
17
+
18
+ /** @internal */
19
+ export const GetBudgetResponse$inboundSchema: z.ZodType<
20
+ GetBudgetResponse,
21
+ z.ZodTypeDef,
22
+ unknown
23
+ > = z.object({
24
+ budget: Budget$inboundSchema.optional(),
25
+ });
26
+
27
+ export function getBudgetResponseFromJSON(
28
+ jsonString: string,
29
+ ): SafeParseResult<GetBudgetResponse, SDKValidationError> {
30
+ return safeParse(
31
+ jsonString,
32
+ (x) => GetBudgetResponse$inboundSchema.parse(JSON.parse(x)),
33
+ `Failed to parse 'GetBudgetResponse' from JSON`,
34
+ );
35
+ }