diff --git a/src/api/ruma_wrapper/axum.rs b/src/api/ruma_wrapper/axum.rs
index 1cfc36b035a1c3f54d641027c3b6e667c87db394..f1df87b6039e85c61e8a025a01bb06b060a2c49b 100644
--- a/src/api/ruma_wrapper/axum.rs
+++ b/src/api/ruma_wrapper/axum.rs
@@ -132,7 +132,7 @@ async fn from_request(req: Request<axum::body::Body>, _state: &S) -> Result<Self
 					"Unknown access token.",
 				))
 			},
-			(AuthScheme::AccessToken | AuthScheme::AccessTokenOptional, Token::Appservice(info)) => {
+			(AuthScheme::AccessToken, Token::Appservice(info)) => {
 				let user_id = query_params
 					.user_id
 					.map_or_else(
@@ -156,9 +156,10 @@ async fn from_request(req: Request<axum::body::Body>, _state: &S) -> Result<Self
 
 				(Some(user_id), None, None, Some(*info))
 			},
-			(AuthScheme::None | AuthScheme::AppserviceToken, Token::Appservice(info)) => {
-				(None, None, None, Some(*info))
-			},
+			(
+				AuthScheme::None | AuthScheme::AccessTokenOptional | AuthScheme::AppserviceToken,
+				Token::Appservice(info),
+			) => (None, None, None, Some(*info)),
 			(AuthScheme::AccessToken, Token::None) => {
 				return Err(Error::BadRequest(ErrorKind::MissingToken, "Missing access token."));
 			},