Visual RFC.
ALL RFCs / RFC 2919
Read the RFC ↗

RFC 2919 / START HERE

Mailing list identity, before the details

List-Id means mailing list identifier; it is an email header field, not a network address.

It gives a mailing list a stable name that mail software can compare. A human-readable description may sit beside that name.

The idea in one picture

  1. List message

  2. Stable list key

  3. Mail reader

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Posting addresses, delivery machines and list titles can change. RFC2919 separates those details from a list identity so filters can keep recognizing the same list.

A familiar example

For example, Garden Notes <garden.example.org> can keep the same bracketed key after moving its server. Anyone can copy that field, so a match is not proof that a message is authentic.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Separate the list name from its identifierList-Id is an email header field: an optional descriptive phrase followed by one list identifier in angle brackets.
  2. Allocate an identifier in an authorized namespaceDomain ownership delegates the right to allocate list identifiers. Unmanaged .localhost identifiers offer a separate, weaker option.
  3. Compare identifiers and preserve list continuityList identifiers have one defined operation: case-insensitive equality. Delivery hosts and display names can change without changing the list key.
  4. Preserve the parent identity through a known sublistA known nested-list relationship and an unexpected incoming List-Id need different handling.
  5. Use a list key without trusting the messageA forged List-Id can misdirect automatic mail processing. It is neither proof of origin nor permission to execute a list command.
Start with chapter one →

This introduction explains RFC 2919 (2001). Read the original RFC ↗