Network Working Group Bryan Costales Request for Comments: DRAFT InfoBeat, Inc. April 1997 E-Mail Headers to Facilitate Mailing List Subscriptions and Unsubscriptions Status of this Memo This document is an Internet-Draft. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as ``work in progress.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West Coast). Abstract The number of ways to subscribe-to (and to unsubscribe-from) e-mail mailing lists is as varied as the number of programmers designing mailing list software. For some lists, for example, users (un)subscribe by sending a request to -request@host.domain. For others lists the address is majordomo@host.domain with the request to (un)subscribe embedded in the message body. Yet others set up special hosts to satisfy this need, such as @list- off.domain. In this Internet Draft we offer two new e-mail headers intended to make mailing list subscription and unsubscription easier and more uniform: List-Subscribe and List-Unsubscribe. Discussion Naive users, over time, rely more and more on the ``smart'' features of Mail User Agent programs to solve complex needs. Filtering in bound e-mail is on such feature. Automating subscription to and unsubscription from mailing lists could be another. Consider, for example, a typical (but abbreviated) mailing list message. Costales [Page 1] INTERNET-DRAFT April 1997 To: you@your.domain From: list@example.domain (Mailing List Site) Subject: Your mass mailing for today Comment: to unsubscribe send a message to list-cancel@example.domain X-List-Unsubscribe: list-cancel@example.domain ... 50 or so lines of message contents * To unsubscribe from this Mailing List, send an e-mail message to list-cancel@example.domain. Here, three problems with this message prevent easy automation of the unsubscription process: (1) The Comment header describes how to unsubscribe from the mailing list. Unfortunately, it is in free-form text, inappropriate for automatic parsing. Also, because the Comment header is a general purpose header, there is no guarantee that any addresses found in it are those used for unsubscription purposes. (2) The X-List-Unsubscribe header, because it begins with an X-, is a non-standardized header. Although some software may recognize it as specifying an address for unsubscription, other software will not. The leading X- prevents any requirement that all software recognize its special meaning. (3) The trailing text in the message body also describes how to unsubscribe. This is perhaps the most common and least easily automated form for providing unsubscription information. The List-Subscribe and List-Unsubscribe headers One method to specify mailing-list subscription and unsubscription information in an e-mail message is to include an appropriate, and corresponding List-Subscribe and List-Unsubscribe header. The List- Subscribe specifies the address (or URL, see below) to which e-mail must be sent to subscribe to a mailing list. The List-Unsubscribe header specifies the address (or URL) to which e-mail must be sent to unsubscribe from a mailing list. The field-body (the text to the right of the colon following the header name) for these headers shall be either a bare address specification or a mailto URL. A Bare Address When the address specification in the field-body may be that of an RFC822 recipient including address commentary. For example: Costales [Page 2] INTERNET-DRAFT April 1997 List-Unsubscribe: Stop Getting This List-Subscribe: listname+on@host.domain (Join The List) The recipient address specification in the field-body is in every way identical to that for the ``To'' header, except that it may only list a single recipient. The Mailto URL When the address part of the address specification in the field-body is surrounded by a '<' and '>' pair, and when the first non- whitespace characters following the '<' are ``mailto:'', the address specification shall be interpreted as a mailto URL. For example: List-Unsubscribe: List-Subscribe: Currently, only an e-mail address may appear in a mailto URL. Future enhancements may include the ability to include other header and body information. When legal, such use of extensions are recommended. For example: List-Unsubscribe: Security Considerations If mail user agents are careless when using the List-Subscribe and List-Unsubscribe headers, risk develops that a user may inadvertently ``spam'' or otherwise misuse a mailing list. These headers should only provide a template for addresses that can be used by user agent software. A user agent should never send a message based on these headers without first showing the user the full message that will be sent (including all headers), fully decoded, and asking the user for approval to send the message. The user agent should also make it clear that the user is about to subscribe-to or to unsubscribe-from a mailing list. Costales [Page 3] INTERNET-DRAFT April 1997 Author's Address: Bryan Costales InfoBeat, Inc. Denver, Colorado 80202 USA Tel: 303-295-0335 bcx@infobeat.com Costales [Page 4]