# Download assets An AssetDownloadBatchJob should be created when you want to download and optionally transform multiple AssetFile resources. You can optionally request that a zip is created of all the transformed files. The transformationDescription in the request can be one of two types, CUSTOM or PRESET. A CUSTOM transformationDescription is a list of candidateTransformations which are evaluated in turn against each AssetFile specified in the request. If the AssetFile meets the candidateTransformation.criteria then the candidateTransformation.transformation is applied. Otherwise, the next candiate is considered. The candidateTransformation.transformation is a series of operations to apply to the AssetFile in order (e.g. resize to 200 by 100 and then covert to JPG). An empty list of operations indicates the file should be left untransformed. Putting this all together this allows you to describe a transformations such as: * Resized any image file, otherwise leave the file untransformed * Convert any image that supports transparency to PNG otherwise convert to JPG A PRESET transformationDescription is similar to a CUSTOM transformation except the transformationDescription has been predefined. These presets are currently only configurable via the Dash frontend, but can be found via a PresetTransformationSearch. Endpoint: POST /asset-download-batch-jobs Version: 2.0.0 Security: bearerToken ## Request fields (application/json): - `items` (array, required) - `items.batchItemId` (string, required) An ID provided by the caller to uniquely identify this item in the batch request This is will be used to match the relevant results in the batch result Example: "my-item-1" - `items.assetId` (string, required) The ID of the [Asset](#tag/Assets) to create a download for Example: "7af90a8b-7ccd-430f-a85d-e8614015bc47" - `items.assetFileId` (string,null) The ID of the [AssetFile](#operation/getAssetFiles) to create a download for. If null the current [AssetFile](#operation/getAssetFiles) is used. Example: "7af90a8b-7ccd-430f-a85d-e8614015bc47" - `items.outputFilename` (string,null) The filename to set in the Content-Disposition response header of the download URL. If null the original file name is used. - `items.presetParameters` (array) PresetParameters for this assetId - `transformationDescription` (any, required) - `zip` (boolean, required) Whether to combine all the output files into a zip Example: true ## Response 4XX fields (application/json): - `timestamp` (string) The datetime that the error occurred in ISO offset format Example: "2021-02-16T16:21:58.640+00:00" - `status` (integer) The HTTP status code of the error Example: 401 - `error` (string) The title of the error Example: "Unauthorized" - `message` (string) A more detailed error message - `path` (string) The path that was called which led to the error Example: "/folder-settings"