place.wisp.subfs

wisp.place

{
  "id": "place.wisp.fs",
  "defs": {
    "file": {
      "type": "object",
      "required": [
        "type",
        "blob"
      ],
      "properties": {
        "blob": {
          "type": "blob",
          "accept": [
            "*/*"
          ],
          "maxSize": 1000000000,
          "description": "Content blob ref"
        },
        "type": {
          "type": "string",
          "const": "file"
        },
        "base64": {
          "type": "boolean",
          "description": "True if blob content is base64-encoded (used to bypass PDS content sniffing)"
        },
        "encoding": {
          "enum": [
            "gzip"
          ],
          "type": "string",
          "description": "Content encoding (e.g., gzip for compressed files)"
        },
        "mimeType": {
          "type": "string",
          "description": "Original MIME type before compression"
        }
      }
    },
    "main": {
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "site",
          "root",
          "createdAt"
        ],
        "properties": {
          "root": {
            "ref": "#directory",
            "type": "ref"
          },
          "site": {
            "type": "string"
          },
          "createdAt": {
            "type": "string",
            "format": "datetime"
          },
          "fileCount": {
            "type": "integer",
            "maximum": 1000,
            "minimum": 0
          }
        }
      },
      "description": "Virtual filesystem manifest for a Wisp site"
    },
    "entry": {
      "type": "object",
      "required": [
        "name",
        "node"
      ],
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 255
        },
        "node": {
          "refs": [
            "#file",
            "#directory",
            "#subfs"
          ],
          "type": "union"
        }
      }
    },
    "subfs": {
      "type": "object",
      "required": [
        "type",
        "subject"
      ],
      "properties": {
        "flat": {
          "type": "boolean",
          "description": "If true (default), the subfs record's root entries are merged (flattened) into the parent directory, replacing the subfs entry. If false, the subfs entries are placed in a subdirectory with the subfs entry's name. Flat merging is useful for splitting large directories across multiple records while maintaining a flat structure."
        },
        "type": {
          "type": "string",
          "const": "subfs"
        },
        "subject": {
          "type": "string",
          "format": "at-uri",
          "description": "AT-URI pointing to a place.wisp.subfs record containing this subtree."
        }
      }
    },
    "directory": {
      "type": "object",
      "required": [
        "type",
        "entries"
      ],
      "properties": {
        "type": {
          "type": "string",
          "const": "directory"
        },
        "entries": {
          "type": "array",
          "items": {
            "ref": "#entry",
            "type": "ref"
          },
          "maxLength": 500
        }
      }
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1
}

Validate Record

Validate a record against place.wisp.subfs

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:7puq73yz2hkvbcpdhnsze2qw
CID
bafyreibgsfoxvvydruy55csm5pdsn5th4zf57b4cchn3frnrhd2ecfia3e
Indexed At
2026-02-13 14:02 UTC
AT-URI
at://did:plc:7puq73yz2hkvbcpdhnsze2qw/com.atproto.lexicon.schema/place.wisp.subfs

Lexicon Garden

@