WIP! A BB-style forum, on the ATmosphere!
We're still working... we'll be back soon when we have something to show off!
node
typescript
hono
htmx
atproto
1meta {
2 name: Get Theme
3 type: http
4 seq: 2
5}
6
7get {
8 url: {{appview_url}}/api/themes/{{theme_rkey}}
9}
10
11assert {
12 res.status: eq 200
13 res.body.name: isDefined
14 res.body.tokens: isDefined
15 res.body.cid: isDefined
16}
17
18docs {
19 Returns full theme data (name, colorScheme, tokens, cssOverrides, fontUrls, cid)
20 for the theme identified by its rkey (TID).
21
22 The cid field enables CID integrity checking in the theme resolution waterfall
23 (ATB-53): the web server compares the fetched theme's CID against the policy's
24 expected CID to detect stale/mismatched theme records.
25
26 Set the theme_rkey environment variable to a valid theme rkey before running.
27
28 Path params:
29 - rkey: Theme record key (TID, e.g. 3lblexample)
30
31 Returns:
32 {
33 "id": "1",
34 "uri": "at://did:plc:.../space.atbb.forum.theme/3lblexample",
35 "cid": "bafyreib2rxk3rybk3aobmv5cjuql3bm2twh4jo5ufuzl4etccplm56vb5e",
36 "name": "Neobrutal Light",
37 "colorScheme": "light",
38 "tokens": { "color-bg": "#f5f0e8", "color-text": "#1a1a1a" },
39 "cssOverrides": null,
40 "fontUrls": null,
41 "createdAt": "2026-03-01T00:00:00.000Z",
42 "indexedAt": "2026-03-01T00:00:00.000Z"
43 }
44
45 Error codes:
46 - 400: Invalid rkey (empty)
47 - 404: Theme not found
48 - 500: Server error
49 - 503: Database temporarily unavailable
50}