Co-authored-by: CarinaWolli <wollencarina@gmail.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com>
37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import type { NextApiRequest, NextApiResponse } from "next";
|
|
|
|
import { listBookings } from "@calcom/features/webhooks/lib/scheduleTrigger";
|
|
import { defaultHandler, defaultResponder } from "@calcom/lib/server";
|
|
|
|
import { validateAccountOrApiKey } from "../../lib/validateAccountOrApiKey";
|
|
|
|
async function handler(req: NextApiRequest, res: NextApiResponse) {
|
|
const { account: authorizedAccount, appApiKey: validKey } = await validateAccountOrApiKey(req, [
|
|
"READ_BOOKING",
|
|
]);
|
|
const bookings = await listBookings(validKey, authorizedAccount);
|
|
|
|
if (!bookings) {
|
|
return res.status(500).json({ message: "Unable to get bookings." });
|
|
}
|
|
if (bookings.length === 0) {
|
|
const userInfo = validKey
|
|
? validKey.userId
|
|
: authorizedAccount && !authorizedAccount.isTeam
|
|
? authorizedAccount.name
|
|
: null;
|
|
const teamInfo = validKey
|
|
? validKey.teamId
|
|
: authorizedAccount && authorizedAccount.isTeam
|
|
? authorizedAccount.name
|
|
: null;
|
|
|
|
return res.status(201).json([]);
|
|
}
|
|
res.status(201).json(bookings);
|
|
}
|
|
|
|
export default defaultHandler({
|
|
GET: Promise.resolve({ default: defaultResponder(handler) }),
|
|
});
|