diff --git a/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java b/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java
index 003bb2d0d297348ab20d07dc1b7004da3db9b1bb..abe3c0d65c82a675742ab1d130f6c2114c4b251b 100644
--- a/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java
+++ b/src/main/java/de/thm/arsnova/service/DefaultEntityServiceImpl.java
@@ -239,6 +239,19 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService
 		eventPublisher.publishEvent(new AfterDeletionEvent<>(this, entity));
 	}
 
+	@Override
+	@PreFilter(value = "hasPermission(filterObject, 'delete')", filterTarget = "entities")
+	public void delete(final Iterable<T> entities) {
+		for (T entity : entities) {
+			prepareDelete(entity);
+			eventPublisher.publishEvent(new BeforeDeletionEvent<>(this, entity));
+		}
+		repository.deleteAll(entities);
+		for (T entity : entities) {
+			eventPublisher.publishEvent(new AfterDeletionEvent<>(this, entity));
+		}
+	}
+
 	/**
 	 * This method can be overridden by subclasses to do additional entity related actions before deletion.
 	 *
diff --git a/src/main/java/de/thm/arsnova/service/EntityService.java b/src/main/java/de/thm/arsnova/service/EntityService.java
index 9158e4f5b61cc74931805d03d651e44d2784a9cf..708612479555aa8e093861dc5a605a5010b53809 100644
--- a/src/main/java/de/thm/arsnova/service/EntityService.java
+++ b/src/main/java/de/thm/arsnova/service/EntityService.java
@@ -62,4 +62,7 @@ public interface EntityService<T extends Entity> {
 
 	@PreAuthorize("hasPermission(#entity, 'delete')")
 	void delete(T entity);
+
+	@PreFilter(value = "hasPermission(filterObject, 'delete')", filterTarget = "entities")
+	void delete(Iterable<T> entities);
 }