{
"id": "chat.yakka.server.info",
"defs": {
"main": {
"key": "literal:self",
"type": "record",
"record": {
"type": "object",
"required": [
"name",
"createdAt"
],
"properties": {
"name": {
"type": "string",
"maxLength": 512,
"maxGraphemes": 64
},
"tint": {
"type": "string",
"maxLength": 32,
"description": "Fallback colour, paired with initials derived from the name when there is no glyph. Presentational only."
},
"glyph": {
"type": "blob",
"accept": [
"image/png",
"image/jpeg",
"image/webp"
],
"maxSize": 1000000,
"description": "The server's icon, as a blob in the directory space. A blob rather than a URL because the image is the server's own data and must travel with it — a URL would make presentation depend on a host outside the protocol."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"description": {
"type": "string",
"maxLength": 2048,
"maxGraphemes": 256
}
}
},
"description": "A server's own presentation. Authority-written into its directory space (ADR 0006), one per server, which is why the key is literal.\n\nNamed `server.info` rather than `server` because `chat.yakka.server` is already the *space type* of a directory space. Reusing the NSID for a collection would leave two different things spelled the same, and this record is the exact analogue of `chat.yakka.channel.info` anyway: the presentation of a space, written by whoever holds authority over it."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}