randydev commited on
Commit
1eb92f0
·
verified ·
1 Parent(s): 2fd1d33

Update index.js

Browse files
Files changed (1) hide show
  1. index.js +33 -0
index.js CHANGED
@@ -181,6 +181,39 @@ app.delete("/api/v2/delete-key", authenticateApiKey, apiLimiter, async (req, res
181
  }
182
  });
183
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
184
  app.delete("/api/v1/delete-key", authenticateApiKey, apiLimiter, async (req, res) => {
185
  const dbClient = new Database("AkenoXJs");
186
  const collection = dbClient.collection("api_keys");
 
181
  }
182
  });
183
 
184
+ app.delete("/api/v1/key/api-key-delete", authenticateApiKey, apiLimiter, async (req, res) => {
185
+ const dbClient = new Database("AkenoXJs");
186
+ const collection = dbClient.collection("api_keys");
187
+
188
+ try {
189
+ const userIdString = req.query.user_id;
190
+ const userIdNumber = Number(userIdString);
191
+
192
+ if (isNaN(userIdNumber) || userIdNumber === 0) {
193
+ return res.status(400).json({ error: "Invalid user_id" });
194
+ }
195
+
196
+ if (userIdNumber === 6477856957) {
197
+ return res.status(400).json({ error: "Sorry, only the developer can perform this action." });
198
+ }
199
+
200
+ const deleteResult = await collection.deleteMany({ owner: userIdNumber });
201
+ const deleteResultTwo = await ApiKey.deleteMany({ owner: userIdNumber });
202
+
203
+ if (deleteResult.deletedCount > 0 || deleteResultTwo.deletedCount > 0) {
204
+ return res.status(200).json({
205
+ message: "API key(s) successfully deleted",
206
+ owner: userIdNumber
207
+ });
208
+ } else {
209
+ return res.status(404).json({ message: "No API keys found for this user" });
210
+ }
211
+
212
+ } catch (err) {
213
+ res.status(500).json({ error: `Key deletion failed: ${err.message}` });
214
+ }
215
+ });
216
+
217
  app.delete("/api/v1/delete-key", authenticateApiKey, apiLimiter, async (req, res) => {
218
  const dbClient = new Database("AkenoXJs");
219
  const collection = dbClient.collection("api_keys");