space.highport.manage.connectSpace

lexicons.highport.space

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Connect a space so bard can read and publish the authority's site and tile records from it. Only the authority can call this, with a delegation token it issued. Bard trades the token for a credential, registers for notifications, and pulls the authority's repo. Safe to repeat.",
      "errors": [
        {
          "description": "Only the space's authority may connect it.",
          "name": "NotSpaceAuthority"
        },
        {
          "description": "The delegation token was not issued by the caller.",
          "name": "GrantIssuerMismatch"
        },
        {
          "description": "The delegation token has expired.",
          "name": "GrantExpired"
        },
        {
          "description": "The space host refused the exchange.",
          "name": "GrantRefused"
        },
        {
          "description": "The space does not allow bard access yet. The space is recorded and will sync once it does.",
          "name": "AppNotAllowed"
        },
        {
          "description": "This identity has reached its limit of connected spaces.",
          "name": "SpaceQuotaExceeded"
        },
        {
          "description": "Space support is disabled on this deployment.",
          "name": "SpacesDisabled"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "delegationToken": {
              "description": "A delegation token the authority minted for this space. Used once and never stored.",
              "type": "string"
            },
            "space": {
              "description": "The space, at://{authority}/space/space.highport.sites.space/{skey}.",
              "format": "at-uri",
              "type": "string"
            }
          },
          "required": [
            "space",
            "delegationToken"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "ref": "space.highport.defs#spaceView",
          "type": "ref"
        }
      },
      "type": "procedure"
    }
  },
  "id": "space.highport.manage.connectSpace",
  "lexicon": 1
}

Validate Record

Validate a record against space.highport.manage.connectSpace

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:ciygg5hma4q7ah2kxaszkyob
CID
bafyreifjn5zom4yus3ffvptgnaqyo66dzzoef7uufgwtatxh5teclgdlae
Indexed At
2026-09-17 17:49 UTC
AT-URI
at://did:plc:ciygg5hma4q7ah2kxaszkyob/com.atproto.lexicon.schema/space.highport.manage.connectSpace

Version History (2 versions)

Referenced Schemas (1)

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • Give bard a delegation token so it can keep reading a space. Any member can call this with a token they issued. Bard trades it for a credential, renews its notification registration when due, and catches up on anything …

  • Hands the AppView access to one of the requesting user's personal spaces. The client mints a delegation token on its own PDS for the space and passes it here, because a delegation token is single-use and short-lived and…

  • Pull the authority's repo in a space now, instead of waiting for a write notification. Authority only.

  • What bard knows about a connected space: its sync state, when bard's credential expires, and its counts. Available to the space's authority and to viewers (identities with a grant inside the viewer window).

  • Issue a space credential (JWT) for a space the caller is a member of. The credential is multi-use until it expires and is bound to the caller's DPoP key (cnf.jkt, RFC 9449): it must be presented under the DPoP auth sche…

Lexicon Garden

@