IANA Registry for Sieve Actions
Extracted elements (21)
The registry was created because Sieve's popularity led to a large number of extensions with complex interactions, and there was no centralized way to discover all RFC-defined actions — making it difficult for extension writers and implementors to foresee action interactions.
The "Can Use With IMAP Events?" field in every registration records whether an action is compatible with IMAP events in Sieve (RFC 6785). Actions `reject`, `ereject`, and `vacation` explicitly cannot be used with IMAP events.
The `ereject` and `reject` actions are each incompatible with the `vacation` action; they are also typically not permitted alongside delivery actions (`keep`, `fileinto`, `redirect`). Neither can be used with IMAP events in Sieve (RFC 6785).
The designated expert must not reject a registration based on personal dislike of the defining document and should always err on the side of approving, even if documentation is incomplete.
The registration procedure for the Sieve Actions registry is Expert Review. The designated expert checks that the action name matches documentation, the description is accurate, correct documents are referenced, and the reference list is complete.
The `addheader` action (editheader capability, RFC 5293) adds a header field to the message; all subsequent tests and actions apply to the altered message. It does not cancel the implicit keep.
The `convert` action (RFC 6558) converts body parts from one MIME type to another; all subsequent tests and actions apply to the altered message. It does not cancel the implicit keep.
The `deleteheader` action (editheader capability, RFC 5293) removes a header field from the message; all subsequent tests and actions apply to the altered message. It does not cancel the implicit keep.
The `discard` action silently discards the message (requires no capability), cancels the implicit keep, and can be used with IMAP events. It has no interaction restrictions with other actions.
The `enclose` action (RFC 5703) encloses the message as an attachment to a new message; all subsequent tests and actions except `redirect` apply to the altered message. It does not cancel the implicit keep.
The `ereject` action refuses delivery of the message (extended reject, RFC 5429) and cancels the implicit keep. It is incompatible with the `vacation` action and is typically not permitted alongside delivery actions. It cannot be used with IMAP events.
The `fileinto` action delivers the message to a specified mailbox and cancels the implicit keep; use of the `:copy` argument suppresses cancellation of the implicit keep. It supports capabilities: fileinto, copy, imap4flags, mailbox, mailboxid, special-use.
The `keep` action files the message into the user's main mailbox and cancels the implicit keep. It supports the imap4flags capability and has no interaction restrictions.
The `notify` action (RFC 5435) sends a notification to a user and does not cancel the implicit keep. It supports enotify and fcc capabilities and can be used with IMAP events.
The `redirect` action forwards the message to another address and cancels the implicit keep; use of `:copy` suppresses this cancellation. It supports capabilities: copy, redirect-dsn, redirect-deliverby, extlists.
The `reject` action refuses delivery of the message and cancels the implicit keep. It is incompatible with the `vacation` action and is typically not permitted alongside delivery actions such as `keep`, `fileinto`, and `redirect`. It cannot be used with IMAP events.
The `replace` action (RFC 5703) replaces a MIME part; all subsequent tests and actions except `redirect` apply to the altered message. It does not cancel the implicit keep.
The Sieve Actions registration template requires: Name, Description, References (mandatory for RFC-defined actions), Capabilities, Action Interactions, Cancels Implicit Keep flag, Can Use With IMAP Events flag, and optional Comments.
The `vacation` action implements an autoresponder (RFC 5230). It does not cancel the implicit keep and is incompatible with both the `reject` and `ereject` actions. It cannot be used with IMAP events.
This document establishes the IANA "Sieve Actions" registry to catalog all actions defined by Sieve extensions, enabling developers and extension writers to track interactions between different extensions. Registration of actions from both RFCs and vendor-specific documentation is allowed and encouraged.
This document introduces no new security considerations for Sieve implementations. The registry is expected to improve the quality of specifications and implementations — including their security aspects — by helping extension writers and implementors track action interactions.