WebDav
Configures WebDAV protocol settings including property limits and locking.
This object can be configured from the WebUI under Settings › Network › WebDAV
Fields
enableAssistedDiscovery
Type:
Boolean· default:trueEnables assisted discovery of WebDAV shared collections by modifying PROPFIND requests to the root collection. Requests with depth 1 are automatically changed to depth 2, which may cause compatibility issues with some clients that expect the original behavior.
maxLockTimeout
Type:
Duration· default:"1h"Specifies the maximum duration for which a lock can be held on a resource
maxLocks
Type:
UnsignedInt· default:10Specifies the maximum number of locks that a user can create on a resource
deadPropertyMaxSize
Type:
Size?· default:1024Specifies the maximum size of a WebDAV dead property value that the server will accept
livePropertyMaxSize
Type:
Size· default:250Specifies the maximum size of a WebDAV live property value that the server will accept
requestMaxSize
Type:
Size· default:"25mb"Determines the maximum XML size of a WebDAV request that the server will accept
maxResults
Type:
UnsignedInt· default:2000Specifies the maximum number of results that a WebDAV query can return
JMAP API
The WebDav singleton is available via the urn:stalwart:jmap capability.
x:WebDav/get
This is a standard Foo/get method as defined in RFC 8620, Section 5.1.
For singletons, the ids argument should be the literal singleton (or null to return the single instance).
This method requires the sysWebDavGet permission.
curl -X POST https://mail.example.com/api \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"methodCalls": [
[
"x:WebDav/get",
{
"ids": [
"singleton"
]
},
"c1"
]
],
"using": [
"urn:ietf:params:jmap:core",
"urn:stalwart:jmap"
]
}'
x:WebDav/set
This is a standard Foo/set method as defined in RFC 8620, Section 5.3.
For singletons, only the update argument with id singleton is accepted; create and destroy arguments are rejected.
This method requires the sysWebDavUpdate permission.
curl -X POST https://mail.example.com/api \
-H 'Authorization: Bearer $TOKEN' \
-H 'Content-Type: application/json' \
-d '{
"methodCalls": [
[
"x:WebDav/set",
{
"update": {
"singleton": {
"enableAssistedDiscovery": true
}
}
},
"c1"
]
],
"using": [
"urn:ietf:params:jmap:core",
"urn:stalwart:jmap"
]
}'
CLI
stalwart-cli wraps the same JMAP calls. See the CLI reference for installation, authentication, and general usage.
Fetch
stalwart-cli get web-dav
Update
stalwart-cli update web-dav --field description='Updated'