SieveSystemInterpreter
SieveSystemInterpreter
Section titled “SieveSystemInterpreter”Configures the system-level Sieve script interpreter settings and limits.
This object can be configured from the WebUI under Settings › Sieve › System Interpreter
Fields
Section titled “Fields”defaultFromAddress
Section titled “defaultFromAddress”Type:
Expression· default:{"else":"'MAILER-DAEMON@' + system('domain')"}Default email address to use for the from field in email notifications sent from a Sieve script
Available variables:
MtaRcptToVariable.
defaultFromName
Section titled “defaultFromName”Type:
Expression· default:{"else":"'Automated Message'"}Default name to use for the from field in email notifications sent from a Sieve script
Available variables:
MtaRcptToVariable.
messageIdHostname
Section titled “messageIdHostname”Type:
String?Override the default local hostname to use when generating a Message-Id header
duplicateExpiry
Section titled “duplicateExpiry”Type:
Duration· default:"7d"Default expiration time for IDs stored by the duplicate extension from trusted scripts
noCapabilityCheck
Section titled “noCapabilityCheck”Type:
Boolean· default:trueIf enabled, language extensions can be used without being explicitly declared using the require statement
defaultReturnPath
Section titled “defaultReturnPath”Type:
Expression· requiredDefault return path to use in email notifications sent from a Sieve script
Available variables:
MtaRcptToVariable.
dkimSignDomain
Section titled “dkimSignDomain”Type:
Expression· default:{"else":"system('domain')"}Which domain’s DKIM signatures to use when signing the email notifications sent from a Sieve script
Available variables:
MtaRcptToVariable.
maxCpuCycles
Section titled “maxCpuCycles”Type:
UnsignedInt· default:1048576· min: 1Maximum number CPU cycles a script can use
maxNestedIncludes
Section titled “maxNestedIncludes”Type:
UnsignedInt· default:5· min: 1Maximum number of nested includes
maxOutMessages
Section titled “maxOutMessages”Type:
UnsignedInt· default:5Maximum number of outgoing messages
maxReceivedHeaders
Section titled “maxReceivedHeaders”Type:
UnsignedInt· default:50· min: 1Maximum number of received headers
maxRedirects
Section titled “maxRedirects”Type:
UnsignedInt· default:3Maximum number of redirects
maxVarSize
Section titled “maxVarSize”Type:
UnsignedInt· default:52428800· min: 1Maximum size of a variable
JMAP API
Section titled “JMAP API”The SieveSystemInterpreter singleton is available via the urn:stalwart:jmap capability.
x:SieveSystemInterpreter/get
Section titled “x:SieveSystemInterpreter/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 sysSieveSystemInterpreterGet permission.
curl -X POST https://mail.example.com/api \ -H 'Authorization: Bearer $TOKEN' \ -H 'Content-Type: application/json' \ -d '{ "methodCalls": [ [ "x:SieveSystemInterpreter/get", { "ids": [ "singleton" ] }, "c1" ] ], "using": [ "urn:ietf:params:jmap:core", "urn:stalwart:jmap" ] }'x:SieveSystemInterpreter/set
Section titled “x:SieveSystemInterpreter/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 sysSieveSystemInterpreterUpdate permission.
curl -X POST https://mail.example.com/api \ -H 'Authorization: Bearer $TOKEN' \ -H 'Content-Type: application/json' \ -d '{ "methodCalls": [ [ "x:SieveSystemInterpreter/set", { "update": { "singleton": { "messageIdHostname": "updated value" } } }, "c1" ] ], "using": [ "urn:ietf:params:jmap:core", "urn:stalwart:jmap" ] }'stalwart-cli wraps the same JMAP calls. See the CLI reference for installation, authentication, and general usage.
stalwart-cli get SieveSystemInterpreterUpdate
Section titled “Update”stalwart-cli update SieveSystemInterpreter --field messageIdHostname='updated value'Nested types
Section titled “Nested types”Expression
Section titled “Expression”A conditional expression with match rules and a default value.
Type:
ExpressionMatch[]List of conditions and their corresponding results
Type:
String· requiredElse condition
ExpressionMatch
Section titled “ExpressionMatch”A single condition-result pair in an expression.
Type:
String· requiredIf condition
Type:
String· requiredThen clause
Expression references
Section titled “Expression references”The following expression contexts are used by fields on this page:
MtaRcptToVariable(Variables)