Which parts of a site require a signed-in reader, and which readers qualify. Absent means nothing is gated and the owner budget decides every path, which suits most sites. This is content policy, not billing: it lives in the record, so it moves with the site and anyone can read it.
Properties
Who the requireAuth paths are for. Absent means any signed-in reader. Only meaningful alongside requireAuth. The union is closed so that a host which does not recognize an audience rejects the record instead of opening the gate to everyone.
Path prefixes that always require a signed-in reader and always bill that reader, whatever the owner budget says. Matched against the normalized request path, so a prefix covers everything under it. "/" gates the whole site, the same as an owner budget of zero.
maxLength: 64 items
View raw schema
{
"type": "object",
"properties": {
"audience": {
"refs": [
"space.highport.sites.defs#spaceMembers"
],
"type": "union",
"closed": true,
"description": "Who the requireAuth paths are for. Absent means any signed-in reader. Only meaningful alongside requireAuth. The union is closed so that a host which does not recognize an audience rejects the record instead of opening the gate to everyone."
},
"requireAuth": {
"type": "array",
"items": {
"type": "string",
"maxLength": 1024
},
"maxLength": 64,
"description": "Path prefixes that always require a signed-in reader and always bill that reader, whatever the owner budget says. Matched against the normalized request path, so a prefix covers everything under it. \"/\" gates the whole site, the same as an owner budget of zero."
}
},
"description": "Which parts of a site require a signed-in reader, and which readers qualify. Absent means nothing is gated and the owner budget decides every path, which suits most sites. This is content policy, not billing: it lives in the record, so it moves with the site and anyone can read it."
}
A bundle of resources keyed by path, using bard's camelCase subset of a MASL bundle-mode document. It is a site's inline source or a tile's content.
Properties
Bundle name. Required for tile content, optional for an inline site source.
maxLength: 1000 bytesmaxGraphemes: 100 graphemes
Map of absolute request path (starting with '/') to space.highport.sites.defs#resource, since Lexicon has no map type. Tile content must have a '/' entry, and sites should.
View raw schema
{
"type": "object",
"required": [
"resources"
],
"properties": {
"name": {
"type": "string",
"maxLength": 1000,
"description": "Bundle name. Required for tile content, optional for an inline site source.",
"maxGraphemes": 100
},
"resources": {
"type": "unknown",
"description": "Map of absolute request path (starting with '/') to space.highport.sites.defs#resource, since Lexicon has no map type. Tile content must have a '/' entry, and sites should."
}
},
"description": "A bundle of resources keyed by path, using bard's camelCase subset of a MASL bundle-mode document. It is a site's inline source or a tile's content."
}
No description available.
Properties
The request path to match, optionally with a query string. Must match exactly.
maxLength: 2048 bytes
Redirect status. Defaults to 302.
Destination path. Must be an absolute path that exists as a manifest key on this site.
maxLength: 2048 bytes
View raw schema
{
"type": "object",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"maxLength": 2048,
"description": "Destination path. Must be an absolute path that exists as a manifest key on this site."
},
"from": {
"type": "string",
"maxLength": 2048,
"description": "The request path to match, optionally with a query string. Must match exactly."
},
"status": {
"type": "integer",
"description": "Redirect status. Defaults to 302.",
"knownValues": [
301,
302,
307,
308
]
}
}
}
One addressable resource in a manifest.
Properties
The encoding the stored blob already has. The origin serves it unchanged, with a matching Content-Encoding header.
Known values: gzip, br, zstd, identity
Content type to serve instead of the blob's mimeType.
maxLength: 255 bytes
The blob holding this resource's bytes.
Response status. Defaults to 200 for manifest entries and 404 for the notFound resource.
View raw schema
{
"type": "object",
"required": [
"src"
],
"properties": {
"src": {
"type": "blob",
"description": "The blob holding this resource's bytes."
},
"status": {
"type": "integer",
"description": "Response status. Defaults to 200 for manifest entries and 404 for the notFound resource.",
"knownValues": [
200,
404,
410
]
},
"contentType": {
"type": "string",
"maxLength": 255,
"description": "Content type to serve instead of the blob's mimeType."
},
"contentEncoding": {
"type": "string",
"description": "The encoding the stored blob already has. The origin serves it unchanged, with a matching Content-Encoding header.",
"knownValues": [
"gzip",
"br",
"zstd",
"identity"
]
}
},
"description": "One addressable resource in a manifest."
}
The members of the space this site lives in, as the space's host reports them. Only valid on a site served from a space, and rejected (not ignored) anywhere else. The record lists no members; the space's host is asked.
This object has no properties defined.
View raw schema
{
"type": "object",
"properties": {},
"description": "The members of the space this site lives in, as the space's host reports them. Only valid on a site served from a space, and rejected (not ignored) anywhere else. The record lists no members; the space's host is asked."
}
Controls the responses bard generates under /.well-known/. Both flags default to true and exist only to turn things off. standardSitePublication is absent unless the publisher sets it.
Properties
Serve GET /.well-known/atproto-did with the site's owning DID. Default true.
Serve GET /.well-known/rasl/{cid} for every CID this site references. Default true.
Serve GET /.well-known/site.standard.publication with this AT-URI. It must name a site.standard.publication record in the site owner's repository whose url host is this domain, or the site record is rejected at indexing. While set, a manifest entry at that path is rejected.
View raw schema
{
"type": "object",
"properties": {
"rasl": {
"type": "boolean",
"description": "Serve GET /.well-known/rasl/{cid} for every CID this site references. Default true."
},
"atproto": {
"type": "boolean",
"description": "Serve GET /.well-known/atproto-did with the site's owning DID. Default true."
},
"standardSitePublication": {
"type": "string",
"format": "at-uri",
"description": "Serve GET /.well-known/site.standard.publication with this AT-URI. It must name a site.standard.publication record in the site owner's repository whose url host is this domain, or the site record is rejected at indexing. While set, a manifest entry at that path is rejected."
}
},
"description": "Controls the responses bard generates under /.well-known/. Both flags default to true and exist only to turn things off. standardSitePublication is absent unless the publisher sets it."
}