atproto blogging
1{
2 "lexicon": 1,
3 "id": "app.bsky.embed.images",
4 "description": "A set of images embedded in a Bluesky record (eg, a post).",
5 "defs": {
6 "image": {
7 "type": "object",
8 "required": [
9 "image",
10 "alt"
11 ],
12 "properties": {
13 "alt": {
14 "type": "string",
15 "description": "Alt text description of the image, for accessibility."
16 },
17 "aspectRatio": {
18 "type": "ref",
19 "ref": "app.bsky.embed.defs#aspectRatio"
20 },
21 "image": {
22 "type": "blob",
23 "accept": [
24 "image/*"
25 ],
26 "maxSize": 1000000
27 }
28 }
29 },
30 "main": {
31 "type": "object",
32 "required": [
33 "images"
34 ],
35 "properties": {
36 "images": {
37 "type": "array",
38 "items": {
39 "type": "ref",
40 "ref": "#image"
41 },
42 "maxLength": 4
43 }
44 }
45 },
46 "view": {
47 "type": "object",
48 "required": [
49 "images"
50 ],
51 "properties": {
52 "images": {
53 "type": "array",
54 "items": {
55 "type": "ref",
56 "ref": "#viewImage"
57 },
58 "maxLength": 4
59 }
60 }
61 },
62 "viewImage": {
63 "type": "object",
64 "required": [
65 "thumb",
66 "fullsize",
67 "alt"
68 ],
69 "properties": {
70 "alt": {
71 "type": "string",
72 "description": "Alt text description of the image, for accessibility."
73 },
74 "aspectRatio": {
75 "type": "ref",
76 "ref": "app.bsky.embed.defs#aspectRatio"
77 },
78 "fullsize": {
79 "type": "string",
80 "description": "Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.",
81 "format": "uri"
82 },
83 "thumb": {
84 "type": "string",
85 "description": "Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.",
86 "format": "uri"
87 }
88 }
89 }
90 }
91}