diff options
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/trpc/routers/apiKeys.ts | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/packages/trpc/routers/apiKeys.ts b/packages/trpc/routers/apiKeys.ts index deeb108f..81e3bb2b 100644 --- a/packages/trpc/routers/apiKeys.ts +++ b/packages/trpc/routers/apiKeys.ts @@ -4,7 +4,7 @@ import { z } from "zod"; import { apiKeys } from "@hoarder/db/schema"; -import { generateApiKey, validatePassword } from "../auth"; +import { authenticateApiKey, generateApiKey, validatePassword } from "../auth"; import { authedProcedure, publicProcedure, router } from "../index"; const zApiKeySchema = z.object({ @@ -81,4 +81,13 @@ export const apiKeysAppRouter = router({ } return await generateApiKey(input.keyName, user.id); }), + validate: publicProcedure + .input(z.object({ apiKey: z.string() })) + .output(z.object({ success: z.boolean() })) + .mutation(async ({ input }) => { + await authenticateApiKey(input.apiKey); // Throws if the key is invalid + return { + success: true, + }; + }), }); |
