Standards Docs

useBulkDeleteRecords

Delete multiple records at once (soft delete — moves them to the trash). The collection stamp is the single optimistic mechanism: `deletedAt` is stamped on every targeted entity synchronously in `onMutate`. On partial failure only the failed ids are reverted (`deletedAt: null`); on full error every stamp is reverted. The archived/grid RQ caches refresh by invalidation on success — no cache surgery, no RQ snapshots.

Delete multiple records at once (soft delete — moves them to the trash).

The collection stamp is the single optimistic mechanism: deletedAt is stamped on every targeted entity synchronously in onMutate. On partial failure only the failed ids are reverted (deletedAt: null); on full error every stamp is reverted. The archived/grid RQ caches refresh by invalidation on success — no cache surgery, no RQ snapshots.

Signature

(objectName: string, options?: UseBulkDeleteRecordsOptions | undefined): UseMutationResult<BulkDeleteResult, Error, string[]>

Examples

```tsx
const { mutate: bulkDelete, isPending } = useBulkDeleteRecords("products");

// Delete selected products
bulkDelete(["rec-123", "rec-456", "rec-789"]);

On this page