--- title: "Bulk Write Rows" url: https://docs.catalyst.zoho.com/en/sdk/python/v1/cloud-scale/data-store/bulk-write-rows/ description: "This page describes the method to write rows in bulk from a table in the Data Store in your Python application with sample code snippets." last_updated: 2025-11-11T06:41:26Z service: Cloud Scale type: general related_links: - name: "Data Store Help" url: /en/cloud-scale/help/data-store/introduction - name: "SDK Scopes" url: /en/sdk/python/v1/sdk-scopes --- # Bulk Write Rows Catalyst enables you to perform bulk write jobs on a specific table present in the [Data Store](https://docs.catalyst.zoho.com/en/cloud-scale/help/data-store/introduction). The bulk write operation can fetch thousands of records from a CSV file uploaded in [Stratus](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/introduction/) and insert them in a specific table. The table is referred to by its unique [`table ID`](https://docs.catalyst.zoho.com/en/cloud-scale/help/data-store/tables/) that is generated by Catalyst during creation. The column in which the write operation must be performed is referred to by its unique [column ID](https://docs.catalyst.zoho.com/en/cloud-scale/help/data-store/columns/#column-characteristics). > **Note:** To perform a bulk write operation, you must [first upload](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/upload-object/) the required data as a CSV file in Stratus.
Parameter Name Data Type Definition
`tableID` String A **Mandatory** parameter. Will hold the ID of the table to which data has to be written.
`find_by` String A **Mandatory** parameter. Will hold the name of the column to which data has to be written.
`fk_mapping` Array A **Mandatory** parameter. Will hold the local_column and reference_column details.
`operation` String A **Mandatory** parameter. The value of this parameter should be insert.
o`bject_details` JSON Object
  • `bucket_name`: The [name of the bucket](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/buckets/name-bucket/#ideal-practices-to-name-a-bucket), where the object is stored.
  • `object_key`: Can contain the [path](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/introduction/#path) or the [Object URL](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/objects/introduction/#object-url) of the required object.
  • `version_id`: If the bucket has [versioning](https://docs.catalyst.zoho.com/en/cloud-scale/help/stratus/stratus-config/general-settings/#versioning) enabled, then the specific versionID of the file will be stored in this attribute.
Copy the SDK snippet below to perform a bulk write job on a particular table. To know more about the component instance `datastore_service` used below, please refer to [this help section](https://docs.catalyst.zoho.com/en/sdk/python/v1/cloud-scale/data-store/get-component-instance/). ```python datastore_service = app.datastore() bulk_write = datastore_service.table("Sample").bulk_write() object_details = { "bucket_name": "zcstratus12345", "object_key": "sample.csv", "version_id": "64832huidksnd83" } #create bulk write job bulk_write_job = bulk_write.create_job(object_details, { "find_by": "S1", "fk_mapping": [ {"local_column": "EmployeeID", "reference_column": "EmpId"}, {"local_column": "DepartmentID", "reference_column": "DepId"} ], "operation": "insert" }) #get bulk write status status = bulk_write.get_status('6759000000167103') #get bulk write result result = bulk_write.get_result('6759000000167103') ``` > **Note:** A maximum of **100,000 rows** can be written at one time. > **Info :** Refer to the [SDK Scopes table](https://docs.catalyst.zoho.com/en/sdk/python/v1/sdk-scopes) to determine the required permission level for performing the above operation.