--- warning: DO NOT CHANGE THIS MANUALLY, THIS IS GENERATED BY https://github.com/duckdb/community-extensions repository, check README there title: webdavfs excerpt: | DuckDB Community Extensions Allows reading and writing files over WebDAV protocol extension: name: webdavfs description: Allows reading and writing files over WebDAV protocol version: '2026102301' language: C++ build: cmake license: MIT excluded_platforms: "windows_amd64_rtools;windows_amd64_mingw;windows_amd64;wasm_threads;wasm_eh;wasm_mvp;linux_amd64_musl;" requires_toolchains: "vcpkg" maintainers: - onnimonni vcpkg_commit: 'dd3097e305afa53f7b4312371f62058d2e665320' repo: github: midwork-finds-jobs/duckdb-webdavfs andium: 359f4c05601798855c07954cf560a6e3beb6fc10 variegata: 0259545780249ba6c9656b1cfca9a57168cfb63d ref: a32c98ef9dd21b00b24990d71c4493273f60ae14 docs: hello_world: | -- Load the extension INSTALL webdavfs FROM community; LOAD webdavfs; -- Authenticate with any WebDAV server eg nextcloud or owncloud CREATE SECRET my_storagebox ( TYPE WEBDAV, USERNAME 'u123456', PASSWORD 'password', SCOPE 'webdav://webdav-server.example.com/' ); -- or with Hetzner specific Storage Box CREATE SECRET my_storagebox ( TYPE WEBDAV, USERNAME 'u123456', PASSWORD 'password', SCOPE 'storagebox://u123456' ); -- Convert local csv into parquet and upload it using WebDAV COPY ( FROM 'local.csv' ) TO 'storagebox://u123456/remote.parquet'; -- Read The uploaded parquet file using WebDAV SELECT * FROM 'storagebox://u123456/remote.parquet'; extended_description: | DuckDB WebDAVfs extension enables seamless integration with WebDAV servers, allowing users to read from and write to remote file systems directly within DuckDB. This extension supports authentication mechanisms compatible with various WebDAV services, including Hetzner Storage Boxes. WebDAV is nice because it builds on top of HTTP/HTTPS protocols. This enables DuckDB to leverage http 1.1 range feature to only download parts of files when needed, making it efficient for working with large datasets stored remotely. Hetzner Storage Boxes are a popular choice for WebDAV storage being one of the cheapest storage options available. See: https://github.com/midwork-finds-jobs/duckdb-webdavfs/blob/main/README.md for more examples and details. extension_star_count: 1 extension_star_count_pretty: 1 extension_download_count: 702 extension_download_count_pretty: 702 image: '/images/community_extensions/social_preview/preview_community_extension_webdavfs.png' layout: community_extension_doc --- ### Compatibility Matrix This table covers all DuckDB releases that have not reached [end-of-life](https://duckdb.org/release_calendar), including LTS releases, and shows the 2 most recent patch releases of each. Older patch releases are not listed, but the extension may be available for them as well.
| Platform | 1.4.4 | 1.4.5 | 1.5.5 | 1.5.6 | 2.0.0 | | :--- | :---: | :---: | :---: | :---: | :---: | | Linux AMD64 | ✅ | ❌ | ✅ | ❌ | ✅ | | Linux ARM64 | ✅ | ❌ | ✅ | ❌ | ✅ | | macOS AMD64 | ✅ | ❌ | ✅ | ❌ | ✅ | | macOS ARM64 | ✅ | ❌ | ✅ | ❌ | ✅ | | Windows AMD64 | ❌ | ❌ | ❌ | ❌ | ❌ | | Windows ARM64 | ❌ | ❌ | ❌ | ❌ | ❌ | | WebAssembly | ❌ | ❌ | ❌ | ❌ | ❌ | ### Installing and Loading ```sql INSTALL {{ page.extension.name }} FROM community; LOAD {{ page.extension.name }}; ``` {% if page.docs.hello_world %} ### Example ```sql {{ page.docs.hello_world }}``` {% endif %} {% if page.docs.extended_description %} ### About {{ page.extension.name }} {{ page.docs.extended_description }} {% endif %} ### Added Functions This extension does not add any functions. ### Overloaded Functions This extension does not add any function overloads. ### Added Types This extension does not add any types. ### Added Settings | name | description | input_type | scope | aliases | typed_value | |-------------------------------|-------------------------------------------------------------------------------------------------|------------|--------|---------|-------------| | temp_directory | Set the directory to which temporary files are written. | VARCHAR | GLOBAL | [] | post.db.tmp | | webdav_debug_logging | Enable debug logging for WebDAV operations | BOOLEAN | GLOBAL | [] | false | | webdav_max_retries | Maximum number of retries for failed WebDAV operations | BIGINT | GLOBAL | [] | 3 | | webdav_streaming_threshold_mb | File size threshold in MB for streaming uploads (files larger than this are streamed from disk) | BIGINT | GLOBAL | [] | 50 |