Path: blob/master/src/packages/next/pages/api/v2/accounts/send-verification-email.ts
1451 views
/*1* This file is part of CoCalc: Copyright © 2022 Sagemath, Inc.2* License: MS-RSL – see LICENSE.md for details3*/45/*6Send verification email7*/89import sendEmailVerification from "@cocalc/server/accounts/send-email-verification";10import getAccountId from "lib/account/get-account";11import { apiRoute, apiRouteOperation } from "lib/api";12import { SuccessStatus } from "lib/api/status";13import {14SendAccountVerificationEmailInputSchema,15SendAccountVerificationEmailOutputSchema,16} from "lib/api/schema/accounts/send-verification-email";1718async function handle(req, res) {19const account_id = await getAccountId(req);20if (account_id == null) {21res.json({ error: "must be signed in" });22return;23}24try {25const msg = await sendEmailVerification(account_id);2627if (msg) {28res.json({ error: msg });29} else {30res.json(SuccessStatus);31}32} catch (err) {33res.json({ error: err.message });34}35}3637export default apiRoute({38sendVerificationEmail: apiRouteOperation({39method: "POST",40openApiOperation: {41tags: ["Accounts"],42},43})44.input({45contentType: "application/json",46body: SendAccountVerificationEmailInputSchema,47})48.outputs([49{50status: 200,51contentType: "application/json",52body: SendAccountVerificationEmailOutputSchema,53},54])55.handler(handle),56});575859