···11+{
22+ "id": "site.standard.document",
33+ "defs": {
44+ "main": {
55+ "key": "tid",
66+ "type": "record",
77+ "record": {
88+ "type": "object",
99+ "required": ["site", "title", "publishedAt"],
1010+ "properties": {
1111+ "path": {
1212+ "type": "string",
1313+ "description": "Combine with site or publication url to construct a canonical URL to the document. Prepend with a leading slash."
1414+ },
1515+ "site": {
1616+ "type": "string",
1717+ "format": "uri",
1818+ "description": "Points to a publication record (at://) or a publication url (https://) for loose documents. Avoid trailing slashes."
1919+ },
2020+ "tags": {
2121+ "type": "array",
2222+ "items": {
2323+ "type": "string"
2424+ },
2525+ "maxLength": 1280,
2626+ "description": "Array of strings used to tag or categorize the document. Avoid prepending tags with hashtags.",
2727+ "maxGraphemes": 128
2828+ },
2929+ "title": {
3030+ "type": "string",
3131+ "maxLength": 5000,
3232+ "description": "Title of the document.",
3333+ "maxGraphemes": 500
3434+ },
3535+ "content": {
3636+ "refs": [],
3737+ "type": "union",
3838+ "closed": false,
3939+ "description": "Open union used to define the record's content. Each entry must specify a $type and may be extended with other lexicons to support additional content formats."
4040+ },
4141+ "updatedAt": {
4242+ "type": "string",
4343+ "format": "datetime",
4444+ "description": "Timestamp of the documents last edit."
4545+ },
4646+ "coverImage": {
4747+ "type": "blob",
4848+ "accept": ["image/*"],
4949+ "maxSize": 1000000,
5050+ "description": "Image to used for thumbnail or cover image. Less than 1MB is size."
5151+ },
5252+ "bskyPostRef": {
5353+ "ref": "com.atproto.repo.strongRef",
5454+ "type": "ref",
5555+ "description": "Strong reference to a Bluesky post. Useful to keep track of comments off-platform."
5656+ },
5757+ "description": {
5858+ "type": "string",
5959+ "maxLength": 30000,
6060+ "description": "A brief description or excerpt from the document.",
6161+ "maxGraphemes": 3000
6262+ },
6363+ "publishedAt": {
6464+ "type": "string",
6565+ "format": "datetime",
6666+ "description": "Timestamp of the documents publish time."
6767+ },
6868+ "textContent": {
6969+ "type": "string",
7070+ "description": "Plaintext representation of the documents contents. Should not contain markdown or other formatting."
7171+ }
7272+ }
7373+ },
7474+ "description": "A document record representing a published article, blog post, or other content. Documents can belong to a publication or exist independently."
7575+ }
7676+ },
7777+ "$type": "com.atproto.lexicon.schema",
7878+ "lexicon": 1
7979+}