atproto blogging
1{
2 "lexicon": 1,
3 "id": "sh.weaver.notebook.entry",
4 "defs": {
5 "main": {
6 "type": "record",
7 "description": "A notebook entry",
8 "key": "tid",
9 "record": {
10 "type": "object",
11 "required": ["content", "title", "path", "createdAt"],
12 "properties": {
13 "title": { "type": "ref", "ref": "sh.weaver.notebook.defs#title" },
14 "path": { "type": "ref", "ref": "sh.weaver.notebook.defs#path" },
15 "tags": { "type": "ref", "ref": "sh.weaver.notebook.defs#tags" },
16 "authors": {
17 "type": "array",
18 "items": {
19 "type": "ref",
20 "ref": "sh.weaver.actor.defs#author"
21 }
22 },
23 "content": {
24 "type": "string",
25 "description": "The content of the notebook entry. This should be some flavor of Markdown."
26 },
27 "createdAt": {
28 "type": "string",
29 "format": "datetime",
30 "description": "Client-declared timestamp when this was originally created."
31 },
32 "updatedAt": {
33 "type": "string",
34 "format": "datetime",
35 "description": "Client-declared timestamp of last modification. Used for canonicality tiebreaking in multi-author scenarios."
36 },
37 "contentWarnings": { "type": "ref", "ref": "sh.weaver.notebook.defs#contentWarnings" },
38 "rating": { "type": "ref", "ref": "sh.weaver.notebook.defs#contentRating" },
39 "embeds": {
40 "type": "object",
41 "description": "The set of images and records, if any, embedded in the notebook entry.",
42 "properties": {
43 "images": {
44 "type": "ref",
45 "ref": "sh.weaver.embed.images"
46 },
47 "records": {
48 "type": "ref",
49 "ref": "sh.weaver.embed.records"
50 },
51 "videos": {
52 "type": "ref",
53 "ref": "sh.weaver.embed.video"
54 },
55 "externals": {
56 "type": "ref",
57 "ref": "sh.weaver.embed.external"
58 },
59 "recordsWithMedia": {
60 "type": "array",
61 "items": {
62 "type": "ref",
63 "ref": "sh.weaver.embed.recordWithMedia"
64 }
65 }
66 }
67 }
68 }
69 }
70 }
71 }
72}