rsvp.atmo.event.listRecords

atmo.rsvp

Schema Diff

+10 -1

From

CID
bafyreiblj5qbkaj...
Indexed At
2026-04-14 17:40 UTC
View this version

To

CID
bafyreihqbb2pe74...
Indexed At
2026-04-19 17:27 UTC
View this version

Compatibility Analysis

Backward Compatible

No changes detected.

1 1
{
2 2
  "id": "rsvp.atmo.event.listRecords",
3 3
  "defs": {
4 4
    "main": {
5 5
      "type": "query",
6 6
      "output": {
7 7
        "schema": {
8 8
          "type": "object",
9 9
          "required": [
10 10
            "records"
11 11
          ],
12 12
          "properties": {
13 13
            "cursor": {
14 14
              "type": "string"
15 15
            },
16 16
            "records": {
17 17
              "type": "array",
18 18
              "items": {
19 19
                "ref": "#record",
20 20
                "type": "ref"
21 21
              }
22 22
            },
23 23
            "profiles": {
24 24
              "type": "array",
25 25
              "items": {
26 26
                "ref": "#profileEntry",
27 27
                "type": "ref"
28 28
              }
29 29
            }
30 30
          }
31 31
        },
32 32
        "encoding": "application/json"
33 33
      },
34 34
      "parameters": {
35 35
        "type": "params",
36 36
        "properties": {
37 37
          "mode": {
38 38
            "type": "string",
39 39
            "description": "Filter by mode"
40 40
          },
41 41
          "name": {
42 42
            "type": "string",
43 43
            "description": "Filter by name"
44 44
          },
45 45
          "sort": {
46 46
            "type": "string",
47 47
            "description": "Field to sort by (default: time_us)",
48 48
            "knownValues": [
49 49
              "mode",
50 50
              "name",
51 51
              "endsAt",
52 52
              "status",
53 53
              "startsAt",
54 54
              "createdAt",
55 55
              "description",
56 +
              "preferencesShowInDiscovery",
56 57
              "rsvpsCount",
57 58
              "rsvpsInterestedCount",
58 59
              "rsvpsGoingCount",
59 60
              "rsvpsNotgoingCount"
60 61
            ]
61 62
          },
62 63
          "actor": {
63 64
            "type": "string",
64 65
            "format": "at-identifier",
65 66
            "description": "Filter by DID or handle (triggers on-demand backfill)"
66 67
          },
67 68
          "limit": {
68 69
            "type": "integer",
69 70
            "default": 50,
70 71
            "maximum": 200,
71 72
            "minimum": 1
72 73
          },
73 74
          "order": {
74 75
            "type": "string",
75 76
            "description": "Sort direction (default: desc for dates/numbers/counts, asc for strings)",
76 77
            "knownValues": [
77 78
              "asc",
78 79
              "desc"
79 80
            ]
80 81
          },
81 82
          "byUser": {
82 83
            "type": "string",
83 84
            "format": "did",
84 85
            "description": "Only used with spaceUri — filter to records authored by this DID."
85 86
          },
86 87
          "cursor": {
87 88
            "type": "string"
88 89
          },
89 90
          "search": {
90 91
            "type": "string",
91 92
            "description": "Full-text search across: mode, name, status, description"
92 93
          },
93 94
          "status": {
94 95
            "type": "string",
95 96
            "description": "Filter by status"
96 97
          },
97 98
          "profiles": {
98 99
            "type": "boolean",
99 100
            "description": "Include profile + identity info keyed by DID"
100 101
          },
101 102
          "spaceUri": {
102 103
            "type": "string",
103 104
            "format": "at-uri",
104 -
            "description": "If set, query records inside this permissioned space (requires service-auth JWT)."
105 +
            "description": "If set, query records inside this permissioned space (requires service-auth JWT or a read-grant invite token)."
105 106
          },
106 107
          "endsAtMax": {
107 108
            "type": "string",
108 109
            "description": "Maximum value for endsAt"
109 110
          },
110 111
          "endsAtMin": {
111 112
            "type": "string",
112 113
            "description": "Minimum value for endsAt"
113 114
          },
114 115
          "description": {
115 116
            "type": "string",
116 117
            "description": "Filter by description"
117 118
          },
119 +
          "inviteToken": {
120 +
            "type": "string",
121 +
            "description": "Read-grant invite token for anonymous bearer access. Replaces JWT auth when supplied."
122 +
          },
118 123
          "startsAtMax": {
119 124
            "type": "string",
120 125
            "description": "Maximum value for startsAt"
121 126
          },
122 127
          "startsAtMin": {
123 128
            "type": "string",
124 129
            "description": "Minimum value for startsAt"
125 130
          },
126 131
          "createdAtMax": {
127 132
            "type": "string",
128 133
            "description": "Maximum value for createdAt"
129 134
          },
130 135
          "createdAtMin": {
131 136
            "type": "string",
132 137
            "description": "Minimum value for createdAt"
133 138
          },
134 139
          "hydrateRsvps": {
135 140
            "type": "integer",
136 141
            "maximum": 50,
137 142
            "minimum": 1,
138 143
            "description": "Number of rsvps records to embed per record"
139 144
          },
140 145
          "rsvpsCountMin": {
141 146
            "type": "integer",
142 147
            "description": "Minimum total rsvps count"
143 148
          },
144 149
          "rsvpsGoingCountMin": {
145 150
            "type": "integer",
146 151
            "description": "Minimum rsvps count where status = going"
147 152
          },
148 153
          "rsvpsNotgoingCountMin": {
149 154
            "type": "integer",
150 155
            "description": "Minimum rsvps count where status = notgoing"
151 156
          },
152 157
          "rsvpsInterestedCountMin": {
153 158
            "type": "integer",
154 159
            "description": "Minimum rsvps count where status = interested"
160 +
          },
161 +
          "preferencesShowInDiscovery": {
162 +
            "type": "string",
163 +
            "description": "Filter by preferences.showInDiscovery"
155 164
          }
156 165
        }
157 166
      },
158 167
      "description": "Query community.lexicon.calendar.event records with filters"
159 168
    },
160 169
    "record": {
161 170
      "type": "object",
162 171
      "required": [
163 172
        "uri",
164 173
        "did",
165 174
        "collection",
166 175
        "rkey",
167 176
        "time_us"
168 177
      ],
169 178
      "properties": {
170 179
        "cid": {
171 180
          "type": "string"
172 181
        },
173 182
        "did": {
174 183
          "type": "string",
175 184
          "format": "did"
176 185
        },
177 186
        "uri": {
178 187
          "type": "string",
179 188
          "format": "at-uri"
180 189
        },
181 190
        "rkey": {
182 191
          "type": "string"
183 192
        },
184 193
        "rsvps": {
185 194
          "ref": "#hydrateRsvps",
186 195
          "type": "ref"
187 196
        },
188 197
        "space": {
189 198
          "type": "string",
190 199
          "format": "at-uri",
191 200
          "description": "Present when the record was read from a permissioned space; its value is the space URI."
192 201
        },
193 202
        "record": {
194 203
          "ref": "community.lexicon.calendar.event#main",
195 204
          "type": "ref"
196 205
        },
197 206
        "time_us": {
198 207
          "type": "integer"
199 208
        },
200 209
        "collection": {
201 210
          "type": "string",
202 211
          "format": "nsid"
203 212
        },
204 213
        "rsvpsCount": {
205 214
          "type": "integer",
206 215
          "description": "Total rsvps count"
207 216
        },
208 217
        "rsvpsGoingCount": {
209 218
          "type": "integer",
210 219
          "description": "rsvps count where status = going"
211 220
        },
212 221
        "rsvpsNotgoingCount": {
213 222
          "type": "integer",
214 223
          "description": "rsvps count where status = notgoing"
215 224
        },
216 225
        "rsvpsInterestedCount": {
217 226
          "type": "integer",
218 227
          "description": "rsvps count where status = interested"
219 228
        }
220 229
      }
221 230
    },
222 231
    "hydrateRsvps": {
223 232
      "type": "object",
224 233
      "properties": {
225 234
        "going": {
226 235
          "type": "array",
227 236
          "items": {
228 237
            "ref": "#hydrateRsvpsRecord",
229 238
            "type": "ref"
230 239
          }
231 240
        },
232 241
        "other": {
233 242
          "type": "array",
234 243
          "items": {
235 244
            "ref": "#hydrateRsvpsRecord",
236 245
            "type": "ref"
237 246
          }
238 247
        },
239 248
        "notgoing": {
240 249
          "type": "array",
241 250
          "items": {
242 251
            "ref": "#hydrateRsvpsRecord",
243 252
            "type": "ref"
244 253
          }
245 254
        },
246 255
        "interested": {
247 256
          "type": "array",
248 257
          "items": {
249 258
            "ref": "#hydrateRsvpsRecord",
250 259
            "type": "ref"
251 260
          }
252 261
        }
253 262
      }
254 263
    },
255 264
    "profileEntry": {
256 265
      "type": "object",
257 266
      "required": [
258 267
        "did"
259 268
      ],
260 269
      "properties": {
261 270
        "cid": {
262 271
          "type": "string"
263 272
        },
264 273
        "did": {
265 274
          "type": "string",
266 275
          "format": "did"
267 276
        },
268 277
        "uri": {
269 278
          "type": "string",
270 279
          "format": "at-uri"
271 280
        },
272 281
        "rkey": {
273 282
          "type": "string"
274 283
        },
275 284
        "handle": {
276 285
          "type": "string"
277 286
        },
278 287
        "record": {
279 288
          "ref": "#appBskyActorProfile",
280 289
          "type": "ref"
281 290
        },
282 291
        "collection": {
283 292
          "type": "string",
284 293
          "format": "nsid"
285 294
        }
286 295
      }
287 296
    },
288 297
    "hydrateRsvpsRecord": {
289 298
      "type": "object",
290 299
      "required": [
291 300
        "uri",
292 301
        "did",
293 302
        "collection",
294 303
        "rkey",
295 304
        "time_us"
296 305
      ],
297 306
      "properties": {
298 307
        "cid": {
299 308
          "type": "string"
300 309
        },
301 310
        "did": {
302 311
          "type": "string",
303 312
          "format": "did"
304 313
        },
305 314
        "uri": {
306 315
          "type": "string",
307 316
          "format": "at-uri"
308 317
        },
309 318
        "rkey": {
310 319
          "type": "string"
311 320
        },
312 321
        "space": {
313 322
          "type": "string",
314 323
          "format": "at-uri",
315 324
          "description": "Present when the record was read from a permissioned space."
316 325
        },
317 326
        "record": {
318 327
          "ref": "community.lexicon.calendar.rsvp#main",
319 328
          "type": "ref"
320 329
        },
321 330
        "time_us": {
322 331
          "type": "integer"
323 332
        },
324 333
        "collection": {
325 334
          "type": "string",
326 335
          "format": "nsid"
327 336
        }
328 337
      }
329 338
    },
330 339
    "appBskyActorProfile": {
331 340
      "type": "object",
332 341
      "properties": {
333 342
        "avatar": {
334 343
          "type": "blob",
335 344
          "accept": [
336 345
            "image/png",
337 346
            "image/jpeg"
338 347
          ],
339 348
          "maxSize": 1000000,
340 349
          "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'"
341 350
        },
342 351
        "banner": {
343 352
          "type": "blob",
344 353
          "accept": [
345 354
            "image/png",
346 355
            "image/jpeg"
347 356
          ],
348 357
          "maxSize": 1000000,
349 358
          "description": "Larger horizontal image to display behind profile view."
350 359
        },
351 360
        "labels": {
352 361
          "refs": [
353 362
            "com.atproto.label.defs#selfLabels"
354 363
          ],
355 364
          "type": "union",
356 365
          "description": "Self-label values, specific to the Bluesky application, on the overall account."
357 366
        },
358 367
        "website": {
359 368
          "type": "string",
360 369
          "format": "uri"
361 370
        },
362 371
        "pronouns": {
363 372
          "type": "string",
364 373
          "maxLength": 200,
365 374
          "description": "Free-form pronouns text.",
366 375
          "maxGraphemes": 20
367 376
        },
368 377
        "createdAt": {
369 378
          "type": "string",
370 379
          "format": "datetime"
371 380
        },
372 381
        "pinnedPost": {
373 382
          "ref": "com.atproto.repo.strongRef",
374 383
          "type": "ref"
375 384
        },
376 385
        "description": {
377 386
          "type": "string",
378 387
          "maxLength": 2560,
379 388
          "description": "Free-form profile description text.",
380 389
          "maxGraphemes": 256
381 390
        },
382 391
        "displayName": {
383 392
          "type": "string",
384 393
          "maxLength": 640,
385 394
          "maxGraphemes": 64
386 395
        },
387 396
        "joinedViaStarterPack": {
388 397
          "ref": "com.atproto.repo.strongRef",
389 398
          "type": "ref"
390 399
        }
391 400
      }
392 401
    }
393 402
  },
394 403
  "$type": "com.atproto.lexicon.schema",
395 404
  "lexicon": 1
396 405
}

Compare Other Versions

Lexicon Garden

@