@unkey/api 2.0.3 → 2.0.5
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/README.md +6 -3
- package/bin/mcp-server.js +461 -157
- package/bin/mcp-server.js.map +31 -23
- package/dist/commonjs/funcs/identitiesListIdentities.js +3 -0
- package/dist/commonjs/funcs/identitiesListIdentities.js.map +1 -1
- package/dist/commonjs/funcs/keysRerollKey.d.ts +49 -0
- package/dist/commonjs/funcs/keysRerollKey.d.ts.map +1 -0
- package/dist/commonjs/funcs/keysRerollKey.js +159 -0
- package/dist/commonjs/funcs/keysRerollKey.js.map +1 -0
- package/dist/commonjs/funcs/permissionsListPermissions.d.ts +2 -1
- package/dist/commonjs/funcs/permissionsListPermissions.d.ts.map +1 -1
- package/dist/commonjs/funcs/permissionsListPermissions.js +2 -1
- package/dist/commonjs/funcs/permissionsListPermissions.js.map +1 -1
- package/dist/commonjs/funcs/permissionsListRoles.d.ts +2 -1
- package/dist/commonjs/funcs/permissionsListRoles.d.ts.map +1 -1
- package/dist/commonjs/funcs/permissionsListRoles.js +2 -1
- package/dist/commonjs/funcs/permissionsListRoles.js.map +1 -1
- package/dist/commonjs/funcs/ratelimitLimit.d.ts +2 -2
- package/dist/commonjs/funcs/ratelimitLimit.d.ts.map +1 -1
- package/dist/commonjs/funcs/ratelimitLimit.js +3 -3
- package/dist/commonjs/funcs/ratelimitLimit.js.map +1 -1
- package/dist/commonjs/lib/config.d.ts +3 -3
- package/dist/commonjs/lib/config.js +3 -3
- package/dist/commonjs/lib/security.d.ts.map +1 -1
- package/dist/commonjs/lib/security.js.map +1 -1
- package/dist/commonjs/mcp-server/mcp-server.js +1 -1
- package/dist/commonjs/mcp-server/server.d.ts.map +1 -1
- package/dist/commonjs/mcp-server/server.js +3 -1
- package/dist/commonjs/mcp-server/server.js.map +1 -1
- package/dist/commonjs/mcp-server/tools/keysRerollKey.d.ts +8 -0
- package/dist/commonjs/mcp-server/tools/keysRerollKey.d.ts.map +1 -0
- package/dist/commonjs/mcp-server/tools/keysRerollKey.js +96 -0
- package/dist/commonjs/mcp-server/tools/keysRerollKey.js.map +1 -0
- package/dist/commonjs/mcp-server/tools/permissionsListPermissions.d.ts.map +1 -1
- package/dist/commonjs/mcp-server/tools/permissionsListPermissions.js +2 -1
- package/dist/commonjs/mcp-server/tools/permissionsListPermissions.js.map +1 -1
- package/dist/commonjs/mcp-server/tools/permissionsListRoles.d.ts.map +1 -1
- package/dist/commonjs/mcp-server/tools/permissionsListRoles.js +2 -1
- package/dist/commonjs/mcp-server/tools/permissionsListRoles.js.map +1 -1
- package/dist/commonjs/mcp-server/tools/ratelimitLimit.js +1 -1
- package/dist/commonjs/models/components/index.d.ts +5 -0
- package/dist/commonjs/models/components/index.d.ts.map +1 -1
- package/dist/commonjs/models/components/index.js +5 -0
- package/dist/commonjs/models/components/index.js.map +1 -1
- package/dist/commonjs/models/components/keycreditsrefill.d.ts +8 -8
- package/dist/commonjs/models/components/keycreditsrefill.d.ts.map +1 -1
- package/dist/commonjs/models/components/keycreditsrefill.js +13 -14
- package/dist/commonjs/models/components/keycreditsrefill.js.map +1 -1
- package/dist/commonjs/models/components/updatekeycreditsdata.d.ts +41 -0
- package/dist/commonjs/models/components/updatekeycreditsdata.d.ts.map +1 -0
- package/dist/commonjs/models/components/updatekeycreditsdata.js +72 -0
- package/dist/commonjs/models/components/updatekeycreditsdata.js.map +1 -0
- package/dist/commonjs/models/components/updatekeycreditsrefill.d.ts +81 -0
- package/dist/commonjs/models/components/updatekeycreditsrefill.d.ts.map +1 -0
- package/dist/commonjs/models/components/updatekeycreditsrefill.js +95 -0
- package/dist/commonjs/models/components/updatekeycreditsrefill.js.map +1 -0
- package/dist/commonjs/models/components/v2keysaddpermissionsresponsebody.d.ts +0 -1
- package/dist/commonjs/models/components/v2keysaddpermissionsresponsebody.d.ts.map +1 -1
- package/dist/commonjs/models/components/v2keysaddpermissionsresponsebody.js.map +1 -1
- package/dist/commonjs/models/components/v2keysaddrolesresponsebody.d.ts +0 -1
- package/dist/commonjs/models/components/v2keysaddrolesresponsebody.d.ts.map +1 -1
- package/dist/commonjs/models/components/v2keysaddrolesresponsebody.js.map +1 -1
- package/dist/commonjs/models/components/v2keysremoverolesresponsebody.d.ts +0 -1
- package/dist/commonjs/models/components/v2keysremoverolesresponsebody.d.ts.map +1 -1
- package/dist/commonjs/models/components/v2keysremoverolesresponsebody.js.map +1 -1
- package/dist/commonjs/models/components/v2keysrerollkeyrequestbody.d.ts +60 -0
- package/dist/commonjs/models/components/v2keysrerollkeyrequestbody.d.ts.map +1 -0
- package/dist/commonjs/models/components/v2keysrerollkeyrequestbody.js +71 -0
- package/dist/commonjs/models/components/v2keysrerollkeyrequestbody.js.map +1 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsebody.d.ts +36 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsebody.d.ts.map +1 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsebody.js +73 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsebody.js.map +1 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsedata.d.ts +62 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsedata.d.ts.map +1 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsedata.js +71 -0
- package/dist/commonjs/models/components/v2keysrerollkeyresponsedata.js.map +1 -0
- package/dist/commonjs/models/components/v2keyssetpermissionsresponsebody.d.ts +0 -1
- package/dist/commonjs/models/components/v2keyssetpermissionsresponsebody.d.ts.map +1 -1
- package/dist/commonjs/models/components/v2keyssetpermissionsresponsebody.js.map +1 -1
- package/dist/commonjs/models/components/v2keyssetrolesresponsebody.d.ts +0 -1
- package/dist/commonjs/models/components/v2keyssetrolesresponsebody.d.ts.map +1 -1
- package/dist/commonjs/models/components/v2keyssetrolesresponsebody.js.map +1 -1
- package/dist/commonjs/models/components/v2keysupdatekeyrequestbody.d.ts +3 -3
- package/dist/commonjs/models/components/v2keysupdatekeyrequestbody.d.ts.map +1 -1
- package/dist/commonjs/models/components/v2keysupdatekeyrequestbody.js +3 -3
- package/dist/commonjs/models/components/v2keysupdatekeyrequestbody.js.map +1 -1
- package/dist/commonjs/models/errors/goneerrorresponse.d.ts +72 -0
- package/dist/commonjs/models/errors/goneerrorresponse.d.ts.map +1 -0
- package/dist/commonjs/models/errors/goneerrorresponse.js +99 -0
- package/dist/commonjs/models/errors/goneerrorresponse.js.map +1 -0
- package/dist/commonjs/models/errors/index.d.ts +1 -0
- package/dist/commonjs/models/errors/index.d.ts.map +1 -1
- package/dist/commonjs/models/errors/index.js +1 -0
- package/dist/commonjs/models/errors/index.js.map +1 -1
- package/dist/commonjs/sdk/keys.d.ts +38 -0
- package/dist/commonjs/sdk/keys.d.ts.map +1 -1
- package/dist/commonjs/sdk/keys.js +41 -0
- package/dist/commonjs/sdk/keys.js.map +1 -1
- package/dist/commonjs/sdk/permissions.d.ts +4 -2
- package/dist/commonjs/sdk/permissions.d.ts.map +1 -1
- package/dist/commonjs/sdk/permissions.js +4 -2
- package/dist/commonjs/sdk/permissions.js.map +1 -1
- package/dist/commonjs/sdk/ratelimit.d.ts +1 -1
- package/dist/commonjs/sdk/ratelimit.js +1 -1
- package/dist/esm/funcs/identitiesListIdentities.js +3 -0
- package/dist/esm/funcs/identitiesListIdentities.js.map +1 -1
- package/dist/esm/funcs/keysRerollKey.d.ts +49 -0
- package/dist/esm/funcs/keysRerollKey.d.ts.map +1 -0
- package/dist/esm/funcs/keysRerollKey.js +123 -0
- package/dist/esm/funcs/keysRerollKey.js.map +1 -0
- package/dist/esm/funcs/permissionsListPermissions.d.ts +2 -1
- package/dist/esm/funcs/permissionsListPermissions.d.ts.map +1 -1
- package/dist/esm/funcs/permissionsListPermissions.js +2 -1
- package/dist/esm/funcs/permissionsListPermissions.js.map +1 -1
- package/dist/esm/funcs/permissionsListRoles.d.ts +2 -1
- package/dist/esm/funcs/permissionsListRoles.d.ts.map +1 -1
- package/dist/esm/funcs/permissionsListRoles.js +2 -1
- package/dist/esm/funcs/permissionsListRoles.js.map +1 -1
- package/dist/esm/funcs/ratelimitLimit.d.ts +2 -2
- package/dist/esm/funcs/ratelimitLimit.d.ts.map +1 -1
- package/dist/esm/funcs/ratelimitLimit.js +3 -3
- package/dist/esm/funcs/ratelimitLimit.js.map +1 -1
- package/dist/esm/lib/config.d.ts +3 -3
- package/dist/esm/lib/config.js +3 -3
- package/dist/esm/lib/security.d.ts.map +1 -1
- package/dist/esm/lib/security.js.map +1 -1
- package/dist/esm/mcp-server/mcp-server.js +1 -1
- package/dist/esm/mcp-server/server.d.ts.map +1 -1
- package/dist/esm/mcp-server/server.js +3 -1
- package/dist/esm/mcp-server/server.js.map +1 -1
- package/dist/esm/mcp-server/tools/keysRerollKey.d.ts +8 -0
- package/dist/esm/mcp-server/tools/keysRerollKey.d.ts.map +1 -0
- package/dist/esm/mcp-server/tools/keysRerollKey.js +60 -0
- package/dist/esm/mcp-server/tools/keysRerollKey.js.map +1 -0
- package/dist/esm/mcp-server/tools/permissionsListPermissions.d.ts.map +1 -1
- package/dist/esm/mcp-server/tools/permissionsListPermissions.js +2 -1
- package/dist/esm/mcp-server/tools/permissionsListPermissions.js.map +1 -1
- package/dist/esm/mcp-server/tools/permissionsListRoles.d.ts.map +1 -1
- package/dist/esm/mcp-server/tools/permissionsListRoles.js +2 -1
- package/dist/esm/mcp-server/tools/permissionsListRoles.js.map +1 -1
- package/dist/esm/mcp-server/tools/ratelimitLimit.js +1 -1
- package/dist/esm/models/components/index.d.ts +5 -0
- package/dist/esm/models/components/index.d.ts.map +1 -1
- package/dist/esm/models/components/index.js +5 -0
- package/dist/esm/models/components/index.js.map +1 -1
- package/dist/esm/models/components/keycreditsrefill.d.ts +8 -8
- package/dist/esm/models/components/keycreditsrefill.d.ts.map +1 -1
- package/dist/esm/models/components/keycreditsrefill.js +12 -13
- package/dist/esm/models/components/keycreditsrefill.js.map +1 -1
- package/dist/esm/models/components/updatekeycreditsdata.d.ts +41 -0
- package/dist/esm/models/components/updatekeycreditsdata.d.ts.map +1 -0
- package/dist/esm/models/components/updatekeycreditsdata.js +34 -0
- package/dist/esm/models/components/updatekeycreditsdata.js.map +1 -0
- package/dist/esm/models/components/updatekeycreditsrefill.d.ts +81 -0
- package/dist/esm/models/components/updatekeycreditsrefill.d.ts.map +1 -0
- package/dist/esm/models/components/updatekeycreditsrefill.js +57 -0
- package/dist/esm/models/components/updatekeycreditsrefill.js.map +1 -0
- package/dist/esm/models/components/v2keysaddpermissionsresponsebody.d.ts +0 -1
- package/dist/esm/models/components/v2keysaddpermissionsresponsebody.d.ts.map +1 -1
- package/dist/esm/models/components/v2keysaddpermissionsresponsebody.js.map +1 -1
- package/dist/esm/models/components/v2keysaddrolesresponsebody.d.ts +0 -1
- package/dist/esm/models/components/v2keysaddrolesresponsebody.d.ts.map +1 -1
- package/dist/esm/models/components/v2keysaddrolesresponsebody.js.map +1 -1
- package/dist/esm/models/components/v2keysremoverolesresponsebody.d.ts +0 -1
- package/dist/esm/models/components/v2keysremoverolesresponsebody.d.ts.map +1 -1
- package/dist/esm/models/components/v2keysremoverolesresponsebody.js.map +1 -1
- package/dist/esm/models/components/v2keysrerollkeyrequestbody.d.ts +60 -0
- package/dist/esm/models/components/v2keysrerollkeyrequestbody.d.ts.map +1 -0
- package/dist/esm/models/components/v2keysrerollkeyrequestbody.js +33 -0
- package/dist/esm/models/components/v2keysrerollkeyrequestbody.js.map +1 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsebody.d.ts +36 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsebody.d.ts.map +1 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsebody.js +35 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsebody.js.map +1 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsedata.d.ts +62 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsedata.d.ts.map +1 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsedata.js +33 -0
- package/dist/esm/models/components/v2keysrerollkeyresponsedata.js.map +1 -0
- package/dist/esm/models/components/v2keyssetpermissionsresponsebody.d.ts +0 -1
- package/dist/esm/models/components/v2keyssetpermissionsresponsebody.d.ts.map +1 -1
- package/dist/esm/models/components/v2keyssetpermissionsresponsebody.js.map +1 -1
- package/dist/esm/models/components/v2keyssetrolesresponsebody.d.ts +0 -1
- package/dist/esm/models/components/v2keyssetrolesresponsebody.d.ts.map +1 -1
- package/dist/esm/models/components/v2keyssetrolesresponsebody.js.map +1 -1
- package/dist/esm/models/components/v2keysupdatekeyrequestbody.d.ts +3 -3
- package/dist/esm/models/components/v2keysupdatekeyrequestbody.d.ts.map +1 -1
- package/dist/esm/models/components/v2keysupdatekeyrequestbody.js +3 -3
- package/dist/esm/models/components/v2keysupdatekeyrequestbody.js.map +1 -1
- package/dist/esm/models/errors/goneerrorresponse.d.ts +72 -0
- package/dist/esm/models/errors/goneerrorresponse.d.ts.map +1 -0
- package/dist/esm/models/errors/goneerrorresponse.js +62 -0
- package/dist/esm/models/errors/goneerrorresponse.js.map +1 -0
- package/dist/esm/models/errors/index.d.ts +1 -0
- package/dist/esm/models/errors/index.d.ts.map +1 -1
- package/dist/esm/models/errors/index.js +1 -0
- package/dist/esm/models/errors/index.js.map +1 -1
- package/dist/esm/sdk/keys.d.ts +38 -0
- package/dist/esm/sdk/keys.d.ts.map +1 -1
- package/dist/esm/sdk/keys.js +41 -0
- package/dist/esm/sdk/keys.js.map +1 -1
- package/dist/esm/sdk/permissions.d.ts +4 -2
- package/dist/esm/sdk/permissions.d.ts.map +1 -1
- package/dist/esm/sdk/permissions.js +4 -2
- package/dist/esm/sdk/permissions.js.map +1 -1
- package/dist/esm/sdk/ratelimit.d.ts +1 -1
- package/dist/esm/sdk/ratelimit.js +1 -1
- package/docs/sdks/keys/README.md +113 -0
- package/docs/sdks/permissions/README.md +4 -2
- package/docs/sdks/ratelimit/README.md +2 -1
- package/examples/apisCreateApi.example.ts +2 -2
- package/examples/package-lock.json +3 -3
- package/jsr.json +1 -1
- package/package.json +3 -3
- package/src/funcs/identitiesListIdentities.ts +3 -0
- package/src/funcs/keysRerollKey.ts +227 -0
- package/src/funcs/permissionsListPermissions.ts +2 -1
- package/src/funcs/permissionsListRoles.ts +2 -1
- package/src/funcs/ratelimitLimit.ts +6 -2
- package/src/lib/config.ts +3 -3
- package/src/lib/security.ts +4 -1
- package/src/mcp-server/mcp-server.ts +1 -1
- package/src/mcp-server/server.ts +3 -1
- package/src/mcp-server/tools/keysRerollKey.ts +69 -0
- package/src/mcp-server/tools/permissionsListPermissions.ts +2 -1
- package/src/mcp-server/tools/permissionsListRoles.ts +2 -1
- package/src/mcp-server/tools/ratelimitLimit.ts +1 -1
- package/src/models/components/index.ts +5 -0
- package/src/models/components/keycreditsrefill.ts +18 -14
- package/src/models/components/updatekeycreditsdata.ts +85 -0
- package/src/models/components/updatekeycreditsrefill.ts +126 -0
- package/src/models/components/v2keysaddpermissionsresponsebody.ts +0 -1
- package/src/models/components/v2keysaddrolesresponsebody.ts +0 -1
- package/src/models/components/v2keysremoverolesresponsebody.ts +0 -1
- package/src/models/components/v2keysrerollkeyrequestbody.ts +99 -0
- package/src/models/components/v2keysrerollkeyresponsebody.ts +87 -0
- package/src/models/components/v2keysrerollkeyresponsedata.ts +103 -0
- package/src/models/components/v2keyssetpermissionsresponsebody.ts +0 -1
- package/src/models/components/v2keyssetrolesresponsebody.ts +0 -1
- package/src/models/components/v2keysupdatekeyrequestbody.ts +10 -10
- package/src/models/errors/goneerrorresponse.ts +118 -0
- package/src/models/errors/index.ts +1 -0
- package/src/sdk/keys.ts +49 -0
- package/src/sdk/permissions.ts +4 -2
- package/src/sdk/ratelimit.ts +1 -1
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
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 V2KeysRerollKeyResponseData = {
|
|
11
|
+
/**
|
|
12
|
+
* The unique identifier for the newly created key.
|
|
13
|
+
*
|
|
14
|
+
* @remarks
|
|
15
|
+
*
|
|
16
|
+
* This is NOT the actual API key token, but a reference ID for management operations.
|
|
17
|
+
* Store this ID to:
|
|
18
|
+
* - Update or revoke the key later
|
|
19
|
+
* - Track the key in your database
|
|
20
|
+
* - Display in admin dashboards (safe to log)
|
|
21
|
+
*
|
|
22
|
+
* Note: This is a new ID - the original key retains its own ID.
|
|
23
|
+
*/
|
|
24
|
+
keyId: string;
|
|
25
|
+
/**
|
|
26
|
+
* The newly generated API key token (the actual secret that authenticates requests).
|
|
27
|
+
*
|
|
28
|
+
* @remarks
|
|
29
|
+
*
|
|
30
|
+
* **SECURITY CRITICAL:**
|
|
31
|
+
* - This is the only time you'll receive the complete key
|
|
32
|
+
* - Unkey stores only a hashed version (unless the original key was created with `recoverable=true`)
|
|
33
|
+
* - Never log, store, or expose this value in your systems
|
|
34
|
+
* - Transmit directly to the end user via secure channels only
|
|
35
|
+
* - If lost and not recoverable, you must reroll or create a new key
|
|
36
|
+
*
|
|
37
|
+
* The key format follows: `[prefix]_[random_bytes]`
|
|
38
|
+
* - Prefix is extracted from the original key or uses API default
|
|
39
|
+
* - Random bytes follow API configuration (default: 16 bytes)
|
|
40
|
+
*
|
|
41
|
+
* This is NOT the keyId - it's the actual secret token used for authentication.
|
|
42
|
+
*/
|
|
43
|
+
key: string;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
/** @internal */
|
|
47
|
+
export const V2KeysRerollKeyResponseData$inboundSchema: z.ZodType<
|
|
48
|
+
V2KeysRerollKeyResponseData,
|
|
49
|
+
z.ZodTypeDef,
|
|
50
|
+
unknown
|
|
51
|
+
> = z.object({
|
|
52
|
+
keyId: z.string(),
|
|
53
|
+
key: z.string(),
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
/** @internal */
|
|
57
|
+
export type V2KeysRerollKeyResponseData$Outbound = {
|
|
58
|
+
keyId: string;
|
|
59
|
+
key: string;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
/** @internal */
|
|
63
|
+
export const V2KeysRerollKeyResponseData$outboundSchema: z.ZodType<
|
|
64
|
+
V2KeysRerollKeyResponseData$Outbound,
|
|
65
|
+
z.ZodTypeDef,
|
|
66
|
+
V2KeysRerollKeyResponseData
|
|
67
|
+
> = z.object({
|
|
68
|
+
keyId: z.string(),
|
|
69
|
+
key: z.string(),
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @internal
|
|
74
|
+
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
|
|
75
|
+
*/
|
|
76
|
+
export namespace V2KeysRerollKeyResponseData$ {
|
|
77
|
+
/** @deprecated use `V2KeysRerollKeyResponseData$inboundSchema` instead. */
|
|
78
|
+
export const inboundSchema = V2KeysRerollKeyResponseData$inboundSchema;
|
|
79
|
+
/** @deprecated use `V2KeysRerollKeyResponseData$outboundSchema` instead. */
|
|
80
|
+
export const outboundSchema = V2KeysRerollKeyResponseData$outboundSchema;
|
|
81
|
+
/** @deprecated use `V2KeysRerollKeyResponseData$Outbound` instead. */
|
|
82
|
+
export type Outbound = V2KeysRerollKeyResponseData$Outbound;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export function v2KeysRerollKeyResponseDataToJSON(
|
|
86
|
+
v2KeysRerollKeyResponseData: V2KeysRerollKeyResponseData,
|
|
87
|
+
): string {
|
|
88
|
+
return JSON.stringify(
|
|
89
|
+
V2KeysRerollKeyResponseData$outboundSchema.parse(
|
|
90
|
+
v2KeysRerollKeyResponseData,
|
|
91
|
+
),
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export function v2KeysRerollKeyResponseDataFromJSON(
|
|
96
|
+
jsonString: string,
|
|
97
|
+
): SafeParseResult<V2KeysRerollKeyResponseData, SDKValidationError> {
|
|
98
|
+
return safeParse(
|
|
99
|
+
jsonString,
|
|
100
|
+
(x) => V2KeysRerollKeyResponseData$inboundSchema.parse(JSON.parse(x)),
|
|
101
|
+
`Failed to parse 'V2KeysRerollKeyResponseData' from JSON`,
|
|
102
|
+
);
|
|
103
|
+
}
|
|
@@ -32,7 +32,6 @@ export type V2KeysSetPermissionsResponseBody = {
|
|
|
32
32
|
* The response includes:
|
|
33
33
|
* - The comprehensive, updated set of direct permissions (reflecting the complete replacement)
|
|
34
34
|
* - Both ID and name for each permission for easy reference
|
|
35
|
-
* - Permissions sorted alphabetically by name for consistent response format
|
|
36
35
|
*
|
|
37
36
|
* Important notes:
|
|
38
37
|
* - This only shows direct permissions, not those granted through roles
|
|
@@ -32,7 +32,6 @@ export type V2KeysSetRolesResponseBody = {
|
|
|
32
32
|
* The response includes:
|
|
33
33
|
* - The comprehensive, updated set of roles (reflecting the complete replacement)
|
|
34
34
|
* - Both ID and name for each role for easy reference
|
|
35
|
-
* - Roles sorted alphabetically by name for consistent response format
|
|
36
35
|
*
|
|
37
36
|
* Important notes:
|
|
38
37
|
* - This response shows the final state after the complete replacement
|
|
@@ -6,18 +6,18 @@ import * as z from "zod";
|
|
|
6
6
|
import { safeParse } from "../../lib/schemas.js";
|
|
7
7
|
import { Result as SafeParseResult } from "../../types/fp.js";
|
|
8
8
|
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
|
|
9
|
-
import {
|
|
10
|
-
KeyCreditsData,
|
|
11
|
-
KeyCreditsData$inboundSchema,
|
|
12
|
-
KeyCreditsData$Outbound,
|
|
13
|
-
KeyCreditsData$outboundSchema,
|
|
14
|
-
} from "./keycreditsdata.js";
|
|
15
9
|
import {
|
|
16
10
|
RatelimitRequest,
|
|
17
11
|
RatelimitRequest$inboundSchema,
|
|
18
12
|
RatelimitRequest$Outbound,
|
|
19
13
|
RatelimitRequest$outboundSchema,
|
|
20
14
|
} from "./ratelimitrequest.js";
|
|
15
|
+
import {
|
|
16
|
+
UpdateKeyCreditsData,
|
|
17
|
+
UpdateKeyCreditsData$inboundSchema,
|
|
18
|
+
UpdateKeyCreditsData$Outbound,
|
|
19
|
+
UpdateKeyCreditsData$outboundSchema,
|
|
20
|
+
} from "./updatekeycreditsdata.js";
|
|
21
21
|
|
|
22
22
|
export type V2KeysUpdateKeyRequestBody = {
|
|
23
23
|
/**
|
|
@@ -68,7 +68,7 @@ export type V2KeysUpdateKeyRequestBody = {
|
|
|
68
68
|
/**
|
|
69
69
|
* Credit configuration and remaining balance for this key.
|
|
70
70
|
*/
|
|
71
|
-
credits?:
|
|
71
|
+
credits?: UpdateKeyCreditsData | null | undefined;
|
|
72
72
|
/**
|
|
73
73
|
* Defines time-based rate limits that protect against abuse by controlling request frequency.
|
|
74
74
|
*
|
|
@@ -102,7 +102,7 @@ export const V2KeysUpdateKeyRequestBody$inboundSchema: z.ZodType<
|
|
|
102
102
|
externalId: z.nullable(z.string()).optional(),
|
|
103
103
|
meta: z.nullable(z.record(z.any())).optional(),
|
|
104
104
|
expires: z.nullable(z.number().int()).optional(),
|
|
105
|
-
credits:
|
|
105
|
+
credits: z.nullable(UpdateKeyCreditsData$inboundSchema).optional(),
|
|
106
106
|
ratelimits: z.array(RatelimitRequest$inboundSchema).optional(),
|
|
107
107
|
enabled: z.boolean().optional(),
|
|
108
108
|
roles: z.array(z.string()).optional(),
|
|
@@ -116,7 +116,7 @@ export type V2KeysUpdateKeyRequestBody$Outbound = {
|
|
|
116
116
|
externalId?: string | null | undefined;
|
|
117
117
|
meta?: { [k: string]: any } | null | undefined;
|
|
118
118
|
expires?: number | null | undefined;
|
|
119
|
-
credits?:
|
|
119
|
+
credits?: UpdateKeyCreditsData$Outbound | null | undefined;
|
|
120
120
|
ratelimits?: Array<RatelimitRequest$Outbound> | undefined;
|
|
121
121
|
enabled?: boolean | undefined;
|
|
122
122
|
roles?: Array<string> | undefined;
|
|
@@ -134,7 +134,7 @@ export const V2KeysUpdateKeyRequestBody$outboundSchema: z.ZodType<
|
|
|
134
134
|
externalId: z.nullable(z.string()).optional(),
|
|
135
135
|
meta: z.nullable(z.record(z.any())).optional(),
|
|
136
136
|
expires: z.nullable(z.number().int()).optional(),
|
|
137
|
-
credits:
|
|
137
|
+
credits: z.nullable(UpdateKeyCreditsData$outboundSchema).optional(),
|
|
138
138
|
ratelimits: z.array(RatelimitRequest$outboundSchema).optional(),
|
|
139
139
|
enabled: z.boolean().optional(),
|
|
140
140
|
roles: z.array(z.string()).optional(),
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import * as z from "zod";
|
|
6
|
+
import * as components from "../components/index.js";
|
|
7
|
+
import { UnkeyError } from "./unkeyerror.js";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Error response when the requested resource has been soft-deleted and is no longer available. This occurs when:
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* - The resource has been marked as deleted but still exists in the database
|
|
14
|
+
* - The resource is intentionally unavailable but could potentially be restored
|
|
15
|
+
* - The resource cannot be restored through the API or dashboard
|
|
16
|
+
*
|
|
17
|
+
* To resolve this error, contact support if you need the resource restored.
|
|
18
|
+
*/
|
|
19
|
+
export type GoneErrorResponseData = {
|
|
20
|
+
/**
|
|
21
|
+
* Metadata object included in every API response. This provides context about the request and is essential for debugging, audit trails, and support inquiries. The `requestId` is particularly important when troubleshooting issues with the Unkey support team.
|
|
22
|
+
*/
|
|
23
|
+
meta: components.Meta;
|
|
24
|
+
/**
|
|
25
|
+
* Base error structure following Problem Details for HTTP APIs (RFC 7807). This provides a standardized way to carry machine-readable details of errors in HTTP response content.
|
|
26
|
+
*/
|
|
27
|
+
error: components.BaseError;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Error response when the requested resource has been soft-deleted and is no longer available. This occurs when:
|
|
32
|
+
*
|
|
33
|
+
* @remarks
|
|
34
|
+
* - The resource has been marked as deleted but still exists in the database
|
|
35
|
+
* - The resource is intentionally unavailable but could potentially be restored
|
|
36
|
+
* - The resource cannot be restored through the API or dashboard
|
|
37
|
+
*
|
|
38
|
+
* To resolve this error, contact support if you need the resource restored.
|
|
39
|
+
*/
|
|
40
|
+
export class GoneErrorResponse extends UnkeyError {
|
|
41
|
+
/**
|
|
42
|
+
* Metadata object included in every API response. This provides context about the request and is essential for debugging, audit trails, and support inquiries. The `requestId` is particularly important when troubleshooting issues with the Unkey support team.
|
|
43
|
+
*/
|
|
44
|
+
meta: components.Meta;
|
|
45
|
+
/**
|
|
46
|
+
* Base error structure following Problem Details for HTTP APIs (RFC 7807). This provides a standardized way to carry machine-readable details of errors in HTTP response content.
|
|
47
|
+
*/
|
|
48
|
+
error: components.BaseError;
|
|
49
|
+
|
|
50
|
+
/** The original data that was passed to this error instance. */
|
|
51
|
+
data$: GoneErrorResponseData;
|
|
52
|
+
|
|
53
|
+
constructor(
|
|
54
|
+
err: GoneErrorResponseData,
|
|
55
|
+
httpMeta: { response: Response; request: Request; body: string },
|
|
56
|
+
) {
|
|
57
|
+
const message = "message" in err && typeof err.message === "string"
|
|
58
|
+
? err.message
|
|
59
|
+
: `API error occurred: ${JSON.stringify(err)}`;
|
|
60
|
+
super(message, httpMeta);
|
|
61
|
+
this.data$ = err;
|
|
62
|
+
this.meta = err.meta;
|
|
63
|
+
this.error = err.error;
|
|
64
|
+
|
|
65
|
+
this.name = "GoneErrorResponse";
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/** @internal */
|
|
70
|
+
export const GoneErrorResponse$inboundSchema: z.ZodType<
|
|
71
|
+
GoneErrorResponse,
|
|
72
|
+
z.ZodTypeDef,
|
|
73
|
+
unknown
|
|
74
|
+
> = z.object({
|
|
75
|
+
meta: components.Meta$inboundSchema,
|
|
76
|
+
error: components.BaseError$inboundSchema,
|
|
77
|
+
request$: z.instanceof(Request),
|
|
78
|
+
response$: z.instanceof(Response),
|
|
79
|
+
body$: z.string(),
|
|
80
|
+
})
|
|
81
|
+
.transform((v) => {
|
|
82
|
+
return new GoneErrorResponse(v, {
|
|
83
|
+
request: v.request$,
|
|
84
|
+
response: v.response$,
|
|
85
|
+
body: v.body$,
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
/** @internal */
|
|
90
|
+
export type GoneErrorResponse$Outbound = {
|
|
91
|
+
meta: components.Meta$Outbound;
|
|
92
|
+
error: components.BaseError$Outbound;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
/** @internal */
|
|
96
|
+
export const GoneErrorResponse$outboundSchema: z.ZodType<
|
|
97
|
+
GoneErrorResponse$Outbound,
|
|
98
|
+
z.ZodTypeDef,
|
|
99
|
+
GoneErrorResponse
|
|
100
|
+
> = z.instanceof(GoneErrorResponse)
|
|
101
|
+
.transform(v => v.data$)
|
|
102
|
+
.pipe(z.object({
|
|
103
|
+
meta: components.Meta$outboundSchema,
|
|
104
|
+
error: components.BaseError$outboundSchema,
|
|
105
|
+
}));
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* @internal
|
|
109
|
+
* @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
|
|
110
|
+
*/
|
|
111
|
+
export namespace GoneErrorResponse$ {
|
|
112
|
+
/** @deprecated use `GoneErrorResponse$inboundSchema` instead. */
|
|
113
|
+
export const inboundSchema = GoneErrorResponse$inboundSchema;
|
|
114
|
+
/** @deprecated use `GoneErrorResponse$outboundSchema` instead. */
|
|
115
|
+
export const outboundSchema = GoneErrorResponse$outboundSchema;
|
|
116
|
+
/** @deprecated use `GoneErrorResponse$Outbound` instead. */
|
|
117
|
+
export type Outbound = GoneErrorResponse$Outbound;
|
|
118
|
+
}
|
|
@@ -6,6 +6,7 @@ export * from "./apierror.js";
|
|
|
6
6
|
export * from "./badrequesterrorresponse.js";
|
|
7
7
|
export * from "./conflicterrorresponse.js";
|
|
8
8
|
export * from "./forbiddenerrorresponse.js";
|
|
9
|
+
export * from "./goneerrorresponse.js";
|
|
9
10
|
export * from "./httpclienterrors.js";
|
|
10
11
|
export * from "./internalservererrorresponse.js";
|
|
11
12
|
export * from "./notfounderrorresponse.js";
|
package/src/sdk/keys.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { keysDeleteKey } from "../funcs/keysDeleteKey.js";
|
|
|
9
9
|
import { keysGetKey } from "../funcs/keysGetKey.js";
|
|
10
10
|
import { keysRemovePermissions } from "../funcs/keysRemovePermissions.js";
|
|
11
11
|
import { keysRemoveRoles } from "../funcs/keysRemoveRoles.js";
|
|
12
|
+
import { keysRerollKey } from "../funcs/keysRerollKey.js";
|
|
12
13
|
import { keysSetPermissions } from "../funcs/keysSetPermissions.js";
|
|
13
14
|
import { keysSetRoles } from "../funcs/keysSetRoles.js";
|
|
14
15
|
import { keysUpdateCredits } from "../funcs/keysUpdateCredits.js";
|
|
@@ -233,6 +234,54 @@ export class Keys extends ClientSDK {
|
|
|
233
234
|
));
|
|
234
235
|
}
|
|
235
236
|
|
|
237
|
+
/**
|
|
238
|
+
* Reroll Key
|
|
239
|
+
*
|
|
240
|
+
* @remarks
|
|
241
|
+
* Generate a new API key while preserving the configuration from an existing key.
|
|
242
|
+
*
|
|
243
|
+
* This operation creates a fresh key with a new token while maintaining all settings from the original key:
|
|
244
|
+
* - Permissions and roles
|
|
245
|
+
* - Custom metadata
|
|
246
|
+
* - Rate limit configurations
|
|
247
|
+
* - Identity associations
|
|
248
|
+
* - Remaining credits
|
|
249
|
+
* - Recovery settings
|
|
250
|
+
*
|
|
251
|
+
* **Key Generation:**
|
|
252
|
+
* - The system attempts to extract the prefix from the original key
|
|
253
|
+
* - If prefix extraction fails, the default API prefix is used
|
|
254
|
+
* - Key length follows the API's default byte configuration (or 16 bytes if not specified)
|
|
255
|
+
*
|
|
256
|
+
* **Original Key Handling:**
|
|
257
|
+
* - The original key will be revoked after the duration specified in `expiration`
|
|
258
|
+
* - Set `expiration` to 0 to revoke immediately
|
|
259
|
+
* - This allows for graceful key rotation with an overlap period
|
|
260
|
+
*
|
|
261
|
+
* Common use cases include:
|
|
262
|
+
* - Rotating keys for security compliance
|
|
263
|
+
* - Issuing replacement keys for compromised credentials
|
|
264
|
+
* - Creating backup keys with identical permissions
|
|
265
|
+
*
|
|
266
|
+
* **Important:** Analytics and usage metrics are tracked at both the key level AND identity level. If the original key has an identity, the new key will inherit it, allowing you to track usage across both individual keys and the overall identity.
|
|
267
|
+
*
|
|
268
|
+
* **Required Permissions**
|
|
269
|
+
*
|
|
270
|
+
* Your root key must have:
|
|
271
|
+
* - `api.*.create_key` or `api.<api_id>.create_key`
|
|
272
|
+
* - `api.*.encrypt_key` or `api.<api_id>.encrypt_key` (only when the original key is recoverable)
|
|
273
|
+
*/
|
|
274
|
+
async rerollKey(
|
|
275
|
+
request: components.V2KeysRerollKeyRequestBody,
|
|
276
|
+
options?: RequestOptions,
|
|
277
|
+
): Promise<components.V2KeysRerollKeyResponseBody> {
|
|
278
|
+
return unwrapAsync(keysRerollKey(
|
|
279
|
+
this,
|
|
280
|
+
request,
|
|
281
|
+
options,
|
|
282
|
+
));
|
|
283
|
+
}
|
|
284
|
+
|
|
236
285
|
/**
|
|
237
286
|
* Set key permissions
|
|
238
287
|
*
|
package/src/sdk/permissions.ts
CHANGED
|
@@ -161,7 +161,8 @@ export class Permissions extends ClientSDK {
|
|
|
161
161
|
* List permissions
|
|
162
162
|
*
|
|
163
163
|
* @remarks
|
|
164
|
-
* Retrieve all permissions in your workspace.
|
|
164
|
+
* Retrieve all permissions in your workspace.
|
|
165
|
+
* Results are paginated and sorted by their id.
|
|
165
166
|
*
|
|
166
167
|
* **Required Permissions**
|
|
167
168
|
*
|
|
@@ -183,7 +184,8 @@ export class Permissions extends ClientSDK {
|
|
|
183
184
|
* List roles
|
|
184
185
|
*
|
|
185
186
|
* @remarks
|
|
186
|
-
* Retrieve all roles in your workspace including their assigned permissions.
|
|
187
|
+
* Retrieve all roles in your workspace including their assigned permissions.
|
|
188
|
+
* Results are paginated and sorted by their id.
|
|
187
189
|
*
|
|
188
190
|
* **Required Permissions**
|
|
189
191
|
*
|
package/src/sdk/ratelimit.ts
CHANGED
|
@@ -66,7 +66,7 @@ export class Ratelimit extends ClientSDK {
|
|
|
66
66
|
*
|
|
67
67
|
* Use this for rate limiting beyond API keys - limit users by ID, IPs by address, or any custom identifier. Supports namespace organization, variable costs, and custom overrides.
|
|
68
68
|
*
|
|
69
|
-
* **
|
|
69
|
+
* **Response Codes**: Rate limit checks return HTTP 200 regardless of whether the limit is exceeded - check the `success` field in the response to determine if the request should be allowed. 4xx responses indicate auth, namespace existence/deletion, or validation errors (e.g., 410 Gone for deleted namespaces). 5xx responses indicate server errors.
|
|
70
70
|
*
|
|
71
71
|
* **Required Permissions**
|
|
72
72
|
*
|