From d3efe351f1cd90c9c613a036ba9b1536eea983c0 Mon Sep 17 00:00:00 2001 From: Tuan Dang Date: Wed, 4 Jan 2023 20:38:37 +0700 Subject: [PATCH] Add DELETE route to API keys --- .../controllers/v2/apiKeyDataController.ts | 26 +++++++++++++++++++ backend/src/routes/v2/apiKeyData.ts | 12 ++++++++- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/backend/src/controllers/v2/apiKeyDataController.ts b/backend/src/controllers/v2/apiKeyDataController.ts index f3fc957f1..3aacde8af 100644 --- a/backend/src/controllers/v2/apiKeyDataController.ts +++ b/backend/src/controllers/v2/apiKeyDataController.ts @@ -77,4 +77,30 @@ export const createAPIKeyData = async (req: Request, res: Response) => { apiKey, apiKeyData }); +} + +/** + * Delete API key data with id [apiKeyDataId]. + * @param req + * @param res + * @returns + */ +export const deleteAPIKeyData = async (req: Request, res: Response) => { + let apiKeyData; + try { + const { apiKeyDataId } = req.params; + + apiKeyData = await APIKeyData.findByIdAndDelete(apiKeyDataId); + + } catch (err) { + Sentry.setUser({ email: req.user.email }); + Sentry.captureException(err); + return res.status(400).send({ + message: 'Failed to delete API key data' + }); + } + + return res.status(200).send({ + apiKeyData + }); } \ No newline at end of file diff --git a/backend/src/routes/v2/apiKeyData.ts b/backend/src/routes/v2/apiKeyData.ts index 9544f6b0a..07bbcbc44 100644 --- a/backend/src/routes/v2/apiKeyData.ts +++ b/backend/src/routes/v2/apiKeyData.ts @@ -4,7 +4,7 @@ import { requireAuth, validateRequest } from '../../middleware'; -import { body } from 'express-validator'; +import { param, body } from 'express-validator'; import { apiKeyDataController } from '../../controllers/v2'; router.get( @@ -26,4 +26,14 @@ router.post( apiKeyDataController.createAPIKeyData ); +router.delete( + '/:apiKeyDataId', + requireAuth({ + acceptedAuthModes: ['jwt'] + }), + param('apiKeyDataId').exists().trim(), + validateRequest, + apiKeyDataController.deleteAPIKeyData +); + export default router; \ No newline at end of file