{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/brewpage/main/json-schema/brewpage-html-page-schema.json", "title": "BrewPage HTML Page", "description": "An HTML or Markdown page hosted on BrewPage. Created via POST /api/html and addressable at the short URL /{ns}/{id}.", "type": "object", "required": ["id", "namespace", "link", "ownerToken"], "properties": { "id": { "type": "string", "minLength": 10, "maxLength": 10, "description": "10-char short identifier assigned by the server." }, "namespace": { "type": "string", "pattern": "^[a-z0-9-]{1,32}$", "description": "Logical bucket the page lives under. Defaults to `public` when omitted." }, "link": { "type": "string", "format": "uri", "description": "Short, shareable URL of the page: https://brewpage.app/{ns}/{id}." }, "ownerLink": { "type": "string", "format": "uri", "description": "Owner API URL used for updates/deletes." }, "ownerToken": { "type": "string", "description": "Bearer-style owner token returned at creation. Sent as `X-Owner-Token` for mutation." }, "filename": { "type": "string", "maxLength": 200, "description": "Optional filename, used as a title fallback when no