diff --git a/set_version.sh b/set_version.sh
index 570c0159e74cce496ec42637d93f07ce96e880e6..2b32c6c0a13db502bb92463382290c5291d649a4 100755
--- a/set_version.sh
+++ b/set_version.sh
@@ -1,3 +1,3 @@
 #!/bin/bash
-export version=0.5.1-alpha.9
+export version=0.5.1-alpha.10
 echo "pub const VERSION: &str = \"${version}\";" > src/version.rs
diff --git a/src/routes/servers/ban_list.rs b/src/routes/servers/ban_list.rs
index 5127a7aa4d164a2eec7a3ffb7bdc6a8f146a4d63..3993d3e7229bbbee587ad91f86b04704e5a10876 100644
--- a/src/routes/servers/ban_list.rs
+++ b/src/routes/servers/ban_list.rs
@@ -2,8 +2,17 @@ use crate::database::*;
 use crate::util::result::{Error, Result};
 
 use futures::StreamExt;
-use mongodb::bson::{doc, from_document};
+use mongodb::options::FindOptions;
+use serde::{Serialize, Deserialize};
 use rocket_contrib::json::JsonValue;
+use mongodb::bson::{doc, from_document};
+
+#[derive(Serialize, Deserialize)]
+struct BannedUser {
+    _id: String,
+    username: String,
+    avatar: Option<File>
+}
 
 #[get("/<target>/bans")]
 pub async fn req(user: User, target: Ref) -> Result<JsonValue> {
@@ -32,13 +41,47 @@ pub async fn req(user: User, target: Ref) -> Result<JsonValue> {
         })?;
 
     let mut bans = vec![];
+    let mut user_ids = vec![];
     while let Some(result) = cursor.next().await {
         if let Ok(doc) = result {
             if let Ok(ban) = from_document::<Ban>(doc) {
+                user_ids.push(ban.id.user.clone());
                 bans.push(ban);
             }
         }
     }
 
-    Ok(json!(bans))
+    let mut cursor = get_collection("users")
+        .find(
+            doc! {
+                "_id": {
+                    "$in": user_ids
+                }
+            },
+            FindOptions::builder()
+                .projection(doc! {
+                    "username": 1,
+                    "avatar": 1
+                })
+                .build(),
+        )
+        .await
+        .map_err(|_| Error::DatabaseError {
+            operation: "find",
+            with: "users",
+        })?;
+
+    let mut users = vec![];
+    while let Some(result) = cursor.next().await {
+        if let Ok(doc) = result {
+            if let Ok(user) = from_document::<BannedUser>(doc) {
+                users.push(user);
+            }
+        }
+    }
+
+    Ok(json!({
+        "users": users,
+        "bans": bans
+    }))
 }
diff --git a/src/routes/servers/server_edit.rs b/src/routes/servers/server_edit.rs
index c3753963b1e9527eb4d83f2fa2dfe4586971cd21..3c5d8e86014c5e236ba44c2412b6d9ff24898b7e 100644
--- a/src/routes/servers/server_edit.rs
+++ b/src/routes/servers/server_edit.rs
@@ -2,7 +2,7 @@ use crate::notifications::events::ClientboundNotification;
 use crate::util::result::{Error, Result};
 use crate::{database::*, notifications::events::RemoveServerField};
 
-use mongodb::bson::{doc, to_document};
+use mongodb::bson::{doc, to_bson, to_document};
 use rocket_contrib::json::Json;
 use serde::{Deserialize, Serialize};
 use validator::Validate;
@@ -98,11 +98,11 @@ pub async fn req(user: User, target: Ref, data: Json<Data>) -> Result<()> {
     }
 
     if let Some(categories) = &data.categories {
-        set.insert("categories", to_document(&categories).map_err(|_| Error::DatabaseError { operation: "to_document", with: "categories" })?);
+        set.insert("categories", to_bson(&categories).map_err(|_| Error::DatabaseError { operation: "to_document", with: "categories" })?);
     }
 
     if let Some(system_messages) = &data.system_messages {
-        set.insert("system_messages", to_document(&system_messages).map_err(|_| Error::DatabaseError { operation: "to_document", with: "system_messages" })?);
+        set.insert("system_messages", to_bson(&system_messages).map_err(|_| Error::DatabaseError { operation: "to_document", with: "system_messages" })?);
     }
 
     let mut operations = doc! {};
diff --git a/src/version.rs b/src/version.rs
index 1066b72df53899205b43d8dce29631668dde2a9e..c47024c76aba3ed53d7437d10b07fb32ba3c71e7 100644
--- a/src/version.rs
+++ b/src/version.rs
@@ -1 +1 @@
-pub const VERSION: &str = "0.5.1-alpha.9";
+pub const VERSION: &str = "0.5.1-alpha.10";