---
title: "Object storage (S3)"
description: "S3-compatible storage and Protected Storage (versioning, object lock): buckets, access keys, static websites, CORS, usage."
url: https://www.gyrohosting.com/developers/en/products/storage.html
language: en
openapi: https://www.gyrohosting.com/developers/openapi.json
api_version: 2.30.0
---

# Object storage (S3)

S3-compatible storage and Protected Storage (versioning, object lock): buckets, access keys, static websites, CORS, usage.


## How-to guides

- [Create an S3 bucket and access key](https://www.gyrohosting.com/developers/en/howto/s3-bucket.md)

## Object storage

Typed S3 storage shortcuts: buckets, access keys (secret shown once), usage, connection details.

- `GET /cloud/storage/{id}/buckets` — [GET buckets (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__buckets)
- `POST /cloud/storage/{id}/buckets` — [Create a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__buckets)
- `DELETE /cloud/storage/{id}/buckets/{bucket}` — [DELETE buckets:delete (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_delete_storage__id__buckets__bucket)
- `GET /cloud/storage/{id}/keys` — [GET access-keys (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__keys)
- `POST /cloud/storage/{id}/keys` — [POST access-keys:create (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__keys)
- `POST /cloud/storage/{id}/keys/{key}/rotate` — [POST access-keys:rotate (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__keys__key__rotate)
- `DELETE /cloud/storage/{id}/keys/{key}` — [DELETE access-keys:delete (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_delete_storage__id__keys__key)
- `GET /cloud/storage/{id}/usage` — [GET usage (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__usage)
- `POST /cloud/storage/{id}/buckets/{bucket}/rename` — [Rename a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__buckets__bucket__rename)
- `GET /cloud/storage/{id}/buckets/{bucket}/objects` — [List objects in a bucket folder](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__buckets__bucket__objects)
- `POST /cloud/storage/{id}/buckets/{bucket}/objects/upload-url` — [Presigned upload URLs](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__buckets__bucket__objects_upload_url)
- `POST /cloud/storage/{id}/buckets/{bucket}/objects/download-url` — [Presigned download URL](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__buckets__bucket__objects_download_url)
- `POST /cloud/storage/{id}/buckets/{bucket}/objects/delete` — [Delete objects](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__buckets__bucket__objects_delete)
- `POST /cloud/storage/{id}/buckets/{bucket}/folders` — [Create a folder](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_post_storage__id__buckets__bucket__folders)
- `DELETE /cloud/storage/{id}/buckets/{bucket}/folders` — [Delete a folder with its contents](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_delete_storage__id__buckets__bucket__folders)
- `GET /cloud/storage/{id}/buckets/{bucket}/folders/count` — [Count objects in a folder](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__buckets__bucket__folders_count)
- `GET /cloud/storage/{id}/connect` — [GET connect (GyroDepolama)](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__connect)
- `GET /cloud/storage/{id}/buckets/{bucket}/website` — [Static website settings of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__buckets__bucket__website)
- `PUT /cloud/storage/{id}/buckets/{bucket}/website` — [Enable / update the static website](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_put_storage__id__buckets__bucket__website)
- `DELETE /cloud/storage/{id}/buckets/{bucket}/website` — [Disable the static website](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_delete_storage__id__buckets__bucket__website)
- `GET /cloud/storage/{id}/buckets/{bucket}/cors` — [CORS rules of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_get_storage__id__buckets__bucket__cors)
- `PUT /cloud/storage/{id}/buckets/{bucket}/cors` — [Replace the CORS rules of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_put_storage__id__buckets__bucket__cors)
- `DELETE /cloud/storage/{id}/buckets/{bucket}/cors` — [Remove every CORS rule of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#typed_delete_storage__id__buckets__bucket__cors)
- `GET /cloud/storage/{id}/object-lock` — [Protected Storage: object lock summary](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageObjectLock)
- `POST /cloud/storage/{id}/object-lock/scan` — [Scan locked versions now](https://www.gyrohosting.com/developers/en/api/object-storage.md#scanStorageObjectLock)
- `GET /cloud/storage/{id}/buckets/{bucket}/versions` — [List object versions](https://www.gyrohosting.com/developers/en/api/object-storage.md#listStorageVersions)
- `DELETE /cloud/storage/{id}/buckets/{bucket}/versions` — [Permanently delete a version](https://www.gyrohosting.com/developers/en/api/object-storage.md#deleteStorageVersion)
- `POST /cloud/storage/{id}/buckets/{bucket}/versions/restore` — [Restore an older version](https://www.gyrohosting.com/developers/en/api/object-storage.md#restoreStorageVersion)
- `POST /cloud/storage/{id}/buckets/{bucket}/versions/undelete` — [Remove a delete marker](https://www.gyrohosting.com/developers/en/api/object-storage.md#undeleteStorageObject)
- `GET /cloud/storage/{id}/buckets/{bucket}/object-lock` — [Default retention of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageBucketObjectLock)
- `PUT /cloud/storage/{id}/buckets/{bucket}/object-lock` — [Set the default retention of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#setStorageBucketObjectLock)
- `GET /cloud/storage/{id}/buckets/{bucket}/objects/retention` — [Retention of an object version](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageObjectRetention)
- `PUT /cloud/storage/{id}/buckets/{bucket}/objects/retention` — [Lock an object version](https://www.gyrohosting.com/developers/en/api/object-storage.md#setStorageObjectRetention)
- `GET /cloud/storage/{id}/buckets/{bucket}/objects/legal-hold` — [Legal hold of an object version](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageObjectLegalHold)
- `PUT /cloud/storage/{id}/buckets/{bucket}/objects/legal-hold` — [Place or remove a legal hold](https://www.gyrohosting.com/developers/en/api/object-storage.md#setStorageObjectLegalHold)
- `GET /cloud/storage/{id}/buckets/{bucket}/lifecycle/noncurrent` — [Old version expiry of a bucket](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageNoncurrentExpiration)
- `PUT /cloud/storage/{id}/buckets/{bucket}/lifecycle/noncurrent` — [Set old version expiry](https://www.gyrohosting.com/developers/en/api/object-storage.md#setStorageNoncurrentExpiration)
- `GET /cloud/servers/{id}/storage-mounts` — [List object storage mounts of a server](https://www.gyrohosting.com/developers/en/api/object-storage.md#listStorageMounts)
- `POST /cloud/servers/{id}/storage-mounts` — [Mount a bucket on the server](https://www.gyrohosting.com/developers/en/api/object-storage.md#createStorageMount)
- `GET /cloud/servers/{id}/storage-mounts/{mid}` — [Get one storage mount](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageMount)
- `DELETE /cloud/servers/{id}/storage-mounts/{mid}` — [Remove a storage mount](https://www.gyrohosting.com/developers/en/api/object-storage.md#deleteStorageMount)
- `POST /cloud/servers/{id}/storage-mounts/{mid}/command` — [New install command (rotates the mount key)](https://www.gyrohosting.com/developers/en/api/object-storage.md#renewStorageMountCommand)
- `GET /cloud/storage/plans` — [List Object Storage plans](https://www.gyrohosting.com/developers/en/api/object-storage.md#listStoragePlans)
- `GET /cloud/storage` — [List storage services](https://www.gyrohosting.com/developers/en/api/object-storage.md#listStorageServices)
- `POST /cloud/storage` — [Order Object Storage (S3)](https://www.gyrohosting.com/developers/en/api/object-storage.md#createStorageServices)
- `GET /cloud/storage/{id}` — [Get a storage service](https://www.gyrohosting.com/developers/en/api/object-storage.md#getStorageService)
- `DELETE /cloud/storage/{id}` — [Cancel a storage service](https://www.gyrohosting.com/developers/en/api/object-storage.md#deleteStorageService)
