summary refs log tree commit diff
path: root/src/api
diff options
context:
space:
mode:
authorPuyodead1 <puyodead@proton.me>2023-12-04 23:36:31 -0500
committerGitHub <noreply@github.com>2023-12-04 23:36:31 -0500
commit26e3b47f4fea806bf61dcde250e2ec0ac9617050 (patch)
tree86462d8c91b6ac7477d93b724c24f43acf57c6fb /src/api
parentcreate oauth2/applications/@me for bots (diff)
parentMerge branch 'master' into patch/api-compat (diff)
downloadserver-26e3b47f4fea806bf61dcde250e2ec0ac9617050.tar.xz
Merge pull request #1103 from spacebarchat/patch/api-compat
Fixes for bot libs
Diffstat (limited to 'src/api')
-rw-r--r--src/api/routes/oauth2/applications/@me.ts29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/api/routes/oauth2/applications/@me.ts b/src/api/routes/oauth2/applications/@me.ts
index 2616502a..0c23bdb1 100644
--- a/src/api/routes/oauth2/applications/@me.ts
+++ b/src/api/routes/oauth2/applications/@me.ts
@@ -17,7 +17,11 @@
 */
 
 import { route } from "@spacebar/api";
-import { Application } from "@spacebar/util";
+import {
+	Application,
+	DiscordApiErrors,
+	PublicUserProjection,
+} from "@spacebar/util";
 import { Request, Response, Router } from "express";
 
 const router: Router = Router();
@@ -29,18 +33,27 @@ router.get(
 			200: {
 				body: "Application",
 			},
-			400: {
-				body: "APIErrorResponse",
-			},
 		},
 	}),
 	async (req: Request, res: Response) => {
 		const app = await Application.findOneOrFail({
-			where: { id: req.user_id },
-			relations: ["owner", "bot"],
+			where: { id: req.params.id },
+			relations: ["bot", "owner"],
+			select: {
+				owner: Object.fromEntries(
+					PublicUserProjection.map((x) => [x, true]),
+				),
+			},
+		});
+
+		if (!app.bot) throw DiscordApiErrors.BOT_ONLY_ENDPOINT;
+
+		res.json({
+			...app,
+			owner: app.owner.toPublicUser(),
+			install_params:
+				app.install_params !== null ? app.install_params : undefined,
 		});
-		return res.json(app);
 	},
 );
-
 export default router;