fix: forgot one api endpoint

This commit is contained in:
dvelo 2024-12-18 21:18:53 -06:00
parent 10e0c91d6a
commit be3c0f749a

@ -32,47 +32,50 @@ import type { NextApiRequest, NextApiResponse } from "next";
import { clerkClient, getAuth } from "@clerk/nextjs/server"; import { clerkClient, getAuth } from "@clerk/nextjs/server";
export default async function handler( export default async function handler(
req: NextApiRequest, req: NextApiRequest,
res: NextApiResponse, res: NextApiResponse
) { ) {
const { userId } = getAuth(req); const { userId } = getAuth(req);
if (!userId) { if (!userId) {
return res.status(401).json({ error: "Unauthorized" }); return res.status(401).json({ error: "Unauthorized" });
} }
const { data } = req.body; const { data } = req.body;
if (data === undefined) { if (data === undefined) {
res.status(400).send({ message: "Couldn't find data" }); res.status(400).send({ message: "Couldn't find data" });
return; return;
} }
const { type } = req.body; const { type } = req.body;
if (type === undefined) { if (type === undefined) {
res.status(400).send({ message: "Couldn't find data" }); res.status(400).send({ message: "Couldn't find data" });
return; return;
} }
if (data === null) { if (data === null) {
clerkClient.users.updateUserMetadata(userId, { await (
publicMetadata: { [type]: null }, await clerkClient()
}); ).users.updateUserMetadata(userId, {
res.status(200).send({ message: "Success" }); publicMetadata: { [type]: null },
} });
if (type !== "srv" && type !== "ipr" && type !== "pad") res.status(200).send({ message: "Success" });
return res.status(400).send({ message: "Couldn't find data" }); }
if (type !== "srv" && type !== "ipr" && type !== "pad")
return res.status(400).send({ message: "Couldn't find data" });
if (type === "srv" && typeof data !== "boolean") if (type === "srv" && typeof data !== "boolean")
return res.status(400).send({ message: "Couldn't find data" }); return res.status(400).send({ message: "Couldn't find data" });
if (type === "ipr" && typeof data !== "number") if (type === "ipr" && typeof data !== "number")
return res.status(400).send({ message: "Couldn't find data" }); return res.status(400).send({ message: "Couldn't find data" });
if (type === "pad" && typeof data !== "number") if (type === "pad" && typeof data !== "number")
return res.status(400).send({ message: "Couldn't find data" }); return res.status(400).send({ message: "Couldn't find data" });
clerkClient.users.updateUserMetadata(userId, { (await clerkClient()).users.updateUserMetadata(userId, {
publicMetadata: { [type]: typeof data === "number" ? data.toString() : data }, publicMetadata: {
}); [type]: typeof data === "number" ? data.toString() : data,
res.status(200).send({ message: "Success" }); },
});
res.status(200).send({ message: "Success" });
} }