diff --git a/src/app/api/monitoring/[[...slug]]/route.ts b/src/app/api/monitoring/[[...slug]]/route.ts index f8785a6..ae6614b 100644 --- a/src/app/api/monitoring/[[...slug]]/route.ts +++ b/src/app/api/monitoring/[[...slug]]/route.ts @@ -1448,6 +1448,20 @@ const MonitoringServer = new Elysia({ prefix: "/api/monitoring" }) detail: { summary: "List API Keys", tags: ["api-key"] }, }) + .get("/api-keys/:id", async ({ params, set }) => { + try { + const key = await prisma.apiKey.findUnique({ where: { id: params.id } }); + if (!key) { set.status = 404; return { success: false, message: "API key tidak ditemukan" }; } + return { success: true, data: key }; + } catch (error) { + set.status = 500; + return { success: false, message: "Gagal mendapatkan API key" }; + } + }, { + params: t.Object({ id: t.String() }), + detail: { summary: "Get API Key (full)", tags: ["api-key"] }, + }) + .post("/api-keys", async ({ body, set }) => { try { const rawKey = "ak_" + crypto.randomUUID().replace(/-/g, "");