@orq-ai/node 4.10.17 → 4.10.20
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.
- package/funcs/datasetsList.js +0 -2
- package/funcs/datasetsList.js.map +1 -1
- package/jsr.json +1 -1
- package/lib/config.d.ts +3 -3
- package/lib/config.js +3 -3
- package/lib/encodings.js +12 -12
- package/lib/encodings.js.map +1 -1
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +3 -3
- package/lib/env.js.map +1 -1
- package/lib/event-streams.d.ts.map +1 -1
- package/lib/event-streams.js +28 -13
- package/lib/event-streams.js.map +1 -1
- package/lib/matchers.js +3 -3
- package/lib/matchers.js.map +1 -1
- package/lib/primitives.d.ts +1 -0
- package/lib/primitives.d.ts.map +1 -1
- package/lib/primitives.js +18 -0
- package/lib/primitives.js.map +1 -1
- package/models/components/modelmetadata.d.ts +0 -2
- package/models/components/modelmetadata.d.ts.map +1 -1
- package/models/components/modelmetadata.js +0 -4
- package/models/components/modelmetadata.js.map +1 -1
- package/models/components/reasoning.d.ts +2 -40
- package/models/components/reasoning.d.ts.map +1 -1
- package/models/components/reasoning.js +3 -26
- package/models/components/reasoning.js.map +1 -1
- package/models/components/reasoningparam.d.ts +2 -40
- package/models/components/reasoningparam.d.ts.map +1 -1
- package/models/components/reasoningparam.js +3 -28
- package/models/components/reasoningparam.js.map +1 -1
- package/models/components/reasoningpart.js +1 -1
- package/models/operations/createagentrequest.d.ts +4 -298
- package/models/operations/createagentrequest.d.ts.map +1 -1
- package/models/operations/createagentrequest.js +9 -163
- package/models/operations/createagentrequest.js.map +1 -1
- package/models/operations/createchatcompletion.d.ts +4 -81
- package/models/operations/createchatcompletion.d.ts.map +1 -1
- package/models/operations/createchatcompletion.js +7 -45
- package/models/operations/createchatcompletion.js.map +1 -1
- package/models/operations/createdataset.js +1 -1
- package/models/operations/createdatasetitem.js +4 -4
- package/models/operations/createdatasource.js +1 -1
- package/models/operations/createeval.js +16 -16
- package/models/operations/creatememorystore.d.ts +3 -3
- package/models/operations/creatememorystore.d.ts.map +1 -1
- package/models/operations/creatememorystore.js +2 -2
- package/models/operations/creatememorystore.js.map +1 -1
- package/models/operations/createprompt.d.ts +12 -225
- package/models/operations/createprompt.d.ts.map +1 -1
- package/models/operations/createprompt.js +13 -124
- package/models/operations/createprompt.js.map +1 -1
- package/models/operations/createrouterresponse.d.ts +4 -349
- package/models/operations/createrouterresponse.d.ts.map +1 -1
- package/models/operations/createrouterresponse.js +4 -195
- package/models/operations/createrouterresponse.js.map +1 -1
- package/models/operations/createtool.js +6 -6
- package/models/operations/deploymentgetconfig.d.ts +4 -70
- package/models/operations/deploymentgetconfig.d.ts.map +1 -1
- package/models/operations/deploymentgetconfig.js +8 -43
- package/models/operations/deploymentgetconfig.js.map +1 -1
- package/models/operations/deployments.d.ts +8 -74
- package/models/operations/deployments.d.ts.map +1 -1
- package/models/operations/deployments.js +8 -43
- package/models/operations/deployments.js.map +1 -1
- package/models/operations/getallmemorystores.d.ts +1 -1
- package/models/operations/getallmemorystores.d.ts.map +1 -1
- package/models/operations/getallmemorystores.js +1 -1
- package/models/operations/getallmemorystores.js.map +1 -1
- package/models/operations/getallprompts.d.ts +4 -140
- package/models/operations/getallprompts.d.ts.map +1 -1
- package/models/operations/getallprompts.js +6 -79
- package/models/operations/getallprompts.js.map +1 -1
- package/models/operations/getalltools.js +6 -6
- package/models/operations/getevals.js +16 -16
- package/models/operations/getoneprompt.d.ts +4 -140
- package/models/operations/getoneprompt.d.ts.map +1 -1
- package/models/operations/getoneprompt.js +6 -79
- package/models/operations/getoneprompt.js.map +1 -1
- package/models/operations/getpromptversion.d.ts +4 -140
- package/models/operations/getpromptversion.d.ts.map +1 -1
- package/models/operations/getpromptversion.js +6 -78
- package/models/operations/getpromptversion.js.map +1 -1
- package/models/operations/getv2humanevalsets.js +2 -2
- package/models/operations/getv2humanevalsetsid.js +2 -2
- package/models/operations/listagents.d.ts +0 -140
- package/models/operations/listagents.d.ts.map +1 -1
- package/models/operations/listagents.js +3 -79
- package/models/operations/listagents.js.map +1 -1
- package/models/operations/listdatasetdatapoints.js +4 -4
- package/models/operations/listdatasets.d.ts +0 -10
- package/models/operations/listdatasets.d.ts.map +1 -1
- package/models/operations/listdatasets.js +1 -4
- package/models/operations/listdatasets.js.map +1 -1
- package/models/operations/listdatasources.js +1 -1
- package/models/operations/listknowledgebases.d.ts +1 -1
- package/models/operations/listpromptversions.d.ts +4 -140
- package/models/operations/listpromptversions.d.ts.map +1 -1
- package/models/operations/listpromptversions.js +6 -79
- package/models/operations/listpromptversions.js.map +1 -1
- package/models/operations/patchv2humanevalsetsid.js +2 -2
- package/models/operations/postv2feedbackevaluation.js +3 -3
- package/models/operations/postv2humanevalsets.js +2 -2
- package/models/operations/retrieveagentrequest.d.ts +0 -140
- package/models/operations/retrieveagentrequest.d.ts.map +1 -1
- package/models/operations/retrieveagentrequest.js +2 -81
- package/models/operations/retrieveagentrequest.js.map +1 -1
- package/models/operations/retrievedatapoint.js +4 -4
- package/models/operations/retrievedataset.js +1 -1
- package/models/operations/retrievedatasource.js +1 -1
- package/models/operations/retrievememorystore.d.ts +1 -1
- package/models/operations/retrievememorystore.d.ts.map +1 -1
- package/models/operations/retrievememorystore.js +1 -1
- package/models/operations/retrievememorystore.js.map +1 -1
- package/models/operations/retrievetool.js +6 -6
- package/models/operations/runagent.d.ts +0 -154
- package/models/operations/runagent.d.ts.map +1 -1
- package/models/operations/runagent.js +5 -80
- package/models/operations/runagent.js.map +1 -1
- package/models/operations/streamrunagent.d.ts +0 -154
- package/models/operations/streamrunagent.d.ts.map +1 -1
- package/models/operations/streamrunagent.js +4 -82
- package/models/operations/streamrunagent.js.map +1 -1
- package/models/operations/updateagent.d.ts +4 -298
- package/models/operations/updateagent.d.ts.map +1 -1
- package/models/operations/updateagent.js +9 -162
- package/models/operations/updateagent.js.map +1 -1
- package/models/operations/updatedatapoint.js +4 -4
- package/models/operations/updatedataset.js +1 -1
- package/models/operations/updatedatasource.js +1 -1
- package/models/operations/updateeval.js +16 -16
- package/models/operations/updatememorystore.d.ts +3 -3
- package/models/operations/updatememorystore.d.ts.map +1 -1
- package/models/operations/updatememorystore.js +2 -2
- package/models/operations/updatememorystore.js.map +1 -1
- package/models/operations/updateprompt.d.ts +12 -225
- package/models/operations/updateprompt.d.ts.map +1 -1
- package/models/operations/updateprompt.js +14 -125
- package/models/operations/updateprompt.js.map +1 -1
- package/models/operations/updatetool.js +7 -7
- package/package.json +7 -7
- package/packages/orq-rc/src/funcs/budgetsCheck.ts +162 -0
- package/packages/orq-rc/src/funcs/budgetsCreate.ts +162 -0
- package/packages/orq-rc/src/funcs/budgetsDelete.ts +168 -0
- package/packages/orq-rc/src/funcs/budgetsGet.ts +168 -0
- package/packages/orq-rc/src/funcs/budgetsGetConsumption.ts +169 -0
- package/packages/orq-rc/src/funcs/budgetsList.ts +175 -0
- package/packages/orq-rc/src/funcs/budgetsResetConsumption.ts +174 -0
- package/packages/orq-rc/src/funcs/budgetsUpdate.ts +171 -0
- package/packages/orq-rc/src/lib/config.ts +3 -3
- package/packages/orq-rc/src/lib/encodings.ts +1 -1
- package/packages/orq-rc/src/lib/env.ts +7 -3
- package/packages/orq-rc/src/lib/event-streams.ts +31 -13
- package/packages/orq-rc/src/lib/matchers.ts +1 -1
- package/packages/orq-rc/src/lib/primitives.ts +16 -0
- package/packages/orq-rc/src/models/components/apikeybudgetscope.ts +66 -0
- package/packages/orq-rc/src/models/components/budget.ts +102 -0
- package/packages/orq-rc/src/models/components/budgetlimits.ts +76 -0
- package/packages/orq-rc/src/models/components/budgetmatch.ts +56 -0
- package/packages/orq-rc/src/models/components/budgetperiod.ts +23 -0
- package/packages/orq-rc/src/models/components/budgetrejection.ts +48 -0
- package/packages/orq-rc/src/models/components/budgetscope.ts +150 -0
- package/packages/orq-rc/src/models/components/budgetscopekind.ts +22 -0
- package/packages/orq-rc/src/models/components/checkbudgetsrequest.ts +111 -0
- package/packages/orq-rc/src/models/components/checkbudgetsresponse.ts +62 -0
- package/packages/orq-rc/src/models/components/createbudgetrequest.ts +109 -0
- package/packages/orq-rc/src/models/components/createbudgetresponse.ts +35 -0
- package/packages/orq-rc/src/models/components/deletebudgetresponse.ts +27 -0
- package/packages/orq-rc/src/models/components/dimensioninfo.ts +43 -0
- package/packages/orq-rc/src/models/components/getbudgetconsumptionresponse.ts +67 -0
- package/packages/orq-rc/src/models/components/getbudgetresponse.ts +35 -0
- package/packages/orq-rc/src/models/components/identity.ts +9 -9
- package/packages/orq-rc/src/models/components/identitybudgetscope.ts +66 -0
- package/packages/orq-rc/src/models/components/index.ts +27 -0
- package/packages/orq-rc/src/models/components/listbudgetsresponse.ts +53 -0
- package/packages/orq-rc/src/models/components/modelbudgetscope.ts +67 -0
- package/packages/orq-rc/src/models/components/projectbudgetscope.ts +63 -0
- package/packages/orq-rc/src/models/components/providerbudgetscope.ts +57 -0
- package/packages/orq-rc/src/models/components/ratelimit.ts +62 -0
- package/packages/orq-rc/src/models/components/reasoningpart.ts +1 -1
- package/packages/orq-rc/src/models/components/resetbudgetconsumptionrequest.ts +27 -0
- package/packages/orq-rc/src/models/components/resetbudgetconsumptionresponse.ts +38 -0
- package/packages/orq-rc/src/models/components/updatebudgetrequest.ts +94 -0
- package/packages/orq-rc/src/models/components/updatebudgetresponse.ts +35 -0
- package/packages/orq-rc/src/models/components/workspacebudgetscope.ts +46 -0
- package/packages/orq-rc/src/models/operations/budgetdelete.ts +39 -0
- package/packages/orq-rc/src/models/operations/budgetget.ts +39 -0
- package/packages/orq-rc/src/models/operations/budgetgetconsumption.ts +41 -0
- package/packages/orq-rc/src/models/operations/budgetlist.ts +102 -0
- package/packages/orq-rc/src/models/operations/budgetresetconsumption.ts +48 -0
- package/packages/orq-rc/src/models/operations/budgetupdate.ts +44 -0
- package/packages/orq-rc/src/models/operations/createdataset.ts +1 -1
- package/packages/orq-rc/src/models/operations/createdatasetitem.ts +4 -4
- package/packages/orq-rc/src/models/operations/createdatasource.ts +1 -1
- package/packages/orq-rc/src/models/operations/createeval.ts +16 -16
- package/packages/orq-rc/src/models/operations/createtool.ts +6 -6
- package/packages/orq-rc/src/models/operations/getalltools.ts +6 -6
- package/packages/orq-rc/src/models/operations/getevals.ts +16 -16
- package/packages/orq-rc/src/models/operations/getv2humanevalsets.ts +2 -2
- package/packages/orq-rc/src/models/operations/getv2humanevalsetsid.ts +2 -2
- package/packages/orq-rc/src/models/operations/index.ts +6 -0
- package/packages/orq-rc/src/models/operations/listdatasetdatapoints.ts +4 -4
- package/packages/orq-rc/src/models/operations/listdatasets.ts +1 -1
- package/packages/orq-rc/src/models/operations/listdatasources.ts +1 -1
- package/packages/orq-rc/src/models/operations/patchv2humanevalsetsid.ts +2 -2
- package/packages/orq-rc/src/models/operations/postv2feedbackevaluation.ts +3 -3
- package/packages/orq-rc/src/models/operations/postv2humanevalsets.ts +2 -2
- package/packages/orq-rc/src/models/operations/retrievedatapoint.ts +4 -4
- package/packages/orq-rc/src/models/operations/retrievedataset.ts +1 -1
- package/packages/orq-rc/src/models/operations/retrievedatasource.ts +1 -1
- package/packages/orq-rc/src/models/operations/retrievetool.ts +6 -6
- package/packages/orq-rc/src/models/operations/runagent.ts +1 -1
- package/packages/orq-rc/src/models/operations/streamrunagent.ts +1 -1
- package/packages/orq-rc/src/models/operations/updatedatapoint.ts +4 -4
- package/packages/orq-rc/src/models/operations/updatedataset.ts +1 -1
- package/packages/orq-rc/src/models/operations/updatedatasource.ts +1 -1
- package/packages/orq-rc/src/models/operations/updateeval.ts +16 -16
- package/packages/orq-rc/src/models/operations/updatetool.ts +7 -7
- package/packages/orq-rc/src/sdk/budgets.ts +154 -0
- package/packages/orq-rc/src/sdk/feedback.ts +1 -4
- package/packages/orq-rc/src/sdk/sdk.ts +6 -0
- package/sdk/feedback.d.ts +2 -2
- package/sdk/feedback.js +2 -2
- package/src/funcs/datasetsList.ts +0 -2
- package/src/lib/config.ts +3 -3
- package/src/lib/encodings.ts +1 -1
- package/src/lib/env.ts +7 -3
- package/src/lib/event-streams.ts +31 -13
- package/src/lib/matchers.ts +1 -1
- package/src/lib/primitives.ts +16 -0
- package/src/models/components/modelmetadata.ts +0 -6
- package/src/models/components/reasoning.ts +4 -50
- package/src/models/components/reasoningparam.ts +4 -48
- package/src/models/components/reasoningpart.ts +1 -1
- package/src/models/operations/createagentrequest.ts +8 -460
- package/src/models/operations/createchatcompletion.ts +10 -129
- package/src/models/operations/createdataset.ts +1 -1
- package/src/models/operations/createdatasetitem.ts +4 -4
- package/src/models/operations/createdatasource.ts +1 -1
- package/src/models/operations/createeval.ts +16 -16
- package/src/models/operations/creatememorystore.ts +5 -5
- package/src/models/operations/createprompt.ts +27 -356
- package/src/models/operations/createrouterresponse.ts +8 -532
- package/src/models/operations/createtool.ts +6 -6
- package/src/models/operations/deploymentgetconfig.ts +8 -105
- package/src/models/operations/deployments.ts +16 -113
- package/src/models/operations/getallmemorystores.ts +2 -2
- package/src/models/operations/getallprompts.ts +8 -210
- package/src/models/operations/getalltools.ts +6 -6
- package/src/models/operations/getevals.ts +16 -16
- package/src/models/operations/getoneprompt.ts +8 -208
- package/src/models/operations/getpromptversion.ts +8 -212
- package/src/models/operations/getv2humanevalsets.ts +2 -2
- package/src/models/operations/getv2humanevalsetsid.ts +2 -2
- package/src/models/operations/listagents.ts +0 -215
- package/src/models/operations/listdatasetdatapoints.ts +4 -4
- package/src/models/operations/listdatasets.ts +1 -14
- package/src/models/operations/listdatasources.ts +1 -1
- package/src/models/operations/listknowledgebases.ts +1 -1
- package/src/models/operations/listpromptversions.ts +8 -212
- package/src/models/operations/patchv2humanevalsetsid.ts +2 -2
- package/src/models/operations/postv2feedbackevaluation.ts +3 -3
- package/src/models/operations/postv2humanevalsets.ts +2 -2
- package/src/models/operations/retrieveagentrequest.ts +0 -222
- package/src/models/operations/retrievedatapoint.ts +4 -4
- package/src/models/operations/retrievedataset.ts +1 -1
- package/src/models/operations/retrievedatasource.ts +1 -1
- package/src/models/operations/retrievememorystore.ts +2 -2
- package/src/models/operations/retrievetool.ts +6 -6
- package/src/models/operations/runagent.ts +1 -236
- package/src/models/operations/streamrunagent.ts +1 -242
- package/src/models/operations/updateagent.ts +9 -464
- package/src/models/operations/updatedatapoint.ts +4 -4
- package/src/models/operations/updatedataset.ts +1 -1
- package/src/models/operations/updatedatasource.ts +1 -1
- package/src/models/operations/updateeval.ts +16 -16
- package/src/models/operations/updatememorystore.ts +5 -5
- package/src/models/operations/updateprompt.ts +27 -356
- package/src/models/operations/updatetool.ts +7 -7
- package/src/sdk/feedback.ts +2 -2
- package/lib/dlv.d.ts +0 -14
- package/lib/dlv.d.ts.map +0 -1
- package/lib/dlv.js +0 -49
- package/lib/dlv.js.map +0 -1
- package/lib/is-plain-object.d.ts +0 -2
- package/lib/is-plain-object.d.ts.map +0 -1
- package/lib/is-plain-object.js +0 -41
- package/lib/is-plain-object.js.map +0 -1
- package/packages/orq-rc/src/lib/dlv.ts +0 -53
- package/packages/orq-rc/src/lib/is-plain-object.ts +0 -43
- package/src/lib/dlv.ts +0 -53
- package/src/lib/is-plain-object.ts +0 -43
|
@@ -0,0 +1,66 @@
|
|
|
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
|
+
* Per-api-key cap. Replaces the legacy embedded `constraints.budget`
|
|
13
|
+
*
|
|
14
|
+
* @remarks
|
|
15
|
+
* on auth.apiKeys.
|
|
16
|
+
*/
|
|
17
|
+
export type ApiKeyBudgetScope = {
|
|
18
|
+
apiKeyId?: string | undefined;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
/** @internal */
|
|
22
|
+
export const ApiKeyBudgetScope$inboundSchema: z.ZodType<
|
|
23
|
+
ApiKeyBudgetScope,
|
|
24
|
+
z.ZodTypeDef,
|
|
25
|
+
unknown
|
|
26
|
+
> = z.object({
|
|
27
|
+
api_key_id: z.string().optional(),
|
|
28
|
+
}).transform((v) => {
|
|
29
|
+
return remap$(v, {
|
|
30
|
+
"api_key_id": "apiKeyId",
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
/** @internal */
|
|
34
|
+
export type ApiKeyBudgetScope$Outbound = {
|
|
35
|
+
api_key_id?: string | undefined;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/** @internal */
|
|
39
|
+
export const ApiKeyBudgetScope$outboundSchema: z.ZodType<
|
|
40
|
+
ApiKeyBudgetScope$Outbound,
|
|
41
|
+
z.ZodTypeDef,
|
|
42
|
+
ApiKeyBudgetScope
|
|
43
|
+
> = z.object({
|
|
44
|
+
apiKeyId: z.string().optional(),
|
|
45
|
+
}).transform((v) => {
|
|
46
|
+
return remap$(v, {
|
|
47
|
+
apiKeyId: "api_key_id",
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
export function apiKeyBudgetScopeToJSON(
|
|
52
|
+
apiKeyBudgetScope: ApiKeyBudgetScope,
|
|
53
|
+
): string {
|
|
54
|
+
return JSON.stringify(
|
|
55
|
+
ApiKeyBudgetScope$outboundSchema.parse(apiKeyBudgetScope),
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
export function apiKeyBudgetScopeFromJSON(
|
|
59
|
+
jsonString: string,
|
|
60
|
+
): SafeParseResult<ApiKeyBudgetScope, SDKValidationError> {
|
|
61
|
+
return safeParse(
|
|
62
|
+
jsonString,
|
|
63
|
+
(x) => ApiKeyBudgetScope$inboundSchema.parse(JSON.parse(x)),
|
|
64
|
+
`Failed to parse 'ApiKeyBudgetScope' from JSON`,
|
|
65
|
+
);
|
|
66
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
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 { BudgetLimits, BudgetLimits$inboundSchema } from "./budgetlimits.js";
|
|
11
|
+
import { BudgetMatch, BudgetMatch$inboundSchema } from "./budgetmatch.js";
|
|
12
|
+
import { BudgetScope, BudgetScope$inboundSchema } from "./budgetscope.js";
|
|
13
|
+
import { RateLimit, RateLimit$inboundSchema } from "./ratelimit.js";
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Budget is the canonical record stored in MongoDB `budgets.entities`.
|
|
17
|
+
*
|
|
18
|
+
* @remarks
|
|
19
|
+
* It replaces the embedded `constraints.budget` on api-keys and the
|
|
20
|
+
* legacy CONTACT-only `budgets.configs` collection (see ADR 0007).
|
|
21
|
+
*/
|
|
22
|
+
export type Budget = {
|
|
23
|
+
budgetId?: string | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Denormalized metadata for UI rendering, list filters, and the
|
|
26
|
+
*
|
|
27
|
+
* @remarks
|
|
28
|
+
* resolver's prefilter index. Never consulted for matching — the
|
|
29
|
+
* `match` expression is the single source of matching semantics.
|
|
30
|
+
* Unset for budgets created from a raw CEL expression ("custom").
|
|
31
|
+
*/
|
|
32
|
+
scope?: BudgetScope | undefined;
|
|
33
|
+
/**
|
|
34
|
+
* The matching semantics of the budget. The enforcement resolver
|
|
35
|
+
*
|
|
36
|
+
* @remarks
|
|
37
|
+
* evaluates `match.cel` against the request context; a budget
|
|
38
|
+
* applies to a request if and only if the expression evaluates to
|
|
39
|
+
* true. Scoped creates derive a canonical expression (e.g.
|
|
40
|
+
* `provider == "openai"`); an empty expression always matches
|
|
41
|
+
* (workspace-wide).
|
|
42
|
+
*/
|
|
43
|
+
match?: BudgetMatch | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* BudgetLimits is the per-period spend and token ceiling. At least one
|
|
46
|
+
*
|
|
47
|
+
* @remarks
|
|
48
|
+
* of `amount`, `token_limit`, or RateLimit.requests_per_minute MUST be
|
|
49
|
+
* set on a Budget; that invariant is enforced by the handler.
|
|
50
|
+
*/
|
|
51
|
+
limits?: BudgetLimits | undefined;
|
|
52
|
+
/**
|
|
53
|
+
* RateLimit is the per-minute request ceiling. Enforced via atomic
|
|
54
|
+
*
|
|
55
|
+
* @remarks
|
|
56
|
+
* increment-first semantics in the enforcement middleware.
|
|
57
|
+
*/
|
|
58
|
+
rateLimit?: RateLimit | undefined;
|
|
59
|
+
isActive?: boolean | undefined;
|
|
60
|
+
expiresAt?: Date | undefined;
|
|
61
|
+
createdAt?: Date | undefined;
|
|
62
|
+
updatedAt?: Date | undefined;
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
/** @internal */
|
|
66
|
+
export const Budget$inboundSchema: z.ZodType<Budget, z.ZodTypeDef, unknown> = z
|
|
67
|
+
.object({
|
|
68
|
+
budget_id: z.string().optional(),
|
|
69
|
+
scope: BudgetScope$inboundSchema.optional(),
|
|
70
|
+
match: BudgetMatch$inboundSchema.optional(),
|
|
71
|
+
limits: BudgetLimits$inboundSchema.optional(),
|
|
72
|
+
rate_limit: RateLimit$inboundSchema.optional(),
|
|
73
|
+
is_active: z.boolean().optional(),
|
|
74
|
+
expires_at: z.string().datetime({ offset: true }).transform(v =>
|
|
75
|
+
new Date(v)
|
|
76
|
+
).optional(),
|
|
77
|
+
created_at: z.string().datetime({ offset: true }).transform(v =>
|
|
78
|
+
new Date(v)
|
|
79
|
+
).optional(),
|
|
80
|
+
updated_at: z.string().datetime({ offset: true }).transform(v =>
|
|
81
|
+
new Date(v)
|
|
82
|
+
).optional(),
|
|
83
|
+
}).transform((v) => {
|
|
84
|
+
return remap$(v, {
|
|
85
|
+
"budget_id": "budgetId",
|
|
86
|
+
"rate_limit": "rateLimit",
|
|
87
|
+
"is_active": "isActive",
|
|
88
|
+
"expires_at": "expiresAt",
|
|
89
|
+
"created_at": "createdAt",
|
|
90
|
+
"updated_at": "updatedAt",
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
export function budgetFromJSON(
|
|
95
|
+
jsonString: string,
|
|
96
|
+
): SafeParseResult<Budget, SDKValidationError> {
|
|
97
|
+
return safeParse(
|
|
98
|
+
jsonString,
|
|
99
|
+
(x) => Budget$inboundSchema.parse(JSON.parse(x)),
|
|
100
|
+
`Failed to parse 'Budget' from JSON`,
|
|
101
|
+
);
|
|
102
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
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
|
+
BudgetPeriod,
|
|
12
|
+
BudgetPeriod$inboundSchema,
|
|
13
|
+
BudgetPeriod$outboundSchema,
|
|
14
|
+
} from "./budgetperiod.js";
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* BudgetLimits is the per-period spend and token ceiling. At least one
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* of `amount`, `token_limit`, or RateLimit.requests_per_minute MUST be
|
|
21
|
+
* set on a Budget; that invariant is enforced by the handler.
|
|
22
|
+
*/
|
|
23
|
+
export type BudgetLimits = {
|
|
24
|
+
period?: BudgetPeriod | undefined;
|
|
25
|
+
amount?: number | undefined;
|
|
26
|
+
tokenLimit?: string | undefined;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
/** @internal */
|
|
30
|
+
export const BudgetLimits$inboundSchema: z.ZodType<
|
|
31
|
+
BudgetLimits,
|
|
32
|
+
z.ZodTypeDef,
|
|
33
|
+
unknown
|
|
34
|
+
> = z.object({
|
|
35
|
+
period: BudgetPeriod$inboundSchema.optional(),
|
|
36
|
+
amount: z.number().optional(),
|
|
37
|
+
token_limit: z.string().optional(),
|
|
38
|
+
}).transform((v) => {
|
|
39
|
+
return remap$(v, {
|
|
40
|
+
"token_limit": "tokenLimit",
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
/** @internal */
|
|
44
|
+
export type BudgetLimits$Outbound = {
|
|
45
|
+
period?: string | undefined;
|
|
46
|
+
amount?: number | undefined;
|
|
47
|
+
token_limit?: string | undefined;
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
/** @internal */
|
|
51
|
+
export const BudgetLimits$outboundSchema: z.ZodType<
|
|
52
|
+
BudgetLimits$Outbound,
|
|
53
|
+
z.ZodTypeDef,
|
|
54
|
+
BudgetLimits
|
|
55
|
+
> = z.object({
|
|
56
|
+
period: BudgetPeriod$outboundSchema.optional(),
|
|
57
|
+
amount: z.number().optional(),
|
|
58
|
+
tokenLimit: z.string().optional(),
|
|
59
|
+
}).transform((v) => {
|
|
60
|
+
return remap$(v, {
|
|
61
|
+
tokenLimit: "token_limit",
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
export function budgetLimitsToJSON(budgetLimits: BudgetLimits): string {
|
|
66
|
+
return JSON.stringify(BudgetLimits$outboundSchema.parse(budgetLimits));
|
|
67
|
+
}
|
|
68
|
+
export function budgetLimitsFromJSON(
|
|
69
|
+
jsonString: string,
|
|
70
|
+
): SafeParseResult<BudgetLimits, SDKValidationError> {
|
|
71
|
+
return safeParse(
|
|
72
|
+
jsonString,
|
|
73
|
+
(x) => BudgetLimits$inboundSchema.parse(JSON.parse(x)),
|
|
74
|
+
`Failed to parse 'BudgetLimits' from JSON`,
|
|
75
|
+
);
|
|
76
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
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
|
+
/**
|
|
11
|
+
* BudgetMatch carries the CEL expression that decides whether a budget
|
|
12
|
+
*
|
|
13
|
+
* @remarks
|
|
14
|
+
* applies to a request. Available variables: `model`, `provider`,
|
|
15
|
+
* `model_id`, `api_key`, `identity`, `project`, `metadata` (map),
|
|
16
|
+
* `headers` (map, lowercase keys). An empty expression always matches.
|
|
17
|
+
* Expressions are syntax-validated at write time.
|
|
18
|
+
*/
|
|
19
|
+
export type BudgetMatch = {
|
|
20
|
+
cel?: string | undefined;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
/** @internal */
|
|
24
|
+
export const BudgetMatch$inboundSchema: z.ZodType<
|
|
25
|
+
BudgetMatch,
|
|
26
|
+
z.ZodTypeDef,
|
|
27
|
+
unknown
|
|
28
|
+
> = z.object({
|
|
29
|
+
cel: z.string().optional(),
|
|
30
|
+
});
|
|
31
|
+
/** @internal */
|
|
32
|
+
export type BudgetMatch$Outbound = {
|
|
33
|
+
cel?: string | undefined;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
/** @internal */
|
|
37
|
+
export const BudgetMatch$outboundSchema: z.ZodType<
|
|
38
|
+
BudgetMatch$Outbound,
|
|
39
|
+
z.ZodTypeDef,
|
|
40
|
+
BudgetMatch
|
|
41
|
+
> = z.object({
|
|
42
|
+
cel: z.string().optional(),
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
export function budgetMatchToJSON(budgetMatch: BudgetMatch): string {
|
|
46
|
+
return JSON.stringify(BudgetMatch$outboundSchema.parse(budgetMatch));
|
|
47
|
+
}
|
|
48
|
+
export function budgetMatchFromJSON(
|
|
49
|
+
jsonString: string,
|
|
50
|
+
): SafeParseResult<BudgetMatch, SDKValidationError> {
|
|
51
|
+
return safeParse(
|
|
52
|
+
jsonString,
|
|
53
|
+
(x) => BudgetMatch$inboundSchema.parse(JSON.parse(x)),
|
|
54
|
+
`Failed to parse 'BudgetMatch' from JSON`,
|
|
55
|
+
);
|
|
56
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
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 BudgetPeriod = {
|
|
9
|
+
BudgetPeriodUnspecified: "BUDGET_PERIOD_UNSPECIFIED",
|
|
10
|
+
BudgetPeriodDaily: "BUDGET_PERIOD_DAILY",
|
|
11
|
+
BudgetPeriodWeekly: "BUDGET_PERIOD_WEEKLY",
|
|
12
|
+
BudgetPeriodMonthly: "BUDGET_PERIOD_MONTHLY",
|
|
13
|
+
BudgetPeriodYearly: "BUDGET_PERIOD_YEARLY",
|
|
14
|
+
BudgetPeriodOneTime: "BUDGET_PERIOD_ONE_TIME",
|
|
15
|
+
} as const;
|
|
16
|
+
export type BudgetPeriod = ClosedEnum<typeof BudgetPeriod>;
|
|
17
|
+
|
|
18
|
+
/** @internal */
|
|
19
|
+
export const BudgetPeriod$inboundSchema: z.ZodNativeEnum<typeof BudgetPeriod> =
|
|
20
|
+
z.nativeEnum(BudgetPeriod);
|
|
21
|
+
/** @internal */
|
|
22
|
+
export const BudgetPeriod$outboundSchema: z.ZodNativeEnum<typeof BudgetPeriod> =
|
|
23
|
+
BudgetPeriod$inboundSchema;
|
|
@@ -0,0 +1,48 @@
|
|
|
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
|
+
* BudgetRejection identifies the budget that caused a 429.
|
|
13
|
+
*/
|
|
14
|
+
export type BudgetRejection = {
|
|
15
|
+
scopeKind?: string | undefined;
|
|
16
|
+
scopeTargetId?: string | undefined;
|
|
17
|
+
dimension?: string | undefined;
|
|
18
|
+
code?: string | undefined;
|
|
19
|
+
message?: string | undefined;
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
/** @internal */
|
|
23
|
+
export const BudgetRejection$inboundSchema: z.ZodType<
|
|
24
|
+
BudgetRejection,
|
|
25
|
+
z.ZodTypeDef,
|
|
26
|
+
unknown
|
|
27
|
+
> = z.object({
|
|
28
|
+
scope_kind: z.string().optional(),
|
|
29
|
+
scope_target_id: z.string().optional(),
|
|
30
|
+
dimension: z.string().optional(),
|
|
31
|
+
code: z.string().optional(),
|
|
32
|
+
message: z.string().optional(),
|
|
33
|
+
}).transform((v) => {
|
|
34
|
+
return remap$(v, {
|
|
35
|
+
"scope_kind": "scopeKind",
|
|
36
|
+
"scope_target_id": "scopeTargetId",
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
export function budgetRejectionFromJSON(
|
|
41
|
+
jsonString: string,
|
|
42
|
+
): SafeParseResult<BudgetRejection, SDKValidationError> {
|
|
43
|
+
return safeParse(
|
|
44
|
+
jsonString,
|
|
45
|
+
(x) => BudgetRejection$inboundSchema.parse(JSON.parse(x)),
|
|
46
|
+
`Failed to parse 'BudgetRejection' from JSON`,
|
|
47
|
+
);
|
|
48
|
+
}
|
|
@@ -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
|
+
}
|