diff --git a/apps/dashboard/app/(app)/settings/root-keys/[keyId]/permissions/permissions.ts b/apps/dashboard/app/(app)/settings/root-keys/[keyId]/permissions/permissions.ts index 3fd38752e6..b41eed6791 100644 --- a/apps/dashboard/app/(app)/settings/root-keys/[keyId]/permissions/permissions.ts +++ b/apps/dashboard/app/(app)/settings/root-keys/[keyId]/permissions/permissions.ts @@ -25,6 +25,10 @@ export const workspacePermissions = { }, }, Keys: { + verify_key: { + description: "Verify API keys and enforce rate limits and permissions.", + permission: "api.*.verify_key", + }, create_key: { description: "Create new keys in this workspace.", permission: "api.*.create_key", @@ -145,7 +149,9 @@ export const workspacePermissions = { }, }, } satisfies Record; -export function apiPermissions(apiId: string): { [category: string]: UnkeyPermissions } { +export function apiPermissions(apiId: string): { + [category: string]: UnkeyPermissions; +} { return { API: { read_api: { @@ -163,6 +169,11 @@ export function apiPermissions(apiId: string): { [category: string]: UnkeyPermis }, }, Keys: { + verify_key: { + description: + "Verify keys belonging to this API and enforce their rate limits and permissions.", + permission: `api.${apiId}.verify_key`, + }, create_key: { description: "Create a new key for this API.", permission: `api.${apiId}.create_key`, diff --git a/packages/rbac/src/permissions.ts b/packages/rbac/src/permissions.ts index e387617183..54c4fa3fbd 100644 --- a/packages/rbac/src/permissions.ts +++ b/packages/rbac/src/permissions.ts @@ -35,6 +35,7 @@ export const apiActions = z.enum([ "encrypt_key", "decrypt_key", "read_key", + "verify_key", ]); export const ratelimitActions = z.enum([ "limit",