Raw schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Document name. A random slug is generated if omitted."
},
"content": {
"type": "string",
"description": "The HTML, Markdown, MDX, or code body of the document."
},
"content_type": {
"type": "string",
"enum": [
"html",
"md",
"mdx",
"code"
],
"description": "Defaults to html. 'mdx' renders Markdown with JSX components; 'code' renders a single syntax-highlighted block."
},
"language": {
"type": "string",
"description": "Syntax-highlight language hint, used when content_type is 'code' (e.g. 'rust')."
},
"visibility": {
"type": "string",
"enum": [
"private",
"unlisted",
"public"
],
"description": "Defaults to public. private = owner only; unlisted = anyone with the link; public = listed, searchable, and crawlable."
},
"files": {
"type": "array",
"description": "Optional: a multi-file group. When provided, supersedes content/content_type. The entry file is auto-selected (index/readme/main, else first). CROSS-FILE LINKS: to link from one file in the group to another, use a bare relative link to the sibling's filename, exactly as given in this `files` array - e.g. <a href=\"page2.html\">. The viewer intercepts it and switches the active file (updating the left-pane selection and the URL). Do NOT use absolute URLs, slugs, ./ prefixes, or #file- hashes for cross-file links. In-page anchor links within a file (e.g. #section) work as normal.",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"content": {
"type": "string"
},
"language": {
"type": "string"
}
},
"required": [
"name",
"content"
]
}
}
}
}