---
title: "Bulk Operations"
description: "Bulk Operations"
url: "https://www.contentstack.com/docs/developers/sdks/content-management-sdk/python/reference/bulk-operations"
product: "Contentstack"
doc_type: "guide"
audience:
  - developers
  - admins
version: "current"
last_updated: "2026-09-04"
---

# Bulk Operations

## Bulk Operations

Perform [bulk operations](/docs/headless-cms/bulk-publish-entries), such as publish, unpublish, delete, or move, on entries and assets in a single action.

## delete

The Delete entries and assets in bulk request allows you to delete multiple entries and assets at the same time.

```
data = {
       "entries":[{
           "content_type":"content_type_uid",
           "uid":"entry_uid",
           "locale":"locale"
       },{
           "content_type":"content_type_uid",
           "uid":"entry_uid",
           "locale":"entry_locale"
       }
       ],
       "assets": [{
           "uid": "uid"
       }]
   }
import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().delete(data).json()
```

The request body

## publish

The Publish entries and assets in bulk method allows you to publish multiple entries and assets at the same time.

```
data = {
           "entries":[
               {
                   "uid":"entry_uid",
                   "content_type":"ct0",
                   "version":"5",
                   "locale":"en-us"
               },
               {
                   "uid":"entry_uid",
                   "content_type":"ct0",
                   "version":"1",
                   "locale":"en-us"
               },
               {
                   "uid":"entry_uid",
                   "content_type":"ct5",
                   "version":"2",
                   "locale":"en-us"
               }
           ],
           "locales":[
               "en-us"
           ],
           "environments":[
               "env1"
           ],
           "rules":{
               "approvals":"true/false"
           },
           "scheduled_at":"scheduled_time",
           "publish_with_reference":true
           }
import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().publish(data).json()
```

The request body

## unpublish

The Unpublish entries and assets in bulk method allows you to unpublish multiple entries and assets at the same time.

```
data = {
       "entries": [
           {
           "content_type": "news",
           "uid": "entry_uid",
           "locale": "en-us"
           },
           {
           "content_type": "article",
           "uid": "entry_uid",
           "locale": "en-us"
           }
       ],
       "workflow": {
           "workflow_stage": {
           "comment": "String Comment",
           "due_date": "Thu Dec 01 2018",
           "notify": false,
           "uid": "workflow_uid",
           "assigned_to": [
               {
               "uid": "user_uid",
               "name": "user_name",
               "email": "user_email_ID"
               }
           ],
           "assigned_by_roles": [
               {
               "uid": "role_uid",
               "name": "Content Manager"
               }
           ]
           }
       },
       "locales": [
           "en-us"
       ],
       "environments": [
           "env_uid"
       ]
       }
import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().unpublish(data).json()
```

The request body

## update

The update method allows you to make changes in the existing entries/assets in the stack.

```
data = {
       "entries": [{
           "content_type": "content_type_uid1",
           "uid": "entry_uid",
           "locale": "en-us"
       }, {
           "content_type": "content_type_uid2",
           "uid": "entry_uid",
           "locale": "en-us"
       }],
       "workflow": {
           "workflow_stage": {
               "comment": "Workflow-related Comments",
               "due_date": "Thu Dec 01 2018",
               "notify": false,
               "uid": "workflow_stage_uid",
               "assigned_to": [{
                   "uid": "user_uid",
                   "name": "user_name",
                   "email": "user_email_id"
               }],
               "assigned_by_roles": [{
                   "uid": "role_uid",
                   "name": "role_name"
               }]
           }
       }
   }
import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().update(data).json()
```

The request body

## add_items

The add\_items method adds multiple entries and assets to a specified release for bulk publishing and coordinated deployment.

```
Example:

data = {
    "release": "release_uid"
    "action": "publish",
    "locale": ["en-us", "hi-in"]
    "reference": true
    "items": [
        {
        "uid": "entry_uid",
        "content_type_uid": "content_type_uid"
        }
    ]
}

import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().add_items(data).json()
```

Data required to add the entries

## update_items

The update\_items method updates all release items (entries and assets) to their latest versions before deployment, ensuring the most current content is published.

```
Example:
data = {
    "release": "release_uid",
    "items": [
        {
            "uid": "entry_uid",
            "locale": "en-us"
        },
        {
            "uid": "entry_uid",
            "locale": "en-us",
            "variant_id": "entry_variant_id"
        }
    ]
    or
    [ '$all' ]
}
import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().update_items(data).json()
```

Data required to update the items

## job_status

The job\_status method retrieves the current status of a bulk job, including detailed progress and nested reference publishing metadata.

```
Example:
import contentstack_management
client = contentstack_management.Client(authtoken='your_authtoken')
result = client.stack('api_key').bulk_operation().job_status('job_uid').json()
```

UID of the bulk operation of job

## Bulk Operations | Python Management SDK | Contentstack

Bulk Operations let you publish, unpublish, delete, or move entries and assets in a single action, in the Python Management SDK.