Welcome to the upcoming version of the MinIO Documentation! The content on this page is under active development and may change at any time. If you can't find what you're looking for, check our legacy documentation. Thank you for your patience.

MinIO Object Retention

By default, each new write operation to a unique object name results in overwriting that object. You can configure MinIO to instead create versions of each object mutation, preserving the full history of that object. MinIO also supports Write-Once Read-Many (WORM) locking versioned objects to ensure complete immutability for a specified duration or until the lock is explicitly lifted.

Both versioning and object locking features are available only with distributed MinIO deployments.

Bucket Versioning

MinIO keeps each mutation to an object as a full “version” of that object.

Bucket with multiple versions of an object

Clients by default retrive the latest version of an object and can explicitly list and retrieve any other version in the object’s history.

WORM Object Locking

MinIO enforces Write-Once Read Many (WORM) immutability on versioned objects. Clients cannot delete a WORM-locked object until the configured locking rules expire or are explicitly lifted.

Bucket with multiple versions of an object

MinIO supports setting bucket-default or per-object WORM locking rules with either duration-based or indefinite lock expirations. MinIO object locking is feature-compatible with AWS S3 object locking.