A command-line utility for managing calendar and addressbook sharing permissions on Stalwart mail server via WebDAV ACL.
Based on: stalwartlabs/stalwart#1670
- bash
- curl
# List a user's calendars
./stalwart-acl.sh list user@domain.com
# Show all properties of a calendar or addressbook
./stalwart-acl.sh dump cal user@domain.com default
./stalwart-acl.sh dump card user@domain.com default
# Grant read/write access to another user
./stalwart-acl.sh grant cal owner@domain.com default shared-user@domain.com
# Grant read-only access (use RO: prefix)
./stalwart-acl.sh grant cal owner@domain.com default RO:guest@domain.com
# Grant access to multiple users at once
./stalwart-acl.sh grant cal owner@domain.com default user1@domain.com user2@domain.com RO:viewer@domain.com
# View current ACL permissions
./stalwart-acl.sh acl cal owner@domain.com default| Variable | Description |
|---|---|
STALWART_HOST |
Your Stalwart server URL (e.g., https://mail.example.com). Required. |
STALWART_PASS |
Password for authentication. If not set, curl will prompt interactively. |
DEBUG |
Set to true to enable verbose output showing HTTP requests and responses. |
# Configure your server and credentials
export STALWART_HOST="https://mail.example.com"
export STALWART_PASS="mypassword"
# Share jay's default calendar with jane (read/write)
./stalwart-acl.sh grant cal jay default jane
# Share jay's addressbook with jane (read-only)
./stalwart-acl.sh grant card jay default RO:jane
# Debug mode to see what's happening
DEBUG=true ./stalwart-acl.sh acl cal jay defaultcal- Calendar (CalDAV)card- Addressbook (CardDAV)