aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/docs/pages/api/signup.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'docs/pages/api/signup.tsx')
-rw-r--r--docs/pages/api/signup.tsx33
1 files changed, 33 insertions, 0 deletions
diff --git a/docs/pages/api/signup.tsx b/docs/pages/api/signup.tsx
new file mode 100644
index 0000000..0a082ee
--- /dev/null
+++ b/docs/pages/api/signup.tsx
@@ -0,0 +1,33 @@
+import { NextApiRequest, NextApiResponse } from "next";
+import { withSentry } from "@sentry/nextjs";
+
+const CAMPAIGN_ID = process.env.TURBOREPO_SFDC_CAMPAIGN_ID;
+const TRAY_URL = process.env.TRAY_URL;
+
+async function handler(req: NextApiRequest, res: NextApiResponse) {
+ if (req.method === "POST") {
+ const user = {
+ email: req.body.email,
+ campaign_id: CAMPAIGN_ID,
+ };
+
+ try {
+ const trayRes = await fetch(TRAY_URL, {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ Accept: "application/json",
+ },
+ body: JSON.stringify({ user: user }),
+ });
+
+ return res.status(201).json(user);
+ } catch (error) {
+ return res.status(500).json(error);
+ }
+ } else {
+ return res.status(404).send(null);
+ }
+}
+
+export default withSentry(handler);