Nextcloud & WebDAV
Any WebDAV share, including Nextcloud and ownCloud.
Fields
| Field | Notes |
|---|---|
| Server URL | The full DAV endpoint, including the trailing slash. Required |
| Username | The account the share belongs to |
| Password | Use an app password where the server offers one. Stored encrypted, never returned to the browser |
| Folder within the share | Optional, to scope this storage to a subfolder |
| Timeout | Seconds; defaults to 30 |
Getting the Server URL right
This is the field that goes wrong, because the address you browse in a web UI is not the DAV endpoint.
Nextcloud
https://cloud.example.com/remote.php/dav/files/USERNAME/
Replace USERNAME with the account's login name — lowercase, exactly as stored — and keep the trailing slash. Nextcloud shows this address under Settings → Personal → Files → WebDAV, which is the reliable way to get it.
ownCloud
https://cloud.example.com/remote.php/webdav/
Older ownCloud installs use the shorter webdav path rather than Nextcloud's dav/files/USERNAME form.
Generic WebDAV
Whatever your server documents as its DAV root. Apache mod_dav, rclone serve webdav, Synology, Box and others each have their own; there is no universal path.
App passwords
Where the server supports them, use one instead of the account password.
In Nextcloud: Settings → Personal → Security → Devices & sessions → Create new app password. Name it for this site, copy the generated value, and paste it into the Password field.
Two reasons this matters:
- Two-factor authentication. If the account has 2FA enabled, the account password will not authenticate over WebDAV at all — an app password is the only thing that works.
- Revocation. An app password can be revoked individually without changing the account password or disturbing anything else that uses it.
Capabilities
WebDAV sits in the middle of the capability range — more capable than an object store, less than SFTP.
| Capability | WebDAV |
|---|---|
| True directories | Yes — collections are real |
| Server-side rename | Yes, via MOVE |
| Range read | Usually, depending on the server |
| Directory size | Reported as a capped estimate where the server supplies it |
| Chmod | No — WebDAV has no POSIX permission model |
| Symlinks | No |
Where range reads are unavailable, media in the lightbox buffers from the start rather than scrubbing. See Storage for the full capability model.
Performance
WebDAV is a chatty protocol: each folder listing is a PROPFIND round trip, and each file operation is at least one request. Over a link with meaningful latency this is noticeable.
Two things help:
- Start searches from a deep folder. Recursive search means a
PROPFINDper folder — see Search. - Raise the timeout on the storage record for large transfers. Thirty seconds is fine for browsing and short of it for a large upload.
Troubleshooting
| Symptom | Likely cause |
|---|---|
| Test Connection fails with an authentication error | The account password on a 2FA-enabled account. Use an app password |
| Test connects, but the drive is empty | The Server URL points at the web UI, not the DAV endpoint. It must contain remote.php for Nextcloud/ownCloud |
| "Not found" on every path | A missing trailing slash on the Server URL, or a wrong username in the dav/files/USERNAME/ segment |
| Intermittent failures on large files | Timeout too low, or the server's own upload limit. Raise the timeout first |
| Works for browsing, fails for uploads | The share is read-only for that account, or the server enforces a quota |
More general guidance: Troubleshooting.
Practical notes
- HTTPS only. WebDAV sends credentials with every request. A plain-HTTP endpoint hands them to anyone on the path.
- One storage, several places. A Nextcloud account with several folders worth naming wants one storage and several places, not several storages — the password stays in one row.
- Scope with the folder field. Setting Folder within the share makes that subfolder the drive's root; nothing above it is reachable through this storage.