--- title: "Upload an Object to a Bucket" url: https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/upload-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-09-08T11:07:33Z service: Cloud Scale type: general related_links: - name: "Create a Bucket" url: /en/cloud-scale/help/stratus/buckets/create-bucket/ - name: "Object Versioning" url: /en/cloud-scale/help/stratus/stratus-config/general-settings/#versioning - name: "Java SDK" url: /en/sdk/java/v1/cloud-scale/stratus/upload-object/ - name: "JavaScript SDK" url: /en/sdk/javascript/v1/cloudscale/stratus/upload-object/ - name: "Python SDK" url: /en/sdk/python/v1/cloud-scale/stratus/upload-object/ - name: "iOS SDK" url: /en/sdk/ios/v2/cloud-scale/stratus/upload-object/ - name: "Android SDK" url: /en/sdk/android/v2/cloud-scale/stratus/upload-object/ - name: "Flutter SDK" url: /en/sdk/flutter/v1/cloud-scale/stratus/upload-object/ - name: "REST API" url: /en/api/code-reference/cloud-scale/stratus/upload-object/#UploadObject --- # Upload an Object to a Bucket An object can be data in any format. You can upload it directly from your local system using a directory structure customizable per your requirement. > **Note:** When you upload an object, make sure its name is unique to its current path. **Using the Console** To upload an object or a group of objects: 1. Click the **Upload** button and choose **Upload Folder** if you wish to upload an entire folder with all of its objects, or **Upload File** if you wish to upload a select group of objects or just one object. ![catalyst_stratus_upload_choice](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_upload_choice.webp) 2. If you choose to upload: Select the required folder from your local system and click **Upload**. ![catalyst_startus_upload_folder](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_startus_upload_folder.webp) The folder will be uploaded with all its contents. ![catalyst_stratus_upload_folder_action_complete](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_upload_folder_action_complete.webp) Click the uploaded directory to confirm it contains all the objects it contained in the local system. ![catalyst_stratus_all_uploaded_folder_action](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_all_uploaded_folder_action.webp) **File** Select the file, or files from your local system to upload, and click **Open**. ![catalyst_stratus_object_upload_file_inprog](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_object_upload_file_inprog.webp) The files will be uploaded. ![catalyst_stratus_object_uploaded_console](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_object_uploaded_console.webp) ### Upload Object Using Path You can also upload objects to the bucket using the **Create Path** option. ![catalyst_stratus_create_path_button_highlit](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_create_path_button_highlit.webp) > **Note:** The path option is best used when you wish to store one or more objects in a particular path in the bucket. You can find out more about the path from this [help documentation](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/introduction/#path). 1. Click the **Create Path** button. ![catalyst_stratus_showcase](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_showcase.webp) 2. Provide your required path using the forward slash '`/`' special character as the directory separator. ![catalyst_stratus_slash_path_show](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_slash_path_show.webp) 3. Click the **upload-icon** and select the required object in your local system and click **Open** to upload. ![catalyst_stratus_object_upload_in_path_show](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_object_upload_in_path_show.webp) The entered path will be created and can be navigated in a manner you would a conventional directory. ![catalyst_stratus_obj_created_in_path](https://catalyst-docs-development.zohostratus.in/images/help/stratus/catalyst_stratus_obj_created_in_path.webp) **Using SDK** The following SDK method enables you to upload an object to the bucket: **Server SDK** **Java SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/java/v1/cloud-scale/stratus/upload-object/) for more information on this SDK method. **Ensure the following packages are imported:** ```java import com.zc.component.stratus.beans.ZCPutObjectOptions; import java.nio.file.Path; import java.nio.file.Files; import java.nio.file.StandardCopyOption; import java.io.*; ``` ```java InputStream file =new FileInputStream("filePath"); Boolean res = bucket.putObject("objectName", file); System.out.println(res); ``` **Node.js SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/nodejs/v2/cloud-scale/stratus/upload-object/) for more information on this SDK method. ```javascript // create a read stream for upload the object const file = fs.createReadStream("file_path"); // call the upload method const res = await bucket.putObject("object_name", file); console.log(res); ``` **Python SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/python/v1/cloud-scale/stratus/upload-object/) for more information on this SDK method. ```python file = open('file_path','rb') res = bucket.put_object('object_name',file) print(res) ``` **Client & Mobile SDK** **Web SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/web/v4/cloud-scale/stratus/upload-object/) for more information on this SDK method. ```javascript const putObject = stratus.putObject("{object_name}","{File}", "{options}", "{processCallback}"); const putObjectStart = putObject.start(); // to start the request const putObjectAbort = putObject.abort(); // to abort the request ``` **iOS SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/ios/v2/cloud-scale/stratus/upload-object/) for more information on this SDK method. ```bash bucketInstance.upload( filePath : "{file_path}", fileName : "{file_name}", shouldCompress : true ) { error in if let error = error { print("Error : \( error )") return } print("Uploaded Successfully") } ``` **Android SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/android/v2/cloud-scale/stratus/upload-object/) for more information on this SDK method. ```bash bucketIntance.uploadObject("/Desktop", "Helplinecard.jpeg", true, { println(" >> Object Upload Success -$it") }, { println(" >> Object Upload Failed -$it") }, progress = { bytesWritten, contentLength, percentage -> println("Percentage: $percentage") } ) ``` **Flutter SDK** > **Note:** Visit this [help document](https://docs.catalyst.zoho.com/en/sdk/flutter/v1/cloud-scale/stratus/upload-object/) for more information on this SDK method. ```bash try{ XFile? imageFile = await pickImage(ImageSource.gallery); var bucket = stratus.bucket("testing"); var response = await bucket.uploadObject(imageFile!.path); print("Upload Status: ${response.statusCode}"); } on ZCatalystException catch (ex) { print(ex.toString()); } ``` > **Note:** Stratus constantly scans for malware in the background. When the scans encounter malware, the user, admin, super admin, and project owner will be notified of the malware, and the uploaded object is immediately and permanently deleted from the bucket.