diff --git a/services/identity/src/database/one_time_keys.rs b/services/identity/src/database/one_time_keys.rs
--- a/services/identity/src/database/one_time_keys.rs
+++ b/services/identity/src/database/one_time_keys.rs
@@ -396,13 +396,14 @@
     }
   }
 
-  /// Deletes all data for a user's device from one-time keys table
+  /// Deletes all data for a single user's device from one-time keys table.
+  /// For multiple devices, see [`DatabaseClient::delete_otks_table_rows_for_user_device`].
   pub async fn delete_otks_table_rows_for_user_device(
     &self,
     user_id: &str,
     device_id: &str,
   ) -> Result<(), Error> {
-    use crate::constants::one_time_keys_table::*;
+    use crate::constants::one_time_keys_table::{self, *};
 
     let content_otk_primary_keys = self
       .get_one_time_keys(user_id, device_id, OlmAccountType::Content, None)
@@ -427,7 +428,7 @@
 
     batch_write(
       &self.client,
-      NAME,
+      one_time_keys_table::NAME,
       delete_requests,
       ExponentialBackoffConfig::default(),
     )
@@ -437,7 +438,26 @@
     Ok(())
   }
 
-  /// Deletes all data for a user from one-time keys table
+  /// Deletes all data for multiple devices from one-time keys table.
+  /// For single device, see [`DatabaseClient::delete_otks_table_rows_for_user_device`].
+  pub async fn delete_otks_table_rows_for_user_devices(
+    &self,
+    user_id: &str,
+    device_ids: &[String],
+  ) -> Result<(), Error> {
+    for device_id in device_ids {
+      self
+        .delete_otks_table_rows_for_user_device(user_id, device_id)
+        .await?;
+    }
+
+    Ok(())
+  }
+
+  /// Deletes all data for a user from one-time keys table. This function
+  /// is basing on current device list. It must contain all devices for which
+  /// OTKs are supposed to be deleted. To explicitly provide device IDs,
+  /// use [`DatabaseClient::delete_otks_table_rows_for_user_devices`].
   pub async fn delete_otks_table_rows_for_user(
     &self,
     user_id: &str,
@@ -448,13 +468,12 @@
       return Ok(());
     };
 
-    for device_id in device_list_row.device_ids {
-      self
-        .delete_otks_table_rows_for_user_device(user_id, &device_id)
-        .await?;
-    }
-
-    Ok(())
+    self
+      .delete_otks_table_rows_for_user_devices(
+        user_id,
+        &device_list_row.device_ids,
+      )
+      .await
   }
 }