Part of Stem. This page defines the ListSpaces method of the sync RPC specification. A client uses it to learn what a site or a trusted peer holds before choosing scopes.
The formal schema is attached as the schemaDefinition of this page: a struct {key, input, output} with key pinned to ListSpaces.
Lists the spaces a peer can provide, filtered to what the caller may read. Unauthenticated callers see public spaces only.
Input
The input is rpc/type/page.
Output
Rules
A space is listed when the server holds the space root's Node blob and the connection may read that root. An unauthenticated connection sees only spaces whose root is readable by everyone.
Ordering is by the space principal bytes, so pages are stable across calls while nothing changes; a space that appears between pages may be missed until the next full listing.
Listing a space is itself a disclosure of its root Node blob and is recorded as such.
Today (HM24)
HM24's P2P.ListSpaces pages over account roots and, for unauthenticated callers, returns public ones only. Stem's version is the same call with the readers filter instead of the public/private flag.
Example
{"key": "ListSpaces", "input": {"pageSize": 50}}{"spaces": [{"/": {"bytes": "7QEAq1…"}}, {"/": {"bytes": "7QEBz9…"}}], "nextPageToken": null}Do you like what you are reading? Subscribe to receive updates.
Unsubscribe anytime