social.showcase.collection.collection
Schema Diff
+6 -1
1
1
{
2
2
"id": "social.showcase.collection.collection",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"name",
11
11
"tags",
12
12
"type",
13
13
"items",
14
14
"visibility",
15
15
"createdAt"
16
16
],
17
17
"properties": {
18
18
"name": {
19
19
"type": "string",
20
20
"maxLength": 200,
21
21
"description": "Collection name"
22
22
},
23
23
"tags": {
24
24
"type": "array",
25
25
"items": {
26
26
"type": "string",
27
27
"maxLength": 64
28
28
},
29
29
"maxLength": 10,
30
30
"description": "Tags for discovery (max 10)"
31
31
},
32
32
"type": {
33
33
"type": "string",
34
34
"maxLength": 20,
35
-
"description": "Collection type (bookmark is special/hardcoded)",
35
+
"description": "Collection type: 'custom' = regular collection (user's owned items only), 'bookmark' = bookmark collection (can include other users' items as references)",
36
36
"knownValues": [
37
37
"custom",
38
38
"bookmark"
39
39
]
40
40
},
41
41
"items": {
42
42
"type": "array",
43
43
"items": {
44
44
"ref": "social.showcase.defs#collectionItem",
45
45
"type": "ref"
46
46
},
47
47
"maxLength": 500,
48
48
"description": "Ordered list of items (max 500)"
49
49
},
50
+
"notes": {
51
+
"type": "string",
52
+
"maxLength": 2000,
53
+
"description": "Personal notes about the collection"
54
+
},
50
55
"createdAt": {
51
56
"type": "string",
52
57
"format": "datetime"
53
58
},
54
59
"updatedAt": {
55
60
"type": "string",
56
61
"format": "datetime"
57
62
},
58
63
"coverImage": {
59
64
"type": "blob",
60
65
"accept": [
61
66
"image/png",
62
67
"image/jpeg",
63
68
"image/webp"
64
69
],
65
70
"maxSize": 5000000,
66
71
"description": "Optional custom cover image (1600x900px max, auto-generated if not provided)"
67
72
},
68
73
"visibility": {
69
74
"type": "string",
70
75
"maxLength": 10,
71
76
"knownValues": [
72
77
"public",
73
78
"private"
74
79
]
75
80
},
76
81
"description": {
77
82
"type": "string",
78
83
"maxLength": 1000,
79
84
"description": "Collection description"
80
85
},
81
86
"schemaVersion": {
82
87
"type": "integer",
83
88
"default": 1,
84
89
"description": "Schema version for migrations (defaults to 1 if missing)"
85
90
}
86
91
}
87
92
},
88
93
"description": "Collection record"
89
94
}
90
95
},
91
96
"$type": "com.atproto.lexicon.schema",
92
97
"lexicon": 1
93
98
}