[Atp] Re: Potential 'at' URI Solution

"Emelia S." <emelia@brandedcode.com> Wed, 28 October 2026 17:40 UTC

Received: from smtp-bc0f.mail.infomaniak.ch (smtp-bc0f.mail.infomaniak.ch [45.157.188.15]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by mx.ietf.org (Postfix) with ESMTPS id 46A8946 for <atp@ietf.org>; Wed, 28 Oct 2026 17:40:26 +0000 (UTC)
Authentication-Results: mx.ietf.org; dkim=pass header.d=brandedcode.com header.s=20250226 header.b="Ks8EK/IS"; spf=pass (mx.ietf.org: domain of emelia@brandedcode.com designates 45.157.188.15 as permitted sender) smtp.mailfrom=emelia@brandedcode.com; dmarc=pass (policy=reject) header.from=brandedcode.com
Received: from smtp-3-0001.mail.infomaniak.ch (smtp-3-0001.mail.infomaniak.ch [10.4.36.108]) by smtp-4-3000.mail.infomaniak.ch (Postfix) with ESMTPS id 4jFF4g1PGMzg1N for <atp@ietf.org>; Wed, 28 Oct 2026 18:40:19 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=brandedcode.com; s=20250226; t=1793209219; bh=cFw+x//csJma0OI6SN8CPdeO5Xy0YrMI8vgojA0ohk8=; h=Subject:From:In-Reply-To:Date:Cc:References:To:From; b=Ks8EK/IS5B3bKIwxduyTaF+Zjxk30J3wdijmO31X+SYFGmeqY4J826dX9yUsiMjS3 UnEFxxzldHMjIy6H5WAU2hF95iB+jCNmBYAA/ikwGkVM2nKQi8SNK62q70ULRSIIiL 0F52accTj9bLANYW05taOYfFaF9ryMl7xQBDhTRTrzmalrMBMv+HG6PxT6SXGsSzcp ydZMQwzbDfDRY8XW+Ki8HGtqCYr7au1+pMqwisrXpLuGAByP5vVK0hqyfAkUEpTCta x3JmxCEXtuzoANJsi3U0gpaRflYHLveX2/ZiDgjBcMT2GYKAjzLv2p9ey6fDtYduA/ jSBggFBHjdv2w==
Received: from unknown by smtp-3-0001.mail.infomaniak.ch (Postfix) with ESMTPA id 4jFF4f1wF9zZCf; Wed, 28 Oct 2026 18:40:18 +0100 (CET)
Content-Type: multipart/alternative; boundary="Apple-Mail=_EF2290CF-6DB0-4E0D-8568-4397546745B7"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3864.700.51.1.1\))
From: "Emelia S." <emelia@brandedcode.com>
In-Reply-To: <CABFYohhoMeMC+MVC=1VQVy=gZkBvDG1j7ejnL=bPbOfz4_gNqQ@mail.gmail.com>
Date: Wed, 28 Oct 2026 18:40:07 +0100
Message-Id: <FEFEB99D-6BA8-4E24-9E47-39D8F9E70855@brandedcode.com>
References: <CABFYohhOuK3cXXdmRtTO=RKXRrrkHWUc33LikGUWajiE6J8g+g@mail.gmail.com> <CABFYohhoMeMC+MVC=1VQVy=gZkBvDG1j7ejnL=bPbOfz4_gNqQ@mail.gmail.com>
To: Bryan Newbold <bryan@blueskyweb.xyz>
X-Mailer: Apple Mail (2.3864.700.51.1.1)
X-Infomaniak-Routing: alpha
X-Spamd-Bar: -------------------------
Message-ID-Hash: 7YO32XQQB357YPQWCTKKM2WTB3BOH7OW
X-Message-ID-Hash: 7YO32XQQB357YPQWCTKKM2WTB3BOH7OW
X-MailFrom: emelia@brandedcode.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: ATP IETF Mailing List <atp@ietf.org>
X-Mailman-Version: 3.3.10
Precedence: list
Subject: [Atp] Re: Potential 'at' URI Solution
List-Id: Authenticated Transfer <atp.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/atp/LCk6Rtskjsoe_bhmJPAXsh6bFvo>
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 all,

Is there actually really a need for two different URI schemes here? It's all AT Protocol data, all that's changing is where it's hosted / how it's access?

what's wrong with at:/<account>/<collection>/ where `collection` may either be a reserved word or a valid NSID

If `collection` is a valid NSID, then the spec defines the further URL segments as:

  at:/<account>/<collection>/<rkey>

And then we could define the `space` reserved word via an extension, which could then define it's own path segments:

  at:/<account>/space/<space-type>/<skey>/<repo-account>/<collection>/<rkey>

I'm not sure why we'd explicitly need two different URI schemes?

(The at:/<authority>/ syntax is a valid URI, it's just at://<authority> that fails due to custom schemes / syntax)

— Emelia

> On 28 Oct 2026, at 18:12, Bryan Newbold <bryan=40blueskyweb.xyz@dmarc.ietf.org> wrote:
> 
> The 'at:space' example had a typo (the '/space/' was accidentally included in the example). It should read:
> 
>   at:space/did:plc:735r43lcgemuv2woqpvx3lso/my.bulletin.board/self/did:plc:735r43lcgemuv2woqpvx3lso/my.bulletin.post/3mtiiz6ci6c2j <http://my.bulletin.post/3mtiiz6ci6c2j>
> 
> Thanks to Nick Gerakines for the sharp eyes.
> 
> --bryan
> 
> On Wed, Oct 28, 2026 at 9:47 AM Bryan Newbold <bryan@blueskyweb.xyz <mailto:bryan@blueskyweb.xyz>> wrote:
>> I have a new 'at' URI scheme syntax/structure proposal that could be a way forward:
>> 
>>   at:public/<account>/<collection>/<rkey>
>>   at:public/did:plc:vwzwgnygau7ed7b7wt5ux7y2/app.bsky.feed.post/3k5nobkf2w72g <http://app.bsky.feed.post/3k5nobkf2w72g>
>> 
>> As a reminder, the current 'at://<account>/...' syntax with double slashes is not a valid IETF URI, nor a valid WHATWG URL. In this proposal we lose the nice idiomatic prefix ('at://'), but keep the account identifiers vebatim, and don't need any escaping or encoding. The general shape is unchanged: a three-tuple of {account, type, key}.
>> 
>> This prefix structure would generalize well to other URIs in the broader atproto ecosystem. For example, design work is wrapping up on "atproto spaces", a protocol extension for non-public data[0]. This is outside the scope of this group's current charter, but assuming all goes well with the current charter we expect to propose it in a future re-charter. Spaces have a dual namespace structure, with two separate three-tuples, and need distinguishable URIs. With feedback from the developer ecosystem we have iterated on a couple different syntaxes (including a new 'ats:' URI scheme), and currently settled on a '/space/' as the first path prefix:
>> 
>>   at://<space-account>/space/<space-type>/<skey>/<repo-account>/<collection>/<rkey>
>>   at://did:plc:735r43lcgemuv2woqpvx3lso/space/my.bulletin.board/self/did:plc:735r43lcgemuv2woqpvx3lso/my.bulletin.post/3mtiiz6ci6c2j <http://my.bulletin.post/3mtiiz6ci6c2j>
>> 
>> This reuses the 'at:' scheme (which we like), but has all the same syntax problems as the current public protocol references (aka, the double-slash), and also has the '/space/' in the middle. Under the new proposed syntax, these could be:
>> 
>>   at:space/<space-account>/<space-type>/<skey>/<repo-account>/<collection>/<rkey>
>>   at:space/did:plc:735r43lcgemuv2woqpvx3lso/space/my.bulletin.board/self/did:plc:735r43lcgemuv2woqpvx3lso/my.bulletin.post/3mtiiz6ci6c2j <http://my.bulletin.post/3mtiiz6ci6c2j>
>> 
>> The use of 'public' for the prefix for regular atproto records could be debated; maybe 'at:repo' would make sense. We would still expect the 'at://' syntax to be supported as a mandatory "legacy" format for all the billions of existing records containing strings in that format, but we would be careful not to call them "URIs".
>> 
>> We have a short time window in which we could adopt the 'at:space' syntax for the atproto spaces beta deployment, which we expect to go live soon after IETF 127 ("by the end of November"). That would sort of hinge on expecting the general pattern to work out as the public data URI syntax as well. It is impossible to come to a formal consensus on this timeframe, but there is time to get feedback on this list and have a discussion at IETF 127. If there is broad support this format, we will likely use it in the spaces beta deployment. If not, we will likely go ahead with the syntactically-invalid 'at://' format, and resolve that problem at the same time as the public data references.
>> 
>> Some questions for the list:
>> 
>> - are there any concerns about this new proposed syntax being a valid and well-formed IETF URI?
>> - how likely is this new syntax likely to be pass scrutiny at the IESG and/or uri-review@ietf.org <mailto:uri-review@ietf.org> phase?
>> - are folks willing to let go of the nice 'at://' prefix?
>> - is it worth the disruption and friction of supporting two syntaxes ("valid URI" and "legacy non-URI") indefinitely?
>> - are there any firm counter-proposals waiting in the wings?
>> - any strong aesthetic or conceptual objections to this new syntax?
>> 
>> --bryan
> _______________________________________________
> Atp mailing list -- atp@ietf.org
> To unsubscribe send an email to atp-leave@ietf.org