| name | b2c-webdav |
| description | List, upload, download, and manage files on B2C Commerce instances via WebDAV. Use this skill whenever the user needs to upload files to IMPEX directories, download exports from an instance, list remote files, create or delete directories, or zip/unzip files on the server. Also use when managing file transfers to sandboxes or browsing instance file systems -- even if they just say 'upload a file to the instance' or 'check what's in the IMPEX folder'. |
B2C WebDAV Skill
Use the b2c CLI plugin to perform WebDAV file operations on Salesforce B2C Commerce instances. This includes listing files, uploading, downloading, and managing files across different WebDAV roots.
Tip: If b2c is not installed globally, use npx @salesforce/b2c-cli instead (e.g., npx @salesforce/b2c-cli webdav ls).
Configuration & Authentication
The CLI auto-discovers the target instance and credentials from SFCC_* environment variables, dw.json in the current or parent directories, ~/.mobify, package.json, and configuration plugins. Flags like --server, --client-id, --client-secret, --username, and --password are usually unnecessary — only pass them to override what's auto-detected.
Run b2c setup inspect to see the resolved configuration and which source provided each value (use --json for scripting, --unmask to reveal secrets). For precedence rules and troubleshooting, see the b2c-cli:b2c-config skill.
WebDAV Roots
The --root flag specifies the WebDAV directory:
impex (default) - Import/Export directory
temp - Temporary files
cartridges - Code cartridges
realmdata - Realm data
catalogs - Product catalogs
libraries - Content libraries
static - Static resources
logs - Application logs
securitylogs - Security logs
Examples
List Files
b2c webdav ls
b2c webdav ls src/instance
b2c webdav ls --root=cartridges
b2c webdav ls --root=impex --json
Download Files
b2c webdav get src/instance/export.zip
b2c webdav get src/instance/export.zip -o ./downloads/export.zip
b2c webdav get customerror.log --root=logs
b2c webdav get src/instance/data.xml -o -
Upload Files
b2c webdav put ./local-file.zip src/instance/
b2c webdav put ./my-cartridge.zip --root=cartridges
Create Directories
b2c webdav mkdir src/instance/my-folder
b2c webdav mkdir my-folder --root=temp
Delete Files
b2c webdav rm src/instance/old-export.zip
b2c webdav rm old-file.txt --root=temp
Delete Cartridges
To delete cartridges from a code version, use the cartridges root with the path format {code-version}/{cartridge-name}:
b2c webdav rm v25_1_0/app_mysite --root=cartridges
b2c webdav rm v25_1_0/app_mysite --root=cartridges
b2c webdav rm v25_1_0/int_myintegration --root=cartridges
b2c webdav ls v25_1_0 --root=cartridges
Important: The path is {code-version}/{cartridge-name}, not /cartridges/{code-version}/.... The --root=cartridges (or -r cartridges) flag sets the WebDAV root.
Zip/Unzip Remote Files
b2c webdav zip src/instance/my-folder
b2c webdav unzip src/instance/archive.zip
More Commands
See b2c webdav --help for a full list of available commands and options in the webdav topic.
Related Skills
b2c-cli:b2c-logs - Filtered log retrieval, search, and real-time tailing (preferred for log exploration)
b2c-cli:b2c-code - Higher-level code deployment (preferred for cartridge upload)
b2c-cli:b2c-job - Import/export site archives