diff --git a/src/main/java/de/thm/arsnova/controller/SessionController.java b/src/main/java/de/thm/arsnova/controller/SessionController.java
index ecdb8b5f77a42980993451b6b5c001153d521bbb..525bd65ddea5469aed9cca1da4301d66c3749d3a 100644
--- a/src/main/java/de/thm/arsnova/controller/SessionController.java
+++ b/src/main/java/de/thm/arsnova/controller/SessionController.java
@@ -127,6 +127,15 @@ public class SessionController extends AbstractController {
 		return newSession;
 	}
 
+	@RequestMapping(value = "/{sessionkey}", method = RequestMethod.PUT)
+	@ResponseBody
+	public final Session updateSession(
+			@PathVariable final String sessionkey,
+			@RequestBody final Session session
+	) {
+		return sessionService.updateSession(sessionkey, session);
+	}
+
 	@RequestMapping(value = "/", method = RequestMethod.GET)
 	@ResponseBody
 	public final List<Session> getSessions(
diff --git a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
index 58f5ba49e22c348115c2e3dbab9635cfaaacc44f..3a345212482a41440f3b43a145deb115efa8c4de 100644
--- a/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
+++ b/src/main/java/de/thm/arsnova/dao/CouchDBDao.java
@@ -1091,6 +1091,24 @@ public class CouchDBDao implements IDatabaseDao {
 		return null;
 	}
 
+	@Override
+	public Session updateSession(Session session) {
+		try {
+			Document s = this.database.getDocument(session.get_id());
+			s.put("name", session.getName());
+			s.put("shortName", session.getShortName());
+			s.put("active", session.isActive());
+			this.database.saveDocument(s);
+			session.set_rev(s.getRev());
+
+			return session;
+		} catch (IOException e) {
+			LOGGER.error("Could not lock session {}", session);
+		}
+
+		return null;
+	}
+
 	@Override
 	public void deleteSession(Session session) {
 		try {
diff --git a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
index 56490bb40f9fb133a75ba90f557ea8a805b6103f..d853c310fd5bd7d9d8b15c5c7532484bed8aae1d 100644
--- a/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
+++ b/src/main/java/de/thm/arsnova/dao/IDatabaseDao.java
@@ -128,6 +128,8 @@ public interface IDatabaseDao {
 
 	List<String> getActiveUsers(int timeDifference);
 
+	Session updateSession(Session session);
+
 	void deleteSession(Session session);
 
 	List<Question> getLectureQuestions(User user, Session session);
diff --git a/src/main/java/de/thm/arsnova/services/ISessionService.java b/src/main/java/de/thm/arsnova/services/ISessionService.java
index 7efe5e0491ac75935814e5b3af7c07b2822590ef..7a54db07f45c19267d88556d2cc7fab0e87df456 100644
--- a/src/main/java/de/thm/arsnova/services/ISessionService.java
+++ b/src/main/java/de/thm/arsnova/services/ISessionService.java
@@ -50,5 +50,7 @@ public interface ISessionService {
 
 	Session joinSession(String keyword, UUID socketId);
 
+	Session updateSession(String sessionkey, Session session);
+
 	void deleteSession(String sessionkey, User user);
 }
diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java
index 88c5fe8212187d9f97c9af603a5df0d24081be11..884d8553440168ff35e43311a063ee936c99c49b 100644
--- a/src/main/java/de/thm/arsnova/services/SessionService.java
+++ b/src/main/java/de/thm/arsnova/services/SessionService.java
@@ -236,6 +236,19 @@ public class SessionService implements ISessionService {
 		return databaseDao.lockSession(session, lock);
 	}
 
+	@Override
+	@Authenticated
+	public Session updateSession(String sessionkey, Session session) {
+		Session s = databaseDao.getSession(sessionkey);
+		User user = userService.getCurrentUser();
+
+		if (!s.isCreator(user)) {
+			throw new ForbiddenException();
+		}
+
+		return databaseDao.updateSession(session);
+	}
+
 	@Override
 	@Authenticated
 	public void deleteSession(String sessionkey, User user) {
diff --git a/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java b/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
index 140f36b37ee1e9be01e463ec4c45f5a20ab422b6..e09f81ce475f0bede28b8e7378da6ac95d4ea840 100644
--- a/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
+++ b/src/test/java/de/thm/arsnova/dao/StubDatabaseDao.java
@@ -393,6 +393,12 @@ public class StubDatabaseDao implements IDatabaseDao {
 		return null;
 	}
 
+	@Override
+	public Session updateSession(Session session) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
 	@Override
 	public void deleteSession(Session session) {
 		// TODO Auto-generated method stub