Skip to content

@salesforce/b2c-tooling-sdk / clients / WebDavClient

Class: WebDavClient ​

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:72

Constructors ​

Constructor ​

new WebDavClient(hostname, auth, options?): WebDavClient

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:84

Creates a new WebDAV client.

Parameters ​

hostname ​

string

WebDAV hostname (may differ from API hostname)

auth ​

AuthStrategy

Authentication strategy to use for requests

options? ​

WebDavClientOptions

Optional configuration including middleware registry and TLS dispatcher

Returns ​

WebDavClient

Methods ​

buildUrl() ​

buildUrl(path): string

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:100

Builds the full URL for a WebDAV path.

Parameters ​

path ​

string

Path relative to /webdav/Sites/

Returns ​

string

Full URL


copy() ​

copy(source, destination, overwrite): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:379

Copies a file or directory.

Parameters ​

source ​

string

Source path relative to /webdav/Sites/

destination ​

string

Destination path relative to /webdav/Sites/

overwrite ​

boolean = true

Whether to overwrite if destination exists (default: true)

Returns ​

Promise<void>

Example ​

ts
await client.copy('Cartridges/v1/cartridge', 'Cartridges/v2/cartridge');

delete() ​

delete(path): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:321

Deletes a file or directory.

Parameters ​

path ​

string

Path to delete

Returns ​

Promise<void>

Throws ​

Error if the path doesn't exist (404) or deletion fails

Example ​

ts
await client.delete('Cartridges/v1/old-cartridge');

exists() ​

exists(path): Promise<boolean>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:425

Checks if a path exists.

Parameters ​

path ​

string

Path to check

Returns ​

Promise<boolean>

true if exists, false otherwise


get() ​

get(path): Promise<ArrayBuffer>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:302

Downloads a file.

Parameters ​

path ​

string

Path to download

Returns ​

Promise<ArrayBuffer>

File content as ArrayBuffer

Example ​

ts
const content = await client.get('Cartridges/v1/app.zip');

mkcol() ​

mkcol(path): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:261

Creates a directory (collection).

Parameters ​

path ​

string

Path to create

Returns ​

Promise<void>

Throws ​

Error if creation fails (except 405 which means already exists)

Example ​

ts
await client.mkcol('Cartridges/v1');

move() ​

move(source, destination, overwrite): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:404

Moves (renames) a file or directory.

Parameters ​

source ​

string

Source path relative to /webdav/Sites/

destination ​

string

Destination path relative to /webdav/Sites/

overwrite ​

boolean = true

Whether to overwrite if destination exists (default: true)

Returns ​

Promise<void>

Example ​

ts
await client.move('Cartridges/v1/old-name', 'Cartridges/v1/new-name');

propfind() ​

propfind(path, depth): Promise<PropfindEntry[]>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:342

Lists directory contents.

Parameters ​

path ​

string

Directory path

depth ​

PROPFIND depth (0, 1, or 'infinity')

"0" | "1" | "infinity"

Returns ​

Promise<PropfindEntry[]>

Array of entries in the directory

Example ​

ts
const entries = await client.propfind('Cartridges');
for (const entry of entries) {
  console.log(entry.displayName, entry.isCollection);
}

put() ​

put(path, content, contentType?): Promise<void>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:280

Uploads a file.

Parameters ​

path ​

string

Destination path

content ​

File content as Buffer, Blob, or string

string | Buffer<ArrayBufferLike> | Blob

contentType? ​

string

Optional content type header

Returns ​

Promise<void>

Example ​

ts
await client.put('Cartridges/v1/app.zip', zipBuffer, 'application/zip');

request() ​

request(path, init?): Promise<Response>

Defined in: packages/b2c-tooling-sdk/src/clients/webdav.ts:119

Makes a raw WebDAV request.

Parameters ​

path ​

string

Path relative to /webdav/Sites/

init? ​

RequestInit

Fetch init options

Returns ​

Promise<Response>

Response from the server

Released under the Apache-2.0 License.