diff --git a/src/main/java/de/thm/arsnova/services/ISessionService.java b/src/main/java/de/thm/arsnova/services/ISessionService.java
index 9f3bb3942980e6678bbd78d2a7756bb01e8959d3..2d6cf3bba4aa8418e81d7cb06ad1ec6616e06a71 100644
--- a/src/main/java/de/thm/arsnova/services/ISessionService.java
+++ b/src/main/java/de/thm/arsnova/services/ISessionService.java
@@ -27,5 +27,6 @@ public interface ISessionService {
 	public Session getSession(String keyword);
 	public Feedback getFeedback(String keyword);
 	public boolean postFeedback(String keyword, int value);
+	public boolean sessionKeyAvailable(String keyword);
 	
 }
\ No newline at end of file
diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java
index 23969d7105200dc095e28ff05d9d33c6bcf3c771..68daacad612cb19d6f78455ab001313983b17300 100644
--- a/src/main/java/de/thm/arsnova/services/SessionService.java
+++ b/src/main/java/de/thm/arsnova/services/SessionService.java
@@ -31,6 +31,8 @@ import org.springframework.security.core.Authentication;
 import org.springframework.security.core.context.SecurityContextHolder;
 import org.springframework.security.core.userdetails.User;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Isolation;
+import org.springframework.transaction.annotation.Transactional;
 
 import com.fourspaces.couchdb.Database;
 import com.fourspaces.couchdb.Document;
@@ -160,6 +162,15 @@ public class SessionService implements ISessionService {
 		return true;
 	}
 
+	@Override
+	@Transactional(isolation=Isolation.READ_COMMITTED)
+	public boolean sessionKeyAvailable(String keyword) {
+		View view = new View("session/by_keyword");
+		ViewResults results = database.view(view);
+		
+		return ! results.containsKey(keyword);
+	}
+	
 	private String getSessionId(String keyword) {
 		View view = new View("session/by_keyword");
 		view.setKey(URLEncoder.encode("\"" + keyword + "\""));