[Atp] Opening the AT URI (at://) Syntax Discussion

Bryan Newbold <bryan@blueskyweb.xyz> Thu, 02 July 2026 19:45 UTC

Return-Path: <bryan@blueskyweb.xyz>
X-Original-To: atp@mail2.ietf.org
Delivered-To: atp@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 5DD5510CEF590 for <atp@mail2.ietf.org>; Thu, 2 Jul 2026 12:45:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1783021509; bh=WjjNzucaWJKCA2HZmB8hRZuQCNShDe+OhZtsjAgRnvs=; h=From:Date:Subject:To; b=LzOAozJAI7wMX4sMjRbUkbE7NfGPgaV9c0tYZ3Mho/ZzN6Y15/8TrGSYYIsVTKChj UFPrh9Mp+8VMwkiuBVbSv/CiFGjEfycwmXPhAvf2RcyAwu54vq/sgs9ZRJgwzVYb3M 3baZonhvWLBttV4+jVCPkqKMy9XG2+ORDdsIu4jg=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: 1.255
X-Spam-Level: *
X-Spam-Status: No, score=1.255 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FROM_SUSPICIOUS_NTLD=0.499, FROM_SUSPICIOUS_NTLD_FP=0.846, HTML_MESSAGE=0.001, PDS_OTHER_BAD_TLD=1.999, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_KAM_HTML_FONT_INVALID=0.01] autolearn=no autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=blueskyweb.xyz
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 61GCQvlV6ije for <atp@mail2.ietf.org>; Thu, 2 Jul 2026 12:45:08 -0700 (PDT)
Received: from mail-ej2-x01.google.com (mail-ej2-x01.google.com [IPv6:2a00:1450:4864:34::1]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id E43AD10CEEAAD for <atp@ietf.org>; Thu, 2 Jul 2026 12:41:49 -0700 (PDT)
Received: by mail-ej2-x01.google.com with SMTP id a640c23a62f3a-c128e8a16e0so81007266b.1 for <atp@ietf.org>; Thu, 02 Jul 2026 12:41:49 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1783021309; cv=none; d=google.com; s=arc-20260327; b=IrAuBPngYVfK/kesji2Aua2KYx/1gMxGAnGmN/ill1tK1M17EDkBNx74gnhdXuk2zG Uw/oDohvn6l9tr3JYHupsikwrvUAOLHf/8pcPanRt8ZXK5kG6/G0sx773/LMzRYnxawK B+oZ5MrNiz160/qy5PNsWlAVq/WDfSU8+KW1b+B5B4+J77mXyXgIr1w9d5OrCwOeYX8g ympMp0DnAe+t6mr1xV8vG+zkN26LRQDapJ/dKP9ms4PHB21zVGwysZeTh4FknqbMny29 ewLYHiiUrxGwxLaRThm0E9NcWiVCO+O42pAcOJBbm3e9VxMQEgaVuDuHxC4hkHlIPVU5 4EMg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=1EEQLjqGBIrOkrSD/IHVMfOACPNUqos77BuD2vgZmEA=; fh=Ey4raUt1O8w4kZJlRV+d2BKKjWnLGEvIFibDo3ZjRYI=; b=NhTcXk4z7yGI6SBKJS5A0nht5FXVOQGsOvR6Mg8N6TXj1/J4hr28ZwBXyyT65C4QXY 0s9u5ptYpNEqqlcxda9N1qIuHgIskC/WKMRf38xcx8HVbACzDG39LGW7mAd/vBQonvs8 UgKO7FS1mA9gQjAXHWknYjiOl6ZhlyspqIsA79jsmcsl5XBfp49eIEXTtmYokORALxUG HcwCYL5l+wJbML3tw3YCxodDwk85bpLBc2sPszLWPDbxsfdDn5Lq6f7QHMc9Ydm6XyEl ptkTrKh/BhJGTl5hkeWAW4zxW6KY3bh5SSUaGtkyhsMVOA6voXsIZHPKkSIN0ygrTrlv acoQ==; darn=ietf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=blueskyweb.xyz; s=google; t=1783021309; x=1783626109; darn=ietf.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=1EEQLjqGBIrOkrSD/IHVMfOACPNUqos77BuD2vgZmEA=; b=dXNXmZwI883LgTCppevInYKc76MFPxSs7ixF8KjTbLIq8s3DmAqcrNOFiGiI0at/TD mCGQLTWNmP/BK4oa3/qVnNSkvv3+XObA48/x7D/tj6s5W6UUQA3IUGKb1CBQ92OVpqgN 4wcPBygq6g629euM6zgeUIwx3eMw99wcjTBjt4D70xKz7QwNC8qubCtXVsZwafElyG1Q mss5FYDzKZnEP9JHfWq4cZBHA/NINdbB1USSO38A+FmLEWjZACK43UAhSg4SGnQrJrTH TW4o9J0Qod+VZIjh88GYAY5G9Wm8tjUYidJwejTsYkU2LXA2yzGcy4Ky52+e8/d/yYbN erCw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783021309; x=1783626109; h=to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=1EEQLjqGBIrOkrSD/IHVMfOACPNUqos77BuD2vgZmEA=; b=TodTqFCKCTOsGbCAL+Rejj2TmCXebKwArr3iFTAWyMZCTuUyE16Lz1uc6II6E03HhU 8RYNbLAFPS5anhcUk2P7quCl/ZwH/9SMxOnAjPZ3MsMIrnMtBkXF6zyDdyHzcKJhR20P SpZJ+zKp2YeIrmir0SJZ557OMnwpQZqWEipnwE+ZDsloIHokGG7/aglYfkbf4SVDkZr9 dPoZz5M/rnMkKiFR4vOUSPa8sUHpgPnFBd58X71omSbmRd0KXV1fLX8Ywawt7g/Jjamb EBWgiHaOe8kHTxrTRxkZKANnnd3H80AH+8Put89I90tFUagm/06DvHjAwjV5Ft6tjE75 6RVw==
X-Gm-Message-State: AOJu0YwG5goyByBA0Il5UfHVz5gOsrmSm6891OGEFkrC69k1v0nIuOlu Wg+mTzHNk6geTKdmpM7AsZmg6m91rHD0zQGgnz7yGfMnkqHdz/sicGEifUghU+5Ko+JbRJfFham yr9QF4NZrKSKobV9wZWahxy9V4GKIsjog2oXs0cdzrjiF5FbqSsnBjHSli6g=
X-Gm-Gg: AfdE7cmHnvBpMQxQEwU8TnWZcUuUES4OQZNK8C7y31gmJrKUA+LQETf5tRbEqZVWOOQ mGNqzp7YRE+DaC2Ajm31AawccNf3hMNqRiA3eK3G9m0izgZgZa5D47AlSuVUYg2gKIEcKz7gY4R JV6vz2BXX4PGMwJNYWKBwnZDIMJYo2VOY/HfPAQjQ+izV300H0sFltdMeoGHPWgpeul5txmq3u/ lkOAIS0s/jFB3pUEobIJSlI72Ixil39onT69xXX1GiY8OAKBtA/rDHadvPaMTwMgo1I+GFYBkDy NYYIRIB8cA56xHTBx2qZ9ajPdFqEbYVAJ1TXYQONtDdqTHWpc7qsPjasq5J19vRcH0Sb1c8=
X-Received: by 2002:a17:906:4793:b0:c12:5b6c:9b8c with SMTP id a640c23a62f3a-c12a9d71c3dmr311060166b.15.1783021308726; Thu, 02 Jul 2026 12:41:48 -0700 (PDT)
MIME-Version: 1.0
From: Bryan Newbold <bryan@blueskyweb.xyz>
Date: Thu, 02 Jul 2026 12:41:37 -0700
X-Gm-Features: AVVi8Cf9Xuz0QuIsAKTuoNu3pP1_AApX4B30FuCZZtC33WRSnMC8eeZS2S5NwOg
Message-ID: <CABFYohg6ZCym+OJr9W2TmHb2MLasyiU+GghST0e5VsdiGiQDEg@mail.gmail.com>
To: atp@ietf.org
Content-Type: multipart/alternative; boundary="000000000000bbe2100655a5fff4"
Message-ID-Hash: TTMA5TY6YMU5TMBZEJZWXKSWIZC3DPAS
X-Message-ID-Hash: TTMA5TY6YMU5TMBZEJZWXKSWIZC3DPAS
X-MailFrom: bryan@blueskyweb.xyz
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Atp] Opening the AT URI (at://) Syntax Discussion
List-Id: Authenticated Transfer <atp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/atp/lg3mG2vO3msYjqZ1SixT267xue4>
List-Archive: <https://mailarchive.ietf.org/arch/browse/atp>
List-Help: <mailto:atp-request@ietf.org?subject=help>
List-Owner: <mailto:atp-owner@ietf.org>
List-Post: <mailto:atp@ietf.org>
List-Subscribe: <mailto:atp-join@ietf.org>
List-Unsubscribe: <mailto:atp-leave@ietf.org>

Hi folks,

I want to kick of a thread to discuss the AT URI syntax, and in particular
the use of DID syntax (with multiple colons) in the "authority" part of the
URI. This group is chartered to formalize the "at://" URI scheme in a
standards-track document. But the currently deployed URIs (with billions of
strings in the wild) are unfortunately not strictly valid under RFC 3986.

I recently wrote a blog post about the situation[0]:
https://bnewbold.leaflet.pub/3mph4hzvbdc2v

Here is an example URI:  at://did:plc:vwzwgnygau7ed7b7wt5ux7y2/
app.bsky.feed.post/3k5nobkf2w72g

Here is the current AT URI syntax specification (which will form the basis
for a URI scheme I-D) as an informative reference:
https://atproto.com/specs/at-uri-scheme

I provisionally registered the "at" URI scheme with IANA back in 2023:
https://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml

One path forward would be to "move the mountain" and try to change the IETF
URI syntax rules to be more permissive about the "authority" part. This
would make the current AT URI syntax valid. I assume this would be
difficult, but could be a positive contribution to the broader internet
ecosystem in the long run.

Another path forward would be coming up with a variant syntax or encoding
which is valid under the current rules. Realistically, the existing syntax
would need to be supported indefinitely in "legacy" form. For example,
replacing colons in DIDs with dashes ( at://did-plc-abc123/... ).

--bryan

[0]: I'm not sure what the etiquette is, but i'd be happy to copy/paste
this long-form blog post in to an I-D or on to this mailing list if helpful