Sieve Extensions

Created
2000-11
Last Updated
2024-10-15
Available Formats

XML

HTML

TXT

Registries Included Below

Sieve Extensions

Reference
[RFC 5228]
Available Formats

CSV
Range Registration Procedures
vendor-controlled (name begins with "vnd.") First Come First Served
IETF-controlled (no "vnd." prefix) Standards track or IESG-approved experimental RFC
Capability name Description RFC number Contact address Registration date
body Provides a test for matching against the the body of the message being processed [RFC 5173] [Sieve_discussion_list]
comparator-* (anything starting with "comparator-") adds the indicated comparator for use with the :comparator argument [RFC 4790][RFC 5228] (Sieve base spec) [Sieve_discussion_list]
convert adds a new Sieve test and action that enable Sieve scripts to perform data conversions on the message being delivered. [RFC 6558] [Sieve_discussion_list]
copy [RFC 3894] [Jutta_Degener]
date The "date" extension gives Sieve the ability to test date and time values. [RFC 5260] [Sieve_discussion_list]
duplicate Adds test 'duplicate' that can be used to test whether a particular message is a duplicate, i.e., whether a copy of it was seen before by the delivery agent that is executing the Sieve script. [RFC 7352] [Sieve_discussion_list] 2014-06-30
editheader Adds actions 'addheader' and 'deleteheader' that modify the header of the message being processed [RFC 5293] [Sieve_discussion_list]
enclose adds the "enclose" action for enclosing a message with a wrapper. [RFC 5703] [Sieve_discussion_list]
encoded-character changes the interpretation of strings to allow arbitrary octets and Unicode characters to be represented using US-ASCII [RFC 5228] (Sieve base spec) [Sieve_discussion_list]
enotify adds the 'notify' action for notifying user about the received message. It also provides two new tests: valid_notify_method checks notification URIs for validity; notify_method_capability can check recipients capabilities. [RFC 5435] [Sieve_discussion_list]
envelope adds the 'envelope' test for testing the message transport sender and recipient address [RFC 5228] (Sieve base spec) [Sieve_discussion_list]
envelope-deliverby The "envelope-deliverby" extension extends the envelope test to allow checking of information associated with the Deliver-By ESMTP extension defined in [RFC 2852]. [RFC 6009] [Sieve_discussion_list]
envelope-dsn The "envelope-dsn" extension extends the envelope test to allow checking of information associated with the DSN ESMTP extension defined in [RFC 3461]. [RFC 6009] [Sieve_discussion_list]
environment The "environment" extension provides a new environment test that can be used to implement scripts that behave differently when moved from one system to another or otherwise operated in different contexts. [RFC 5183] [Sieve_discussion_list]
ereject adds the 'ereject' action for refusing delivery of a message. The refusal should happen as early as possible (e.g. at the protocol level) and might not preserve the exact reason for refusal if it contains non-US-ASCII text. [RFC 5429] [Sieve_discussion_list]
extlists Adds the ":list" match type to certain Sieve tests, and the ":list" argument to the "redirect" action. The ":list" match type changes tests to match values against values stored in one or more externally stored lists. The ":list" argument to the redirect action changes the redirect action to forward the message to email addresses stored in the externally stored list. [RFC 6134] [Sieve_discussion_list]
extracttext adds the "extracttext" action for extracting text from a MIME body part. [RFC 5703] [Sieve_discussion_list]
fcc Adds the ":fcc" parameter to Sieve action commands that generate additional messages. [RFC 8580] [Sieve_discussion_list] 2019-01-29
fileinto adds the 'fileinto' action for delivering to a mailbox other than the default [RFC 5228] (Sieve base spec), [RFC 5490] (:create), [RFC 3894] (:copy), [RFC 5232] (:flags) [Sieve_discussion_list]
foreverypart adds the "foreverypart" and "break" actions for iterating through MIME parts of a message. [RFC 5703] [Sieve_discussion_list]
ihave The "ihave" extension provides a means to write scripts that make use of other extensions only when they are actually available. [RFC 5463] [Sieve_discussion_list]
imapsieve Add Sieve processing for IMAP events. [RFC 6785] [Sieve_discussion_list]
imap4flags Adds actions and tests for manipulating IMAP flags [RFC 5232] [Sieve_discussion_list]
include adds the "include" command to execute other Sieve scripts, the "return" action from an included script, and the "global" command and "global" variables namespace to access variables shared among included scripts. [RFC 6609] [Sieve_discussion_list]
index The "index" extension provides a means to limit header and address tests to specific instances when more than one field of a given type is present. [RFC 5260] [Sieve_discussion_list]
mailbox adds test for checking for mailbox existence and a new optional argument to fileinto for creating a mailbox before attempting mail delivery. [RFC 5490] [Sieve_discussion_list]
mailboxid adds a test for checking mailbox existence by OBJECTID, and new optional arguments to fileinto and :fcc that allow selecting the destination mailbox by OBJECTID. [RFC 9042] [EXTRA_discussion_list] 2021-03-30
mboxmetadata adds tests for checking for mailbox metadata item existence and for retrieving of a mailbox metadata value. [RFC 5490] [Sieve_discussion_list]
mime adds the ":mime" and ":anychild" tagged arguments to the "header", "address", and "exists" tests. Adds the ":type", ":subtype", ":contenttype", and ":param" options when ":mime" is used with the "header" test. [RFC 5703] [Sieve_discussion_list]
processcalendar Adds the "processcalendar" action command to add and update items on a user's calendars. [RFC 9671] [Sieve_discussion_list] 2024-08-16
redirect-deliverby The "redirect-deliverby" extension extends the redirect action to allow specification of the BY ESMTP parameter associated with the Deliver-By SMTP extension defined in [RFC 2852]. [RFC 6009] [Sieve_discussion_list]
redirect-dsn The "redirect-dsn" extension extends the redirect action to allow specification of the NOTIFY and RET ESMTP parameters associated with the DSN SMTP extension defined in [RFC 3461]. [RFC 6009] [Sieve_discussion_list]
regex [draft-murchison-sieve-regex-07] [Kenneth_Murchison]
reject adds the "reject" action for refusing delivery of a message. The exact reason for refusal is conveyed back to the client. [RFC 5429] [Sieve_discussion_list]
relational Extends existing conditional tests in Sieve language to allow relational operators [RFC 5231] [Sieve_discussion_list]
replace adds the "replace" action for replacing a MIME body part of a message. [RFC 5703] [Sieve_discussion_list]
servermetadata adds tests for checking for server metadata item existence and for retrieving of a server metadata value. [RFC 5490] [Sieve_discussion_list]
spamtest Provides a test to check for varying likelihood of an email message being spam. [RFC 5235] [Sieve_discussion_list]
spamtestplus Provides a test to check for varying likelihood of an email message being spam, possibly using a percentage range. [RFC 5235] [Sieve_discussion_list]
special-use adds a test for checking whether an IMAP special-use attribute is assigned for a particular mailbox or any mailbox, and it adds the ability to file messages into a mailbox identified solely by a special-use attribute. [RFC 8579] [Sieve_discussion_list] 2019-01-29
subaddress adds the ':user' and ':detail' address parts for use with the address and envelope tests [RFC 5233] [Sieve_discussion_list]
vacation adds an action for generating an auto-reply saying that the original message will not be read or answered immediately [RFC 5230] [Sieve_discussion_list]
vacation-seconds adds the ":seconds" parameter to the Sieve Vacation extension. Implementations that support this MUST also support "vacation". [RFC 6131] [Sieve_discussion_list]
variables Adds support for variables to the Sieve filtering language. [RFC 5229] [Sieve_discussion_list]
virustest Provides a test to check for varying likelihood of there being malicious content in an email message. [RFC 5235] [Sieve_discussion_list]
vnd.cyrus.* (anything starting with "vnd.cyrus.") Extends the Sieve language with vendor-defined functionality specific to the Cyrus IMAP server ([http://www.cyrusimap.org]). Not applicable [Kenneth_Murchison] 2020-05-05
vnd.dovecot.* (anything starting with "vnd.dovecot.") Extends the Sieve language with vendor-defined functionality specific to the Dovecot Secure IMAP server ([http://www.dovecot.org]). Not applicable [Stephan_Bosch][Timo_Sirainen] 2008-07-28
vnd.stalwart.* (anything starting with "vnd.stalwart.") Extends the Sieve language with vendor-defined functionality specific to the Stalwart JMAP server [http://www.stalw.art]. Not applicable [Mauro_De_Gennaro] 2022-11-02

Sieve URN Parameters

Registration Procedure(s)
Specification Required
Expert(s)
Unassigned
Reference
[RFC 6134]
Available Formats

CSV
URN Parameter Name Reference
addrbook [RFC 6134], section 2.6

Sieve Actions

Registration Procedure(s)
Expert Review
Expert(s)
Alexey Melnikov, Ken Murchison
Reference
[RFC 9122]
Available Formats

CSV
Name Description References Capabilities Action Interactions Cancels Implicit Keep? Can Use With IMAP Events? Comments
addheader Add a header field to the existing message header [RFC 5293] "editheader" All subsequent tests and actions apply to the altered message No Yes
addflag Add IMAP flags to a list of IMAP flags that would be set on the message if it gets delivered to a mailbox [RFC 5232][RFC 5229] "imap4flags", "variables" No Yes
convert Convert body parts from one MIME type to another [RFC 6558] "convert" All subsequent tests and actions apply to the altered message No Yes
deleteheader Remove a header field from the existing message header [RFC 5293] "editheader" All subsequent tests and actions apply to the altered message No Yes
discard Silently throw away the message [RFC 5228] Yes Yes
enclose Enclose a message as an attachment to a new message [RFC 5703] "enclose" All subsequent tests and actions except "redirect" apply to the altered message No Yes
ereject Refuse delivery of the message [RFC 5429] "ereject" This action is incompatible with the "vacation" action. Typically is not permitted with actions that cause mail delivery, such as "keep", "fileinto", and "redirect" Yes No
extracttext Store text of a MIME part into a variable [RFC 5703][RFC 5229] "extracttext", "variables" No Yes
fileinto Deliver the message into the specified mailbox [RFC 5228][RFC 3894][RFC 5232][RFC 5490][RFC 9042][RFC 8579] "fileinto", "copy", "imap4flags", "mailbox", "mailboxid", "special-use" Use of :copy suppresses cancellation of implicit keep Yes Yes
keep File the message into the user's main mailbox [RFC 5228][RFC 5232] "imap4flags" Yes Yes
notify Send a notification to a user [RFC 5435][RFC 8580] "enotify", "fcc" No Yes
processcalendar Add and update items on a user's calendars [RFC 9671][RFC 5229][RFC 6134] "processcalendar", "variables", "extlists" This action is incompatible with the "reject" and "ereject" actions. No No
redirect Send (forward) the message to another user [RFC 5228][RFC 3894][RFC 6009][RFC 6134] "copy", "redirect-dsn", "redirect-deliverby", "extlists" Use of :copy suppresses cancellation of implicit keep Yes Yes
reject Refuse delivery of the message [RFC 5429] "reject" This action is incompatible with the "vacation" action. Typically is not permitted with actions that cause mail delivery, such as "keep", "fileinto", and "redirect" Yes No
removeflag Remove IMAP flags from a list of IMAP flags that would be set on the message if it gets delivered to a mailbox [RFC 5232][RFC 5229] "imap4flags", "variables" No Yes
replace Replace a MIME part [RFC 5703] "replace" All subsequent tests and actions except "redirect" apply to the altered message No Yes
set Store a value in a variable [RFC 5229] "variables" No Yes
setflag Set IMAP system flags or keywords that would be set on the message if it gets delivered to a mailbox [RFC 5232][RFC 5229] "imap4flags", "variables" No Yes
vacation Implement a vacation autoresponder [RFC 5230][RFC 6131][RFC 8580] "vacation", "vacation-seconds", "fcc" This action is incompatible with the "reject" and "ereject" actions. No No

Contact Information

ID Name Organization Contact URI Last Updated
[EXTRA_discussion_list] EXTRA discussion list mailto:extra&ietf.org
[Jutta_Degener] Jutta Degener Sendmail, Inc. 6425 Christie Ave, 4th Floor Emeryville, CA 94608 mailto:jutta&sendmail.com
[Kenneth_Murchison] Kenneth Murchison mailto:sieve&cyrusimap.org 2020-05-05
[Mauro_De_Gennaro] Mauro De Gennaro mailto:mauro&stalw.art 2022-11-02
[Sieve_discussion_list] Sieve discussion list mailto:sieve&ietf.org
[Stephan_Bosch] Stephan Bosch mailto:stephan&rename-it.nl
[Timo_Sirainen] Timo Sirainen mailto:tss&iki.fi