<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.23 (Ruby 3.4.1) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-mailmaint-wrong-recipient-03" category="std" consensus="true" submissionType="IETF" updates="8058" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title abbrev="Wrong Recipient">Adding a Wrong Recipient URL for Handling Misdirected Emails</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-mailmaint-wrong-recipient-03"/>
    <author fullname="David Weekly">
      <organization/>
      <address>
        <postal>
          <city>Redwood City</city>
          <region>CA</region>
          <country>US</country>
        </postal>
        <email>david@weekly.org</email>
      </address>
    </author>
    <author fullname="John Levine">
      <organization/>
      <address>
        <postal>
          <country>US</country>
        </postal>
        <email>standards@standcore.com</email>
      </address>
    </author>
    <date year="2025" month="February" day="22"/>
    <area>ART</area>
    <workgroup>MAILMAINT</workgroup>
    <keyword>email</keyword>
    <abstract>
      <?line 43?>

<t>This document describes a mechanism for an email recipient to indicate to a
sender that they are not the intended recipient.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://dweekly.github.io/ietf-wrong-recipient/draft-ietf-mailmaint-wrong-recipient.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-mailmaint-wrong-recipient/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        MAILMAINT Working Group mailing list (<eref target="mailto:mailmaint@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/mailmaint/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/mailmaint/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/dweekly/ietf-wrong-recipient"/>.</t>
    </note>
  </front>
  <middle>
    <?line 48?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Many users with common names and/or short email addresses receive
transactional emails from service providers intended for others. These
emails can't be unsubscribed (as they are transactional) but neither are
they spam. These emails commonly are from a noreply@ email address; there
is no standards-based mechanism to report a "wrong recipient" to the
sender. Doing so is in the interest of all three involved parties: the
inadvertent recipient (who does not want the email), the sender (who wants
to be able to reach their customer and who does not want the liability of
transmitting PII to a third party), and the intended recipient.</t>
      <t>This document proposes a structured mechanism for the reporting of such
misdirected email via HTTPS POST, updating
the List-Unsubscribe-Post mechanism of <xref target="RFC8058"/>.</t>
    </section>
    <section anchor="proposal">
      <name>Proposal</name>
      <t>There ought be a mechanism whereby a service can indicate
it has an endpoint to indicate a "wrong recipient" of an email. If this
header field is present in an email message, the user can select an option to
indicate that they are not the intended recipient.</t>
      <t>Updating the one-click unsubscription <xref target="RFC8058"/>, the mail service can
perform this action in the background as an HTTPS POST to the provided
URL without requiring the user's further attention to the matter.</t>
      <t>Since it's possible the user may have a separate valid account with the
sending service, it may be important that the sender be able to tie
<em>which</em> email was sent to the wrong recipient. For this reason, the
sender may also include an opaque blob in the header field to specify the
account ID referenced in the email; this is included in the POST.</t>
      <t>Note that this kind of misdelivery shouldn't be possible if a service
has previously verified the user's email address for the account.</t>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="high-level-goals">
      <name>High-Level Goals</name>
      <t>Allow a recipient to stop receiving emails intended for someone else.</t>
      <t>Allow a service to discover when they have the wrong email for a user.</t>
    </section>
    <section anchor="out-of-scope">
      <name>Out of Scope</name>
      <t>This document does not propose a mechanism for automatically discovering
whether a given user is the correct recipient of an email, though it is
possible to use some of the signals in an email, such as the intended
recipient name, to infer a possible mismatch between actual and intended
recipients.</t>
    </section>
    <section anchor="implementation">
      <name>Implementation</name>
      <section anchor="mail-senders-when-sending">
        <name>Mail Senders When Sending</name>
        <t>Mail Senders that wish to be notified when a misdelivery has occurred
<bcp14>SHOULD</bcp14> include a List-Unsubscribe: header field <xref target="RFC2369"/> and a
List-Unsubscribe-Post: header containing
"Wrong-Recipient=One-Click".</t>
        <t>The sender <bcp14>MUST</bcp14> encode a mapping to the underlying account identifier
in the List-Unsubscribe: URI as described in Section 3.1 of <xref target="RFC8058"/>.</t>
      </section>
      <section anchor="mail-recipients">
        <name>Mail Recipients</name>
        <t>When a mail client receives an email that includes a Wrong-Recipient
header field, an option <bcp14>SHOULD</bcp14> be exposed in the user interface that allows
a recipient to indicate that the mail was intended for another user, if
the email is reasonably assured to not be spam.</t>
        <t>If the user selects this option, the mail client performs an
HTTPS POST to the first https URI in the List-Unsubscribe header field
as described in section 3.2 of <xref target="RFC8058"/>.</t>
        <t>The POST body <bcp14>MUST</bcp14> include only "Wrong-Recipient=One-Click".</t>
      </section>
      <section anchor="mail-senders-after-wrong-sender-notification">
        <name>Mail Senders After Wrong Sender Notification</name>
        <t>When a misdelivery has been indicated by a POST to the HTTPS URI or
email to the given mailto: URI, the sender <bcp14>MUST</bcp14> make a reasonable effort
to cease emails to the indicated email address for that user account.</t>
        <t>The sender <bcp14>SHOULD</bcp14> make a best effort to attempt to discern a correct
email address for the user account, such as by using a different known
email address for that user, postal mail, text message, phone call,
app push, or presenting a notification in the user interface of the
service. How the sender should accomplish this task is not part of
this specification.</t>
      </section>
      <section anchor="header-syntax">
        <name>Header syntax</name>
        <t>The ABNF grammar in Section 5 of <xref target="RFC8058"/> is augmented as follows:</t>
        <artwork><![CDATA[
postarg =/ "Wrong-Recipient=One-Click"
]]></artwork>
      </section>
    </section>
    <section anchor="additional-requirements">
      <name>Additional Requirements</name>
      <t>The email needs at least one valid authentication identifier, as
described in Section 4 of <xref target="RFC8058"/>.</t>
    </section>
    <section anchor="examples">
      <name>Examples</name>
      <section anchor="signed-https-uri">
        <name>Signed HTTPS URI</name>
        <t>Header fields in Email:</t>
        <artwork><![CDATA[
List-Unsubscribe: <https://example.com/wrongrecip/uid12345/siga29c83d>
List-Unsubscribe-Post: Wrong-Recipient=One-Click
]]></artwork>
        <t>Resulting POST request:</t>
        <artwork><![CDATA[
POST /wrongrecip/uid12345/siga29c83 HTTP/1.1
Host: example.com
Content-Length: 25

Wrong-Recipient=One-Click
]]></artwork>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The considerations are similar to those in Section 6 of <xref target="RFC8058"/>.</t>
      <t>A bad actor with access to the user's email could maliciously
indicate the recipient was a Wrong Recipient with any services that
used this protocol, causing mail delivery and potentially account
access difficulties for the user.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document makes no requests to IANA.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC2369">
        <front>
          <title>The Use of URLs as Meta-Syntax for Core Mail List Commands and their Transport through Message Header Fields</title>
          <author fullname="G. Neufeld" initials="G." surname="Neufeld"/>
          <author fullname="J. Baer" initials="J." surname="Baer"/>
          <date month="July" year="1998"/>
          <abstract>
            <t>The mailing list command specification header fields are a set of structured fields to be added to email messages sent by email distribution lists. By including these header fields, list servers can make it possible for mail clients to provide automated tools for users to perform list functions. This could take the form of a menu item, push button, or other user interface element. The intent is to simplify the user experience, providing a common interface to the often cryptic and varied mailing list manager commands. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="2369"/>
        <seriesInfo name="DOI" value="10.17487/RFC2369"/>
      </reference>
      <reference anchor="RFC8058">
        <front>
          <title>Signaling One-Click Functionality for List Email Headers</title>
          <author fullname="J. Levine" initials="J." surname="Levine"/>
          <author fullname="T. Herkula" initials="T." surname="Herkula"/>
          <date month="January" year="2017"/>
          <abstract>
            <t>This document describes a method for signaling a one-click function for the List-Unsubscribe email header field. The need for this arises out of the actuality that mail software sometimes fetches URLs in mail header fields, and thereby accidentally triggers unsubscriptions in the case of the List-Unsubscribe header field.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8058"/>
        <seriesInfo name="DOI" value="10.17487/RFC8058"/>
      </reference>
      <reference anchor="RFC2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
    </references>
    <?line 201?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Many thanks to Oliver Deighton and Murray Kucherawy for their kind and actionable
feedback on the language and first draft of the proposal. Thanks to
Eliot Lear for helping guide the draft to the right hands for review.
A detailed review by Jim Fenton was much appreciated and caught a number
of key issues. Many thanks to the members of IETF ART for vigorous
discussion thereof and for feedback from the MAILMAINT working group.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA41Z23LjNhJ9x1dgNQ9Jtiwpnkt2Rpkko9ie2Fnf1peaSqVS
KYiEJJRJggFAaVSp/Mt+y37Znm6AFGV5pvLgMgUCjcbp7tPd4HA4FMGEQk/k
YJrnplpIJT84i/83OjO10VWQ9zfncm6dPFVVXtCUC+Nz43QWdC5PSmUKPxBq
NnN6BTGPVg9EpoJeWLeZSFPNrRC5zSpVYsfcqXkYGh3mQxKCvyoM17R86Nrl
w69fCKfrQmXatyvytdYPxebxVNHUObbCtNdfv3otfDMrjffGVmFTY7ezk7v3
pMtE+pCLqiln2k0ErZgI6P1CKKfVRE5v7sTauoeFs009kRfTs3P8Xd6JzFZe
V76B/OAaLR70BvPyiZBDqUl/sdJVA2FS7q2VMurwAYIJwJ9oAkZp2UR2h39H
WIysW+CVctlyIpch1H4yHtMUGjErPWonjWlgPHN27fW4kzGm/U1YNjPAFYEa
M8SP0ZKyILTCdpM0fRSXj4x9cuH475httAxlIYRqwtI6ggjbSTlviiKa/lit
TC4/8H78Skcochp/l/SIQEiZmQDnudH52tpcHuEXDzu9gHEn8mgaZ9mmCuRl
97f7+/1sl5U81ytT6f52PsCllcv9O37KrNOjzJZ78kRlXakC0Cfz3rw/ev7i
mzfpkZxtIsRwOJRq5oNTWRDibmm8hKM3JQVQrn3mzEx7BFeps6WqjC85pFQV
VZEdcjJYxEluKGroWQl4Xa6dDEuFl0u9gWtoWVn+gamBXudbAaOoS2nyvNBC
PJNnOIbNmywALSEuVLWRjdfOyzXsjGOWpa0kwQT1qnwMrTyMFpJiKs+d9h4v
sYMGAgJHrLxicaqIs7ycO1tKSF2ZTMvaWZiRtujUo8NaKOz8SN4ttdciLcxU
9UWQMy0bxNYs4pTLL5XfnnVnw6/krAmy0oaE0WvB83ytyiS5VSmerIgyWD8F
2IhMNu92D/ct7QVJsFllt04xnCkPXbYWgzmwnLBRcsAev4V9QG8hJplrJI8t
RbqHNQmGzljYL0g7l6ooMOY0ja5sscJGtXLBEH+RGFOpfKVdIJfYOseX66WF
X2nPDrBWVfQCPs1XB/yc3IVn0gQvoBjwVbNCxxOobEkzjZNZ44MtCccql0+L
LoyamQIxB6Wj6UsTAh3t+uyMHRTTjIvab6ADifqkZ+7GBfyktp7DAoEDD23c
Dt7kNCQqgk57AjjfZEtR9jJQNOXKKHl6d3d9K6+vbu8OJCcDLCH3kOfGh+H9
1sGG1xZW2G4Esb+mUP5tRDFzzZqpgjSGyaRtFkv20n4Ar+nVbEPaJ8eHM3fB
K0yQS+U5xKu8hjfsxvZTLkR+kRhhJM/mhKwXS63IoHOji5ycqYYLEXpwqo4+
ELxeLXT0AIpuVsXrAhDRLFtT9GB/seWWv88n9wlLnmErPcwKkz1sIzYK7xCM
WrBePWBErR0MWvKhZAznNjBmKuOEC9eJiG0tmcKq5ZRcUDVCzGUbCow/GuNa
zejcX4CKGhe5IVDwxGMnjTDicJ5bU0EnEzAZVvaGI6MFrlQb2G2l2axwasJq
pQqkK5VxToi82YY6B3k85QFE8nL4iSnJZWMQRZzbwOyFIqJd/L5emmz5e7Lj
Gsf3KQvQmkceMpLvOSQMsbHytjroUQ5vrQpinCormlxHw6s/GgBc2FkL9o4/
YR9fQ/x8w5LaI54dY4M53BtA5e1CVvHbuD2TGu/SvSZrAdxLu3UuzEK9k5Nf
U8TqAvnDbSi/NEWeeL+zgJlvI0lQ5MDRV8Y2HhSOZQYK530771B4xxXpBBzF
R7ZaRRfg1CaP9dxUhn9zYEvUcJKKOC8HF/e3d4OD+F9eXvHzzcl/7s9uTo7p
+fZ0en7ePYg04/b06v78ePu0XXl0dXFxcnkcF2NU7gyJwcX0l0Eky8HV9d3Z
1eX0fBCR7DMkpz+mb84dQIQYT3nRlhSM/o9H1//77+FL+eef/6Da5PDwzV9/
pR+vD//1Ej9AVVXcjTNi/EnBL1Rda+WYTJCRMlWbAB86oDiEmdaVJJIDmv/8
lZD5bSLfzrL68OX3aYAOvDPYYrYzyJjtj+wtjiA+MfTENh2aO+OPkN7Vd/rL
zu8W997g2x/Q4Gg5PHz9w/eCXOjULJZDFI66kD9ZACPEtCjsGp66U7Ehjdap
QCJCSBXITvXjkWjBnVIXnvBsxbQMCSG58ZmFp7N5IjUzEW2JILo8F44cBezl
Vw0XFLeZrfVe5dnm85Rq9wvQBgUAyD2D9TedBpQ3oUSkUbQTiKJIjobLMpRW
jpJvD4Ne5iLHonxJbIj0tWVYSzIYB5rOlGgWKOl8P5UdcIKXsf7rEBTbnahS
PYiZdM7qdRuAYnAULJ7pgBaioiTToEQlt98X5Bm8s7IuNEGlYnn87Jm8IIxv
mVK9/ECmuI08T8Vz7xVz3Nr4ZYpQwBw5is2ndhiP6MxmWQPYcpFcumPpvfJk
ssvRv6aG4zc+iRJPVjPdGvSpAS0Z6Rt78WHXi393hdx9RLl7MIoEmDIHRzK4
3rI6JTiBc2rMQQ1NKTZ8N5DSAxJxxYd1IpH//hHub87IijtEdatj2n8xOtyr
uRLwnbIItQ8JSBpHyZFKYWpC/Lb0YTMkLH17e7E98075dNCrhZIVYDj9kUKj
y2PR0Ylu5ypLqUxRtHqhPtWntTm+S+I7oa8qbn1YMoqEueiyqewyOWoCZG/v
uQSGbApa6MZ9jRBn861qsarzMVPEw/QqroRTKrYIJ7FfTM2NQ/3LfT/b6RNG
3HFD8diYvjPm88fGvEvlgJzZfBO9q/V2zj+fd8zHMTidwxbpViqOyUuOtSwF
7YenA25GHNDaKJdcqfdRiLjQ+a0TyZnim8h4NBIse/JOa8XnKdWD5iyQjAeD
zoF4oG4rw2DXhiaRWz2eqlvgPmzbbfXSi87kqWnHGTWQcS9uv1DTlnVo84d2
hETiZ/F0idTfaUu3M7oWiBeAuZlz7RfkQ4US4EkxSeMDol9UDDIxv/4Yts1I
vaSER6nlgOoMWTd+eQCw2xYm7lb1bPmJGIzpQqRcOZKnSJ09g8R6ko8EOmdG
ptgIyj9Ik/IfulPuYOlFrHjTltHhTqOn+w3I82NEf/rj5Xu5cKosY33Ukter
HW+nDVSzoBTClRngYa6YCL5FYnTcQn43/pzTUyai69d0p3LDbQ2npVSoRgtU
WqNUBfIFHCxQJ9Z2Jg3QqEIHYkfPB3u1YnuKl/tN78lHRdnQMyC3SM1Y0cWI
EKc9MuCUzVe/6Zz7/P+2vVbUUSxdrI25jGEOHTcmP3z+4uWrMYoA9fxN9vpF
/v2TolJ6+yR6Qtxo3xTxToLCm7pCutiMmvHQ5zfmU44PR4e84JS362nNo+gl
qJ1ELVgtwnIin7+K4j+j1jMCu3F0d4LVnm7EVK/5yHbGuNT3pqR73sgZVK71
DPbNY4NN0TaT0wcEFLek8H+KzzZt97ukjAOkhLNksaPq3wPoXlaj3LX/BSCK
rzZttRqLH9F47sj4TsIGm1kwQKYii/C2HR1T4VJb7se50EzsI5LKRDgmIxvq
XZqKNdr0cvoEgv06l7iRL++S7RkFWpduQ+mCgYMsI0YrdL6IwfXnJH4I0Pl3
gzkqUT34K12R4oDVA4u54jOgeUQrEGzFZ7lAJYdu+9/gTqi03rRKGxcbXi7U
4o0lUoOYI3BJBWkjvRWqWjSgSJ4XkzHfqrd1cZ2un+hGM6khTgoDHjunZo02
W+qCi7QF3DkaMUpI1nekLLJglUdAqZXW6xGcJtcoDwu+4aEh4v2fTSnfAw9o
R/YvOSPUNXkFZyzSEnYliaBrBkxAU+qeDSoW7UfyEWZcjmia6OlM9O2Fvqyw
KiuzsA5OKChfNfyFJt6/cg8RK6YOML63JWndxxRq2PkjCn9lGYn/A2i+SE3D
GgAA

-->

</rfc>
