Developer Preview — This project is in active development. APIs may change. Provide feedback
Skip to content

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

Class: WebDavClient

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

Constructors

Constructor

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

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

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

Returns

WebDavClient

Methods

buildUrl()

buildUrl(path): string

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

Builds the full URL for a WebDAV path.

Parameters

path

string

Path relative to /webdav/Sites/

Returns

string

Full URL


delete()

delete(path): Promise<void>

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

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:357

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:284

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:243

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');

propfind()

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

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

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:262

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:111

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

All rights reserved.