diff --git a/src/routes/channel.rs b/src/routes/channel.rs
index 134e82e5aa7824d3ded7e44b1b82d29664abe432..7ca58f5b6fa7239fb20421ff3f773789ee316678 100644
--- a/src/routes/channel.rs
+++ b/src/routes/channel.rs
@@ -155,6 +155,15 @@ pub fn send_message(user: User, target: Channel, message: Json<SendMessage>) ->
 		None
 	) {
 		Ok(_) => {
+			if target.channel_type == ChannelType::DM as u8 {
+				let col = database::get_collection("channels");
+				col.update_one(
+					doc! { "_id": target.id.clone() },
+					doc! { "active": true },
+					None
+				).unwrap();
+			}
+
 			websocket::queue_message(
 				get_recipients(&target),
 				json!({
diff --git a/src/routes/mod.rs b/src/routes/mod.rs
index cb5e0b39da3441b6b4d704534875d8f26ea8793d..bdedabb317987f70816cc3a2baff67cb85abd04a 100644
--- a/src/routes/mod.rs
+++ b/src/routes/mod.rs
@@ -10,5 +10,5 @@ pub fn mount(rocket: Rocket) -> Rocket {
 		.mount("/api", routes![ root::root ])
 		.mount("/api/account", routes![ account::create, account::verify_email, account::resend_email, account::login, account::token ])
 		.mount("/api/users", routes![ user::me, user::user, user::lookup, user::dms, user::dm, user::get_friends, user::get_friend, user::add_friend, user::remove_friend ])
-		.mount("/api/channels", routes![ channel::channel, channel::delete, channel::messages, channel::send_message, channel::edit_message, channel::delete_message ])
+		.mount("/api/channels", routes![ channel::channel, channel::delete, channel::messages, channel::get_message, channel::send_message, channel::edit_message, channel::delete_message ])
 }