Perform a mass action

Describes how to perform a mass action through the REST API.

Using this API method, you send a multipart/form-data request containing a .csv file with data about the mass action you want to perform. Zuora returns a key and then asynchronously processes the mass action. You can use the key to get details about the result of the mass action.

If you want to use this operation to perform the Mass Payment Upload (MPU) mass action, see Mass Payment Upload for more information.

header Parameters
string <= 255 characters

Specify a unique idempotency key if you want to perform an idempotent POST or PATCH request. Do not use this header in other request types.

With this header specified, the Zuora server can identify subsequent retries of the same request using this value, which prevents the same operation from being performed multiple times by accident.


Include the Accept-Encoding: gzip header to compress responses as a gzipped file. It can significantly reduce the bandwidth required for a response.

If specified, Zuora automatically compresses responses that contain over 1000 bytes of data, and the response contains a Content-Encoding header with the compression algorithm so that your client can decompress it.


Include the Content-Encoding: gzip header to compress a request. With this header specified, you should upload a gzipped file for the request payload instead of sending the JSON payload.


The value is in the Bearer {token} format where {token} is a valid OAuth token generated by calling Create an OAuth token.

string <= 64 characters

A custom identifier for tracing the API call. If you set a value for this header, Zuora returns the same value in the response headers. This header enables you to associate your system process identifiers with Zuora API calls, to assist with troubleshooting in the event of an issue.

The value of this field must use the US-ASCII character set and must not include any of the following characters: colon (:), semicolon (;), double quote ("), and quote (').


An entity ID. If you have Zuora Multi-entity enabled and the OAuth token is valid for more than one entity, you must use this header to specify which entity to perform the operation in. If the OAuth token is only valid for a single entity, or you do not have Zuora Multi-entity enabled, you do not need to set this header.


Comma separated IDs. If you have Zuora Multi-Org enabled, you can use this header to specify which orgs to perform the operation in. If you do not have Zuora Multi-Org enabled, you should not set this header.

The IDs must be a sub-set of the user's accessible orgs. If you specify an org that the user does not have access to, the operation fails.

If the header is not set, the operation is performed in scope of the user's accessible orgs.

Request Body schema: multipart/form-data
string <binary>

File containing data about the mass action you want to perform. The file requirements are the same as when uploading a file through the Mass Updater in the Zuora UI. The file must be a .csv file or a zipped .csv file.

The maximum file size is 4 MB.

The data in the file must be formatted according to the mass action type you want to perform.


Container for the following fields. You must format this parameter as a JSON object.

  • actionType (string, Required) - Type of mass action you want to perform. The following mass actions are supported: UpdateAccountingCode, CreateRevenueSchedule, UpdateRevenueSchedule, DeleteRevenueSchedule, ImportFXRate, and MPU.

  • checksum (string) - An MD5 checksum that is used to validate the integrity of the uploaded file. The checksum is a 32-character string.


Internal Server Error


Request Errors

Request samples
curl -X POST -H "Authorization: Bearer f21f017e4724445d8647b1f0de7ed6f1" -F "file=@CreateRevenueSchedules.csv" -F "params="{\"actionType\": \"CreateRevenueSchedule\"}" ""
Response samples
  • "bulkKey": "402892f04c97b89a014c97bb30a50003",
  • "success": true