diff --git a/src/main/java/stirling/software/SPDF/controller/api/UserController.java b/src/main/java/stirling/software/SPDF/controller/api/UserController.java
index c1abbb605..aa4ae9a00 100644
--- a/src/main/java/stirling/software/SPDF/controller/api/UserController.java
+++ b/src/main/java/stirling/software/SPDF/controller/api/UserController.java
@@ -167,6 +167,21 @@ public class UserController {
@PreAuthorize("!hasAuthority('ROLE_DEMO_USER')")
@PostMapping("/updateUserSettings")
+ /**
+ * Updates the user settings based on the provided JSON payload.
+ *
+ * @param updates A map containing the settings to update. The expected structure is:
+ *
+ * - emailNotifications (optional): "true" or "false" - Enable or disable email notifications.
+ * - theme (optional): "light" or "dark" - Set the user's preferred theme.
+ * - language (optional): A string representing the preferred language (e.g., "en", "fr").
+ *
+ * Keys not listed above will be ignored.
+ * @param principal The currently authenticated user.
+ * @return A redirect string to the account page after updating the settings.
+ * @throws SQLException If a database error occurs.
+ * @throws UnsupportedProviderException If the operation is not supported for the user's provider.
+ */
public String updateUserSettings(@RequestBody Map updates, Principal principal)
throws SQLException, UnsupportedProviderException {
log.debug("Processed updates: {}", updates);