Skip to content

createWebDavProviderFactory

function createWebDavProviderFactory(options?: WebDavProviderOptions): ProviderFactory;

Defined in: src/providers/web/WebDavProvider.ts:119

Creates a WebDAV provider factory.

Talks to any RFC 4918 server: Nextcloud, ownCloud, sabre/dav, Apache mod_dav, IIS WebDAV, etc. PROPFIND drives directory listings, GET supports byte-range resume on download, and PUT handles uploads. Server-side COPY is exposed via the capability set. Authentication is per-connection from profile.password.

ParameterTypeDescription
optionsWebDavProviderOptionsOptional id, base path, secure flag, fetch, streaming policy.

ProviderFactory

Provider factory suitable for createTransferClient({ providers: [...] }).

import { createTransferClient, createWebDavProviderFactory, uploadFile } from "@zero-transfer/sdk";
const client = createTransferClient({
providers: [createWebDavProviderFactory({
secure: true,
basePath: "/remote.php/dav/files/alice",
})],
});
await uploadFile({
client,
localPath: "./contracts/2026.pdf",
destination: {
path: "/Documents/Contracts/2026.pdf",
profile: {
host: "cloud.example.com",
provider: "webdav",
username: "alice",
password: { env: "NEXTCLOUD_APP_PASSWORD" },
},
},
});