Files
calendar/packages/app-store/zapier/api/subscriptions/addSubscription.ts
T
Benny JooandGitHub d7960021aa perf: do not import from @calcom/lib/server barrel file (#19579)
* do not import from lib/server barrel file

* fix build
2025-02-26 18:10:52 -03:00

30 lines
1.0 KiB
TypeScript

import type { NextApiRequest, NextApiResponse } from "next";
import { addSubscription } from "@calcom/features/webhooks/lib/scheduleTrigger";
import { defaultHandler } from "@calcom/lib/server/defaultHandler";
import { defaultResponder } from "@calcom/lib/server/defaultResponder";
import { validateAccountOrApiKey } from "../../lib/validateAccountOrApiKey";
async function handler(req: NextApiRequest, res: NextApiResponse) {
const { subscriberUrl, triggerEvent } = req.body;
const { account, appApiKey } = await validateAccountOrApiKey(req, ["READ_BOOKING", "READ_PROFILE"]);
const createAppSubscription = await addSubscription({
appApiKey,
account,
triggerEvent: triggerEvent,
subscriberUrl: subscriberUrl,
appId: "zapier",
});
if (!createAppSubscription) {
return res.status(500).json({ message: "Could not create subscription." });
}
res.status(200).json(createAppSubscription);
}
export default defaultHandler({
POST: Promise.resolve({ default: defaultResponder(handler) }),
});