From 574f9cb5d40be9bad27a4ddb066073f27b7747da Mon Sep 17 00:00:00 2001 From: Carina Wollendorfer <30310907+CarinaWolli@users.noreply.github.com> Date: Thu, 12 May 2022 11:21:46 +0200 Subject: [PATCH] Adjusting Zapier endpoints for publishing integration (#2728) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * add /me endpoint for zapier API testing * remove cacellationReason from listBookings response Co-authored-by: CarinaWolli Co-authored-by: Peer Richelsen Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com> Co-authored-by: Omar López --- packages/app-store/zapier/api/index.ts | 1 + .../zapier/api/subscriptions/listBookings.ts | 1 - .../app-store/zapier/api/subscriptions/me.ts | 35 +++++++++++++++++++ 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 packages/app-store/zapier/api/subscriptions/me.ts diff --git a/packages/app-store/zapier/api/index.ts b/packages/app-store/zapier/api/index.ts index f3f3d07ad7..d32a6d07b0 100644 --- a/packages/app-store/zapier/api/index.ts +++ b/packages/app-store/zapier/api/index.ts @@ -2,3 +2,4 @@ export { default as add } from "./add"; export { default as listBookings } from "./subscriptions/listBookings"; export { default as deleteSubscription } from "./subscriptions/deleteSubscription"; export { default as addSubscription } from "./subscriptions/addSubscription"; +export { default as me } from "./subscriptions/me"; diff --git a/packages/app-store/zapier/api/subscriptions/listBookings.ts b/packages/app-store/zapier/api/subscriptions/listBookings.ts index 8751b06bea..161c86c84a 100644 --- a/packages/app-store/zapier/api/subscriptions/listBookings.ts +++ b/packages/app-store/zapier/api/subscriptions/listBookings.ts @@ -29,7 +29,6 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse) endTime: true, title: true, location: true, - cancellationReason: true, attendees: { select: { name: true, diff --git a/packages/app-store/zapier/api/subscriptions/me.ts b/packages/app-store/zapier/api/subscriptions/me.ts new file mode 100644 index 0000000000..1131873042 --- /dev/null +++ b/packages/app-store/zapier/api/subscriptions/me.ts @@ -0,0 +1,35 @@ +import type { NextApiRequest, NextApiResponse } from "next"; + +import findValidApiKey from "@calcom/ee/lib/api/findValidApiKey"; +import prisma from "@calcom/prisma"; + +export default async function handler(req: NextApiRequest, res: NextApiResponse) { + const apiKey = req.query.apiKey as string; + + if (!apiKey) { + return res.status(401).json({ message: "No API key provided" }); + } + + const validKey = await findValidApiKey(apiKey, "zapier"); + + if (!validKey) { + return res.status(401).json({ message: "API key not valid" }); + } + + if (req.method === "GET") { + try { + const user = await prisma.user.findFirst({ + where: { + id: validKey.userId, + }, + select: { + username: true, + }, + }); + res.status(201).json(user); + } catch (error) { + console.error(error); + return res.status(500).json({ message: "Unable to get User." }); + } + } +}