us.off-the-clock.getMembership

off-the-clock.us

Documentation

Community-wide membership, computed from the records in the management spaces: the same projection this service uses to answer com.atproto.simplespace.checkUserAccess for every space. A trusted service may ask about any DID; a viewer only about themselves. A non-member is an answer, not an error.

main query

Community-wide membership, computed from the records in the management spaces: the same projection this service uses to answer com.atproto.simplespace.checkUserAccess for every space. A trusted service may ask about any DID; a viewer only about themselves. A non-member is an answer, not an error.

Parameters

did string did Required

The account to ask about.

Output

Encodingapplication/json
admin boolean Required

An effective admin: administers every pair.

adminOf array Required

The TIDs of the pairs this DID administers (D35).

did stringdid Required

A decentralized identifier (DID).

invited boolean Optional

A counting grant names this DID but it has not joined yet (D60): it reads nothing and is listed nowhere.

member boolean Required

The community identity, or a DID that has joined: a counting grant and its own acceptance (D60).

spaces array Required

The spaces granted, as <space-type>/<space-id>; the default pair's content space is always included for a member.

Errors

Forbidden The caller may not ask about this DID.
InvalidRequest
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://api.bsky.social)
Parameters
The account to ask about.
View raw schema
{
  "description": "Community-wide membership, computed from the records in the management spaces: the same projection this service uses to answer com.atproto.simplespace.checkUserAccess for every space. A trusted service may ask about any DID; a viewer only about themselves. A non-member is an answer, not an error.",
  "errors": [
    {
      "description": "The caller may not ask about this DID.",
      "name": "Forbidden"
    },
    {
      "name": "InvalidRequest"
    }
  ],
  "output": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "admin": {
          "description": "An effective admin: administers every pair.",
          "type": "boolean"
        },
        "adminOf": {
          "description": "The TIDs of the pairs this DID administers (D35).",
          "items": {
            "format": "tid",
            "type": "string"
          },
          "type": "array"
        },
        "did": {
          "format": "did",
          "type": "string"
        },
        "invited": {
          "description": "A counting grant names this DID but it has not joined yet (D60): it reads nothing and is listed nowhere.",
          "type": "boolean"
        },
        "member": {
          "description": "The community identity, or a DID that has joined: a counting grant and its own acceptance (D60).",
          "type": "boolean"
        },
        "spaces": {
          "description": "The spaces granted, as <space-type>/<space-id>; the default pair's content space is always included for a member.",
          "items": {
            "maxLength": 512,
            "type": "string"
          },
          "type": "array"
        }
      },
      "required": [
        "did",
        "member",
        "admin",
        "adminOf",
        "spaces"
      ],
      "type": "object"
    }
  },
  "parameters": {
    "properties": {
      "did": {
        "description": "The account to ask about.",
        "format": "did",
        "type": "string"
      }
    },
    "required": [
      "did"
    ],
    "type": "params"
  },
  "type": "query"
}

Lexicon Garden

@