io.atcr.hold.crew

Crew member in a hold's embedded PDS. Grants access permissions to push blobs to the hold. Stored in the hold's embedded PDS (one record per member).

Repository @seamark.cr did:plc:wfj5kyialpmcv2fzk6uqwsln namespace authority
Details · record, key any
Kindrecord
Record keyany
Authorityhold.atcr.io
Indexed
cid bafyreicnukay6rqlxpqfw5qisrfsybj2qhxprmxwtkdzise5a2iokmnldy

Checks

Valid Lint pass
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Crew member in a hold's embedded PDS. Grants access permissions to push blobs to the hold. Stored in the hold's embedded PDS (one record per member).",
      "key": "any",
      "record": {
        "properties": {
          "addedAt": {
            "description": "RFC3339 timestamp of when the member was added",
            "format": "datetime",
            "type": "string"
          },
          "member": {
            "description": "DID of the crew member",
            "format": "did",
            "type": "string"
          },
          "permissions": {
            "description": "Specific permissions granted to this member",
            "items": {
              "maxLength": 64,
              "type": "string"
            },
            "type": "array"
          },
          "role": {
            "description": "Member's role in the hold",
            "knownValues": [
              "owner",
              "admin",
              "write",
              "read"
            ],
            "maxLength": 32,
            "type": "string"
          },
          "tier": {
            "description": "Optional tier for quota limits (e.g., 'deckhand', 'bosun', 'quartermaster'). If empty, uses defaults.new_crew_tier from quotas.yaml.",
            "maxLength": 32,
            "type": "string"
          }
        },
        "required": [
          "member",
          "role",
          "permissions",
          "addedAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "io.atcr.hold.crew",
  "lexicon": 1
}