aboutsummaryrefslogtreecommitdiff
path: root/apps/web/src/app/api
diff options
context:
space:
mode:
authorDhravya <[email protected]>2024-02-27 13:08:31 -0700
committerDhravya <[email protected]>2024-02-27 13:08:31 -0700
commit7752cf813e8e07fc21ed82de161cdd01a647721c (patch)
tree2a4d725d3d4d93142152565065895f0ff3c7c139 /apps/web/src/app/api
parentcompleted API routes (diff)
downloadsupermemory-7752cf813e8e07fc21ed82de161cdd01a647721c.tar.xz
supermemory-7752cf813e8e07fc21ed82de161cdd01a647721c.zip
extension auth and sync working
Diffstat (limited to 'apps/web/src/app/api')
-rw-r--r--apps/web/src/app/api/me/route.ts20
1 files changed, 20 insertions, 0 deletions
diff --git a/apps/web/src/app/api/me/route.ts b/apps/web/src/app/api/me/route.ts
new file mode 100644
index 00000000..f17055a3
--- /dev/null
+++ b/apps/web/src/app/api/me/route.ts
@@ -0,0 +1,20 @@
+import { db } from "@/server/db";
+import { eq } from "drizzle-orm";
+import { sessions, users } from "@/server/db/schema";
+import { type NextRequest, NextResponse } from "next/server";
+import { env } from "@/env";
+
+export const runtime = "edge";
+
+export async function GET(req: NextRequest) {
+ const token = req.cookies.get("next-auth.session-token")?.value ?? req.cookies.get("__Secure-authjs.session-token")?.value ?? req.cookies.get("authjs.session-token")?.value ?? req.headers.get("Authorization")?.replace("Bearer ", "");
+
+ const session = await db.select().from(sessions).where(eq(sessions.sessionToken, token!))
+ .leftJoin(users, eq(sessions.userId, users.id)).limit(1)
+
+ if (!session || session.length === 0) {
+ return NextResponse.json({ message: "Invalid Key, session not found." }, { status: 404 });
+ }
+
+ return new Response(JSON.stringify({ message: "OK", data: session }), { status: 200 });
+} \ No newline at end of file