# Handle Stored Objects -------------------------------------------------------------------------------- title: "Manage a Stored Object" description: "Stratus is a robust cloud storage solution powered by Catalyst. You can store data of any format type in the form of buckets and objects." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/manage-object/manage-stored-object/" service: "Cloud Scale" related: - Create a Bucket (/en/cloud-scale/help/stratus/buckets/create-bucket/) - Upload an Object (/en/cloud-scale/help/stratus/objects/upload-object/) - Object Versioning (/en/cloud-scale/help/stratus/stratus-config/general-settings/#versioning) - Java SDK (/en/sdk/java/v1/cloud-scale/stratus/overview/) - Node.js SDK (/en/sdk/nodejs/v2/cloud-scale/stratus/overview/) - Python SDK (/en/sdk/python/v1/cloud-scale/stratus/overview/) - Web SDK (/en/sdk/web/v4/cloud-scale/stratus/overview/) - iOS SDK (/en/sdk/ios/v2/cloud-scale/stratus/overview/) - Android SDK (/en/sdk/android/v2/cloud-scale/stratus/overview/) - Flutter SDK (/en/sdk/flutter/v2/cloud-scale/stratus/overview/) - REST API (/en/api/code-reference/cloud-scale/stratus/get-all-buckets/#GetAllBuckets) -------------------------------------------------------------------------------- # Manage a Stored Object Click any of the stored objects in your bucket. <br /> You will be able to perform the following operations on the object: * View general details, such as the *name*, *size*, *modified time*, and *format* of the object. * You can access the object directly using the secure {{%link href="/en/cloud-scale/help/stratus/objects/introduction/#object-url" %}}Object URL{{%/link%}}. This URL can be copied and used in your code to satisfy your requirement. <!--* You can enable {{%link href="/en/cloud-scale/help/stratus/stratus-config/general-settings/#caching" %}}Caching{{%/link%}} for the bucket; a **Caching URL** will be generated by Stratus. This URL can also be copied. When you access objects using this URL, they will be cached. * You can click the **Purge Cache** button to purge the stored cache of the object.--> * If you have enabled {{%link href="/en/cloud-scale/help/stratus/stratus-config/general-settings/#versioning" %}}Versioning{{%/link%}}, you can view all the versions of the object present in the bucket. * {{%link href="/en/cloud-scale/help/stratus/objects/manage-object/manage-stored-object/#provide-custom-meta-data-for-an-object" %}}Provide Custom Meta Data{{%/link%}} for the object. * {{%link href="/en/cloud-scale/help/stratus/objects/manage-object/download-object/" %}}Download the object{{%/link%}} * {{%link href="/en/cloud-scale/help/stratus/objects/manage-object/delete-object/" %}}Delete the Object{{%/link%}} ### Provide Custom Meta Data for an Object To provide meta data for your object: {{%note%}}{{%bold%}}Note:{{%/bold%}} The maximum size limit of characters allowed for the overall metadata is {{%bold%}}2047{{%/bold%}} characters. The character count used to determine the size limit also includes the colon “{{%badge%}}:{{%/badge%}}” special character used to define the key value pair.{{%/note%}} {{%tabs%}} {{%tab "Using the Console" %}} 1. Click the required object. <br /> 2. Click the **Add Meta** button. <br /> 3. The meta data you provide will be rendered and applied to the object in a **JSON key value format**. Click **Save** once you have completed adding the required data. <br /> Your custom meta data will be added to the object. <br /> {{%/tab%}} {{%tab "Using Catalyst SDK" %}} {{%tabs%}} {{%tab "Java SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/java/v1/cloud-scale/stratus/put-object-meta/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} **Ensure the following packages are imported:** {{%code class="language-java"%}} import org.json.simple.JSONObject; {{%/code%}} {{%code class="language-java"%}} HashMap&lt;String, String&gt; objectMeta = new HashMap&lt;&gt;(); objectMeta.put("key1", "value1"); objectMeta.put("key2", "value2"); JSONObject res = object.putMeta(objectMeta); System.out.println(res); {{%/code%}} {{%/tab%}} {{%tab "Node.js SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/nodejs/v2/cloud-scale/stratus/put-object-meta/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-javascript"%}} const objectMeta = { "key1": "value1" , "key2": "value2" }; const objMeta = await objectIns.putMeta(objectMeta); console.log(objMeta); {{%/code%}} {{%/tab%}} {{%tab "Python SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/python/v1/cloud-scale/stratus/put-object-meta/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-python"%}} res = object_ins.put_meta({'author': 'Amelia Burrows'}) print(res) {{%/code%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%/tabs%}} ### Edit Custom Meta Data To edit the custom meta data: 1. Click **Modify Meta**. <br /> 2. Make the required changes and click **Save**. <br /> The changes will be applied. <br /> -------------------------------------------------------------------------------- title: "Download an Object From Bucket" description: "Stratus is a robust cloud storage solution powered by Catalyst. You can store data of any format type in the form of buckets and objects." last_updated: "2026-03-18T07:41:08.534Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/manage-object/download-object/" service: "Cloud Scale" related: - Create a Bucket (/en/cloud-scale/help/stratus/buckets/create-bucket/) - Upload an Object (/en/cloud-scale/help/stratus/objects/upload-object/) - Object Caching (/en/cloud-scale/help/stratus/stratus-config/general-settings/#caching) - Object Versioning (/en/cloud-scale/help/stratus/stratus-config/general-settings/#versioning) - Java SDK (/en/sdk/java/v1/cloud-scale/stratus/download-object/) - Node.js SDK (/en/sdk/nodejs/v2/cloud-scale/stratus/download-object/) - Python SDK (/en/sdk/python/v1/cloud-scale/stratus/download-object/) - Web SDK (/en/sdk/web/v4/cloud-scale/stratus/download-object/) - iOS SDK (/en/sdk/ios/v2/cloud-scale/stratus/download-object/) - Android SDK (/en/sdk/android/v2/cloud-scale/stratus/download-object/) - Flutter SDK (/en/sdk/flutter/v2/cloud-scale/stratus/download-object/) - REST API (/en/api/code-reference/cloud-scale/stratus/download-object/#DownloadObject) -------------------------------------------------------------------------------- # Download an Object From a Bucket To download an object from the bucket: {{%tabs%}} {{%tab "Using the Console" %}} 1. Click or select the required object. <br /> 2. Click **Download**. <br /> 3. Click **Save** in your system prompt. <br /> The object will be downloaded to your local system. You can also download the object using the **Download** button present in the object details view. <br /> {{%/tab%}} {{%tab "Using Catalyst SDK" %}} {{%tabs%}} {{%tab "Server SDKs" %}} {{%tabs%}} {{%tab "Java SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/java/v1/cloud-scale/stratus/download-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} **Ensure the following packages are imported** {{%code class="language-java"%}} import com.zc.component.stratus.beans.ZCGetObjectOptions; import java.nio.file.Path; import java.nio.file.Files; import java.nio.file.StandardCopyOption; import java.io.*; {{%/code%}} {{%code class="language-java"%}} InputStream dataStream = bucket.getObject("objectName"); // download the object to your local machine Path path = Path.of("file_path"); // specify a path to store the downloaded object Files.copy(dataStream, path, StandardCopyOption.REPLACE_EXISTING); {{%/code%}} {{%/tab%}} {{%tab "Node.js SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/nodejs/v2/cloud-scale/stratus/download-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-javascript"%}} const res = await bucket.getObject("objectName"); // download the object to local machine const files = fs.createWriteStream('filePath'); res.on('data', (data) => { files.write(data) }); {{%/code%}} {{%/tab%}} {{%tab "Python SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/python/v1/cloud-scale/stratus/download-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-python"%}} res = bucket.get_object('object_name') # download the object to local machine file = open('file_path','wb') file.write(res) {{%/code%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%tab "Mobile SDKs" %}} {{%tabs%}} {{%tab "iOS SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/ios/v2/cloud-scale/stratus/download-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-bash"%}} objectInstance.download(fromCache : true) { result in switch result { case.success(let url): do { let data = Data(contentsOf : url) DispatchQueue.main.sync { self.imageView.image = UIImage(date : data) } } catch { print("Error : \( error )") } case.error(let error): print("Error : \( error )") } } {{%/code%}} {{%/tab%}} {{%tab "Android SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/android/v2/cloud-scale/stratus/download-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-bash"%}} bucketInstance.getObject("SunSet.jpeg", "2823000000044005", //Replace this with your Folder ID and File ID { object->object.download({println("File download success ${it.available()}")}, {println("File download failed $it")}) {{%/code%}} {{%/tab%}} {{%tab "Flutter SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/flutter/v2/cloud-scale/stratus/download-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-bash line-numbers"%}} try { ZCatalystBucket bucket = stratus.bucket("testing"); var(response, object) = await bucket.getObject("SunSet.jpeg"); final downloadsDir = await getExternalStorageDirectory(); final filePath = downloadsDir !.absolute.path; var fileResponse = await object.download( pathToDownload : filePath, onProgress : (bytesWritten, contentLength, percentage) { print("Downloaded Percentage: $percentage"); }, ); print("Download Status: ${fileResponse.statusCode}"); OpenFile.open(filePath + '/SunSet.jpeg'); } on ZCatalystException catch (ex) { print(ex.toString()); } {{%/code%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%/tabs%}} -------------------------------------------------------------------------------- title: "Delete an Object From a Bucket" description: "Stratus is a robust cloud storage solution powered by Catalyst. You can store data of any format type in the form of buckets and objects." last_updated: "2026-03-18T07:41:08.535Z" source: "https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/manage-object/delete-object/" service: "Cloud Scale" related: - Create a Bucket (/en/cloud-scale/help/stratus/buckets/create-bucket/) - Upload an Object (/en/cloud-scale/help/stratus/objects/upload-object/) - Object Caching (/en/cloud-scale/help/stratus/stratus-config/general-settings/#caching) - Object Versioning (/en/cloud-scale/help/stratus/stratus-config/general-settings/#versioning) - Java SDK (/en/sdk/java/v1/cloud-scale/stratus/delete-objects/) - Node.js SDK (/en/sdk/nodejs/v2/cloud-scale/stratus/delete-objects/) - Python SDK (/en/sdk/python/v1/cloud-scale/stratus/delete-objects/) - Web SDK (/en/sdk/web/v4/cloud-scale/stratus/delete-object/) - iOS SDK (/en/sdk/ios/v2/cloud-scale/stratus/delete-object/) - Android SDK (/en/sdk/android/v2/cloud-scale/stratus/delete-object/) - Flutter SDK (/en/sdk/flutter/v2/cloud-scale/stratus/delete-object/) - REST API (/en/api/code-reference/cloud-scale/stratus/delete-objects/#DeleteObject) -------------------------------------------------------------------------------- # Delete an Object From a Bucket To delete an object from the bucket: {{%tabs%}} {{%tab "Using the Console" %}} 1. Select the required object. <br /> 2. Click **Delete**. <br /> 3. Click **Delete** in the prompt as well. <br /> The delete action will be scheduled, and it will take a short while before the operation is rendered in the console. Delete operations can be performed on multiple objects and on multiple paths in the same manner. You can also use the **Delete** button present in the object details view to delete the object. <br /> {{%/tab%}} {{%tab "Using Catalyst SDK" %}} {{%tabs%}} {{%tab "Server SDKs" %}} {{%tabs%}} {{%tab "Java SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/java/v1/cloud-scale/stratus/delete-objects/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} **Ensure the following packages are imported:** {{%code class="language-java"%}} import org.json.simple.JSONObject; {{%/code%}} {{%code class="language-java"%}} int ttl = 200; JSONObject deleteRes = bucket.deleteObject("objectName", "versionId", ttl); System.out.println(deleteRes); {{%/code%}} {{%/tab%}} {{%tab "Node.js SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/nodejs/v2/cloud-scale/stratus/delete-objects/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-javascript"%}} const res = await bucket.deleteObject("objectName"); console.log(res); {{%/code%}} {{%/tab%}} {{%tab "Python SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/python/v1/cloud-scale/stratus/delete-objects/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-python"%}}delete_res = bucket.delete_object('object_name') print(delete_res) {{%/code%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%tab "Client & Mobile SDKs" %}} {{%tabs%}} {{%tab "Web SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/web/v4/cloud-scale/stratus/delete-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-javascript"%}} // Delete an object const deleteObject = await bucket.deleteObject("objectName"); {{%/code%}} {{%/tab%}} {{%tab "iOS SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/ios/v2/cloud-scale/stratus/delete-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-bash"%}}objectInstance.delete() { error in if let error = error { print("Error : \\( error )") return } print("Deleted Successfully") }{{%/code%}} {{%/tab%}} {{%tab "Android SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/android/v2/cloud-scale/stratus/delete-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-bash"%}} bucketInstance.getObject("SunSet.jpeg", "2823000000044005", //Replace this with your Object Name and Object ID { object -> object.delete( { println("Object Deletion Success.") }, { println("Failed to delete the object. $it") } ) {{%/code%}} {{%/tab%}} {{%tab "Flutter SDK" %}} {{%note%}}{{%bold%}}Note:{{%/bold%}} Visit this {{%link href="/en/sdk/flutter/v2/cloud-scale/stratus/delete-object/" %}}help document{{%/link%}} for more information on this SDK method.{{%/note%}} {{%code class="language-bash"%}} try { ZCatalystBucket bucket = stratus.bucket("testing"); var (response, objects, _) = await bucket.getObjects(maxKeys: 5, prefix: 'trip'); var response = await bucket.deleteObjects(objects); print("Delete Objects: ${response.statusCode}"); } on ZCatalystException catch (ex) { print(ex.toString()); } {{%/code%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%/tabs%}} {{%/tab%}} {{%/tabs%}} {{%note%}}{{%bold%}}Note:{{%/bold%}} When you perform a delete operation on an object, and if it is the {{%bold%}}only object{{%/bold%}} present in the particular path, then the {{%bold%}}entire path will be deleted{{%/bold%}}. An empty path cannot exist in a bucket.{{%/note%}}