> ## Documentation Index
> Fetch the complete documentation index at: https://bunnynet-cb9733c2-fix-dd-mc-2035-volume-file-permissions.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Latest updates and improvements for Storage.

<Update label="2026-08-14" tags={["Storage","(Improvement)"]}>
  ## S3 API: virtual hosted-style URLs, conditional requests, and expanded error codes

  | Operation / Behavior | Change                                                                                                                                |
  | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
  | **URL styles**       | Virtual hosted-style URLs (`https://bucket-name.[region]-s3.storage.bunnycdn.com/key`) are now supported alongside path-style URLs.   |
  | **HeadObject**       | Returns `ETag` and supports conditional operations: `If-Match`, `If-None-Match`, `If-Modified-Since`, `If-Unmodified-Since`.          |
  | **GetObject**        | Returns `ETag` and supports the same conditional operations: `If-Match`, `If-None-Match`, `If-Modified-Since`, `If-Unmodified-Since`. |
  | **CopyObject**       | Preserves `Content-Type`, returns `ETag`, supports `x-amz-metadata-directive`, and accepts conditional copy headers.                  |
  | **Rate limiting**    | Rate-limited requests return a `SlowDown` (`503`) response with a `Retry-After` header.                                               |
</Update>

<Update label="2026-07-30" tags={["Storage","(New)"]}>
  ## Read-only password support for S3 API

  Bunny Storage's S3-compatible API now supports read-only access keys. Use a dedicated read-only secret access key for S3 connections that should only have read permissions, adding an extra layer of access control to your storage zones. [Learn more](/storage/s3)
</Update>

<Update label="2026-07-09" tags={["Storage","(New)"]}>
  ## S3 API 'Public Preview' launched

  S3-Compatible API is now available for all! We have also added a new S3 Storage Zone region: Sydney (SYD) & Uploadpart now supports Content-MD5 validation. [Learn more](/storage/s3)
</Update>

<Update label="2026-06-09" tags={["Storage","(New)"]}>
  ## Root directory deletion support

  The Storage Edge API DELETE endpoint now supports deleting the root directory (`/`) of a storage zone. By default, root deletion is blocked as a safety guard. Pass `allowRootDelete=true` as a query parameter or request header to bypass this protection. [Learn more](/storage/http#deleting-the-root-directory)
</Update>

<Update label="2026-05-19" tags={["Storage","(Improvement)"]}>
  ## S3 API 'Closed Preview'

  Added support for 4 new S3 Storage Zone regions: London (UK), Stockholm (SE), Los Angeles (LA) and Johannesburg (JH).
</Update>

<Update label="2026-04-07" tags={["Storage","(Improvement)"]}>
  ## S3 API 'Closed Preview'

  CopyObject now handles source objects up to 5 GB and plays nicely with multipart uploads, CORS works across pre-signed URLS.
</Update>

<Update label="2026-03-24" tags={["Storage","(Improvement)"]}>
  ## S3 API 'Closed Preview'

  Added presigned URL support for S3 via the AWS CLI presign command.
</Update>
