diff --git a/html/functions/discord.ts b/html/functions/discord.ts
new file mode 100644
index 0000000..0b302b6
--- /dev/null
+++ b/html/functions/discord.ts
@@ -0,0 +1,21 @@
+export async function onRequestGet({ request, env }) {
+ const id = new URL(request.url).searchParams.get("id");
+ const { username, avatar } = await fetch(`https://discord.com/api/v9/users/${id}`, {
+ headers: { Authorization: `Bot ${env.DISCORD_TOKEN}`, },
+ }).then((r) => r.json()).catch(console.error);
+ if (username == undefined) {
+ return new Response(JSON.stringify({
+ username: "User not found.",
+ avatar_url: "https://cdn.discordapp.com/embed/avatars/0.png",
+ }), {
+ headers: { "content-type": "application/json;charset=UTF-8", },
+ });
+ } else {
+ return new Response(JSON.stringify({
+ username: username,
+ avatar_url: `https://cdn.discordapp.com/avatars/${id}/${avatar}.png`,
+ }), {
+ headers: { "content-type": "application/json;charset=UTF-8", },
+ });
+ }
+}