dev.knotless.orgMember

lexicons.knotless.dev

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Keyed by the DID of the account it names, in the organization's account, in one place: its public records for a member anyone may see; or, where its PDS has spaces, its space of type dev.knotless.org keyed self, which only its members read, for an invitation or a hidden member. The account is a member once it keeps a dev.knotless.orgAcceptance record naming the organization, in the same place, and the organization has taken it in (joinedAt); until then it is invited, until expiresAt. In a private repository's space, a member of the organization that owns it who pushes to it. One keyed other than by the DID it names names no one.",
      "key": "any",
      "record": {
        "properties": {
          "expiresAt": {
            "description": "When the invitation lapses, if not taken up first: 7 days after invitedAt when absent.",
            "format": "datetime",
            "type": "string"
          },
          "invitedAt": {
            "description": "When they were invited.",
            "format": "datetime",
            "type": "string"
          },
          "joinedAt": {
            "description": "When the organization took them in, after they wrote their acceptance record: a acceptance record counts only once this is set.",
            "format": "datetime",
            "type": "string"
          },
          "member": {
            "description": "The account invited.",
            "format": "did",
            "type": "string"
          },
          "roles": {
            "description": "What they may do. None is a member.",
            "items": {
              "ref": "#role",
              "type": "ref"
            },
            "maxLength": 16,
            "type": "array"
          },
          "shared": {
            "description": "In a private repository's space only: the repository was shared with them on its own as well, so they stay in its space once out of the organization.",
            "type": "boolean"
          }
        },
        "required": [
          "member",
          "invitedAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "role": {
      "description": "One role an organization gives a member.",
      "properties": {
        "role": {
          "description": "An admin also invites and removes members, changes roles and makes repositories as the organization. A value a reader does not know reads as member.",
          "knownValues": [
            "admin",
            "member"
          ],
          "maxLength": 64,
          "type": "string"
        }
      },
      "required": [
        "role"
      ],
      "type": "object"
    }
  },
  "description": "An organization's side of its membership: an account it invited, and their roles.",
  "id": "dev.knotless.orgMember",
  "lexicon": 1
}

Validate Record

Validate a record against dev.knotless.orgMember

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:yqsg7znbbhfmj3a2nrpnaerk
CID
bafyreiagxato6qx4faxqonvmrqew3xhmz6buafperw7t26qsv3ok6nml3a
Indexed At
2026-10-29 17:40 UTC
AT-URI
at://did:plc:yqsg7znbbhfmj3a2nrpnaerk/com.atproto.lexicon.schema/dev.knotless.orgMember

Version History (2 versions)

Similar Lexicons

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

  • A member's side of an organization's membership: that they accepted its invitation, and are a member while they keep it.

  • An organization's members on knotless.

  • Invites an account to an organization, or changes a member's role, through the gateway the organization delegated writes to, which writes as the organization. The caller must be an admin of it who joined. Requires a ser…

  • That an account is an organization on knotless.

  • Takes the caller into an organization that invited them, once they keep a dev.knotless.orgAcceptance record naming it, through the gateway the organization delegated writes to: names them in its public record when their…

Lexicon Garden

@