pdsx._internal.permissioned
experimental permissioned-data helpers (com.atproto.space.*).
The permissioned-data proposal is still moving and most PDS implementations do
not serve the namespace at all. Everything here is built to degrade cleanly on
those hosts rather than surface a raw HTTP error, so callers can offer the
commands unconditionally.
Detection is necessarily authenticated: PDS implementations run auth middleware
before method dispatch, so an anonymous probe returns 401 on a host that
supports permissioned data and 401 on one that does not. The distinguishing
signal only appears once a request carries credentials.
Proposal: https://github.com/bluesky-social/proposals/tree/main/0016-permissioned-data
Functions
access_jwt
client._session; client.me is a profile view and
has no access_jwt, so reading it from there fails after a successful
login and looks like missing credentials.
_is_unsupported
space_query
NotAuthenticated: if the client has no sessionPermissionedDataUnsupported: if the PDS does not serve the namespace
_describe_error
supports_permissioned_data
list_spaces
list_space_records
get_space_record
Classes
PermissionedDataUnsupported
the target PDS does not serve com.atproto.space.*.
Either the implementation lacks permissioned data entirely or an operator
has disabled it. Both are reported the same way upstream.