---
editLink: false
lastUpdated: false
---

[@salesforce/b2c-tooling-sdk](../../../modules.md) / [operations/code](../index.md) / uploadCartridges

# Function: uploadCartridges()

> **uploadCartridges**(`instance`, `cartridges`, `options?`): `Promise`\<`void`\>

Defined in: [packages/b2c-tooling-sdk/src/operations/code/deploy.ts:146](https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/blob/e7c16f1ae423da0aa47b3e10be88f9770b53619b/packages/b2c-tooling-sdk/src/operations/code/deploy.ts#L146)

Uploads cartridges to an instance via WebDAV.

This is a low-level upload function that:
1. Creates a zip archive of the cartridges
2. Uploads it to WebDAV
3. Unzips on the server
4. Cleans up the temporary zip file

Requires `instance.config.codeVersion` to be set.

## Parameters

### instance

[`B2CInstance`](../../../instance/classes/B2CInstance.md)

B2C instance to upload to

### cartridges

[`CartridgeMapping`](../interfaces/CartridgeMapping.md)[]

Cartridge mappings to upload

### options?

[`UploadOptions`](../interfaces/UploadOptions.md)

## Returns

`Promise`\<`void`\>

## Throws

Error if code version not set or upload fails

## Example

```typescript
const cartridges = findCartridges('./cartridges');
await uploadCartridges(instance, cartridges);
```
