aboutsummaryrefslogtreecommitdiff
path: root/api
diff options
context:
space:
mode:
authorAndrew Lee <andrew@alee14.me>2025-02-25 23:13:39 -0500
committerAndrew Lee <andrew@alee14.me>2025-02-25 23:13:39 -0500
commit5777f96394444dab18a81d6f085ac81df3e62008 (patch)
tree47dc895e50fa95b52a894bf0806e1a6c1edc8818 /api
parentde5ee661cad7b1fef0f319cbaccd888cb75a1dd4 (diff)
downloadAleeBot-5777f96394444dab18a81d6f085ac81df3e62008.tar.gz
AleeBot-5777f96394444dab18a81d6f085ac81df3e62008.tar.bz2
AleeBot-5777f96394444dab18a81d6f085ac81df3e62008.zip
2.13 Release (finally); Added more API entries; Proper loggingv2.13.0
Diffstat (limited to 'api')
-rw-r--r--api/server.js51
1 files changed, 49 insertions, 2 deletions
diff --git a/api/server.js b/api/server.js
index 2a2afad..acfe528 100644
--- a/api/server.js
+++ b/api/server.js
@@ -5,7 +5,7 @@ require('dotenv').config()
const app = express();
-const createServer = () => {
+const apiServer = (client) => {
app.use(cors()); // Allow cross-origin requests
app.use(express.json());
@@ -17,10 +17,57 @@ const createServer = () => {
});
+ app.get('/api/uptime', (req, res) => {
+ res.json(client.uptime);
+ });
+
+ app.get('/api/servers', (req, res) => {
+ const guildsInfo = [];
+
+ if (client.guilds.cache.size === 0) {
+ res.json({
+ message: 'No servers found'
+ })
+ } else {
+ client.guilds.cache.forEach((guild) => {
+ const guildInfo = {
+ name: guild.name,
+ members: guild.memberCount,
+ id: guild.id
+ };
+ guildsInfo.push(guildInfo);
+ });
+ }
+
+ res.json(guildsInfo);
+
+ });
+
+ app.post('/api/leave', (req, res) => {
+ const { id } = req.body;
+ let guild = client.guilds.cache.get(id);
+
+ try {
+ guild.leave().then(guild => {
+ res.json({
+ guild: guild.name,
+ left: true
+ })
+ });
+
+ } catch (error) {
+ console.error('Error leaving server:', error);
+ res.status(500).res.json({
+ guild: guild.name,
+ left: false
+ })
+ }
+ });
+
// Start the server
app.listen(process.env.port, () => {
console.log(`Server is running on http://localhost:${process.env.port}`);
});
};
-module.exports = createServer;
+module.exports = apiServer;