space.highport.sites.tile

lexicons.highport.space

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "itemSchema": {
      "description": "Element type of an array parameter: any #param type except array, with the same constraint fields.",
      "properties": {
        "accept": {
          "items": {
            "type": "string"
          },
          "maxLength": 16,
          "type": "array"
        },
        "enum": {
          "items": {
            "type": "string"
          },
          "maxLength": 64,
          "type": "array"
        },
        "format": {
          "knownValues": [
            "at-identifier",
            "at-uri",
            "cid",
            "datetime",
            "did",
            "handle",
            "language",
            "nsid",
            "record-key",
            "tid",
            "uri"
          ],
          "type": "string"
        },
        "knownValues": {
          "items": {
            "type": "string"
          },
          "maxLength": 64,
          "type": "array"
        },
        "maxGraphemes": {
          "minimum": 1,
          "type": "integer"
        },
        "maxLength": {
          "minimum": 1,
          "type": "integer"
        },
        "maxSize": {
          "minimum": 1,
          "type": "integer"
        },
        "maximum": {
          "type": "integer"
        },
        "minimum": {
          "type": "integer"
        },
        "type": {
          "maxLength": 317,
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    },
    "main": {
      "key": "tid",
      "record": {
        "properties": {
          "content": {
            "description": "The tile's resources. Must have a bundle name and a '/' entry.",
            "ref": "space.highport.sites.defs#manifest",
            "type": "ref"
          },
          "description": {
            "maxGraphemes": 300,
            "maxLength": 3000,
            "type": "string"
          },
          "icon": {
            "accept": [
              "image/png",
              "image/jpeg",
              "image/webp"
            ],
            "maxSize": 1048576,
            "type": "blob"
          },
          "name": {
            "description": "Display name. Limits match the Web Tiles specification.",
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "params": {
            "description": "Parameters a binding site must or may supply. Names must be unique within the tile.",
            "items": {
              "ref": "#param",
              "type": "ref"
            },
            "maxLength": 32,
            "type": "array"
          }
        },
        "required": [
          "name",
          "content"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "param": {
      "description": "A parameter a binding site supplies. type is a Lexicon primitive or an NSID. The constraint fields work like Lexicon's and apply only where Lexicon applies them; using one on a type it does not govern makes the tile invalid.",
      "properties": {
        "accept": {
          "description": "For blob: accepted MIME types, with wildcards as in Lexicon (image/*).",
          "items": {
            "type": "string"
          },
          "maxLength": 16,
          "type": "array"
        },
        "description": {
          "maxLength": 1000,
          "type": "string"
        },
        "enum": {
          "description": "For string: a closed set of allowed values.",
          "items": {
            "type": "string"
          },
          "maxLength": 64,
          "type": "array"
        },
        "format": {
          "description": "For string: a Lexicon string format.",
          "knownValues": [
            "at-identifier",
            "at-uri",
            "cid",
            "datetime",
            "did",
            "handle",
            "language",
            "nsid",
            "record-key",
            "tid",
            "uri"
          ],
          "type": "string"
        },
        "items": {
          "description": "For array: the element type. Required when type is array and not allowed otherwise. An item is never itself an array.",
          "ref": "#itemSchema",
          "type": "ref"
        },
        "knownValues": {
          "description": "For string: an open, advisory set of values.",
          "items": {
            "type": "string"
          },
          "maxLength": 64,
          "type": "array"
        },
        "maxGraphemes": {
          "description": "For string: the maximum graphemes.",
          "minimum": 1,
          "type": "integer"
        },
        "maxLength": {
          "description": "For string, the maximum UTF-8 bytes; for array, the maximum number of items.",
          "minimum": 1,
          "type": "integer"
        },
        "maxSize": {
          "description": "For blob: the maximum size in bytes.",
          "minimum": 1,
          "type": "integer"
        },
        "maximum": {
          "description": "For integer: the maximum value.",
          "type": "integer"
        },
        "minimum": {
          "description": "For integer: the minimum value.",
          "type": "integer"
        },
        "name": {
          "description": "Key in the site record's parameters map. Must match [A-Za-z][A-Za-z0-9_]*, so it cannot start with an underscore.",
          "maxLength": 64,
          "type": "string"
        },
        "required": {
          "description": "Defaults to false. An optional parameter that is left out stays absent, and the tile's code supplies the default.",
          "type": "boolean"
        },
        "type": {
          "description": "One of string, integer, boolean, blob or array, or an NSID naming the $type a value must have. A value of NSID type may also be given by strong reference.",
          "maxLength": 317,
          "type": "string"
        }
      },
      "required": [
        "name",
        "type"
      ],
      "type": "object"
    }
  },
  "description": "A reusable, parameterized web tile: a bundle of static resources that a space.highport.sites.site can bind to a domain by strong reference. Authors publish tiles under a TID key, and a tile is never tied to a domain.",
  "id": "space.highport.sites.tile",
  "lexicon": 1
}

Validate Record

Validate a record against space.highport.sites.tile

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

Metadata

DID
did:plc:ciygg5hma4q7ah2kxaszkyob
CID
bafyreidmjlc2zi6fqeipqkmm4xgeohqqkrt7gp5kqnbxwnsbekrpgnby4u
Indexed At
2026-09-17 17:54 UTC
AT-URI
at://did:plc:ciygg5hma4q7ah2kxaszkyob/com.atproto.lexicon.schema/space.highport.sites.tile

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.

Lexicon Garden

@