app.bsky.actor.defs
Schema Diff
+21 -0
Compatibility Analysis
Backward Compatible
Backward compatible. 8 non-breaking changes.
Non-Breaking Changes (8)
- AddedVertex AddedVertex { vertex_id: "app.bsky.actor.defs#bskyAppStatePref.isBetaUser" }
- AddedVertex AddedVertex { vertex_id: "app.bsky.actor.defs#profileAssociatedChat.allowGroupInvites" }
- AddedVertex AddedVertex { vertex_id: "app.bsky.actor.defs#verificationView.issuerDisplayName" }
- AddedVertex AddedVertex { vertex_id: "app.bsky.actor.defs#verificationView.issuerHandle" }
- AddedEdge AddedEdge { src: "app.bsky.actor.defs#bskyAppStatePref", tgt: "app.bsky.actor.defs#bskyAppStatePref.isBetaUser", kind: "prop", name: Some("isBetaUser") }
- AddedEdge AddedEdge { src: "app.bsky.actor.defs#profileAssociatedChat", tgt: "app.bsky.actor.defs#profileAssociatedChat.allowGroupInvites", kind: "prop", name: Some("allowGroupInvites") }
- AddedEdge AddedEdge { src: "app.bsky.actor.defs#verificationView", tgt: "app.bsky.actor.defs#verificationView.issuerDisplayName", kind: "prop", name: Some("issuerDisplayName") }
- AddedEdge AddedEdge { src: "app.bsky.actor.defs#verificationView", tgt: "app.bsky.actor.defs#verificationView.issuerHandle", kind: "prop", name: Some("issuerHandle") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "app.bsky.actor.defs#bskyAppStatePref.isBetaUser" }AddedVertex { vertex_id: "app.bsky.actor.defs#profileAssociatedChat.allowGroupInvites" }AddedVertex { vertex_id: "app.bsky.actor.defs#verificationView.issuerDisplayName" }AddedVertex { vertex_id: "app.bsky.actor.defs#verificationView.issuerHandle" }
Additional Notes
- Non-breaking: AddedEdge { src: "app.bsky.actor.defs#bskyAppStatePref", tgt: "app.bsky.actor.defs#bskyAppStatePref.isBetaUser", kind: "prop", name: Some("isBetaUser") }
- Non-breaking: AddedEdge { src: "app.bsky.actor.defs#profileAssociatedChat", tgt: "app.bsky.actor.defs#profileAssociatedChat.allowGroupInvites", kind: "prop", name: Some("allowGroupInvites") }
- Non-breaking: AddedEdge { src: "app.bsky.actor.defs#verificationView", tgt: "app.bsky.actor.defs#verificationView.issuerDisplayName", kind: "prop", name: Some("issuerDisplayName") }
- Non-breaking: AddedEdge { src: "app.bsky.actor.defs#verificationView", tgt: "app.bsky.actor.defs#verificationView.issuerHandle", kind: "prop", name: Some("issuerHandle") }
1
1
{
2
2
"id": "app.bsky.actor.defs",
3
3
"defs": {
4
4
"nux": {
5
5
"type": "object",
6
6
"required": [
7
7
"id",
8
8
"completed"
9
9
],
10
10
"properties": {
11
11
"id": {
12
12
"type": "string",
13
13
"maxLength": 100
14
14
},
15
15
"data": {
16
16
"type": "string",
17
17
"maxLength": 3000,
18
18
"description": "Arbitrary data for the NUX. The structure is defined by the NUX itself. Limited to 300 characters.",
19
19
"maxGraphemes": 300
20
20
},
21
21
"completed": {
22
22
"type": "boolean",
23
23
"default": false
24
24
},
25
25
"expiresAt": {
26
26
"type": "string",
27
27
"format": "datetime",
28
28
"description": "The date and time at which the NUX will expire and should be considered completed."
29
29
}
30
30
},
31
31
"description": "A new user experiences (NUX) storage object"
32
32
},
33
33
"mutedWord": {
34
34
"type": "object",
35
35
"required": [
36
36
"value",
37
37
"targets"
38
38
],
39
39
"properties": {
40
40
"id": {
41
41
"type": "string"
42
42
},
43
43
"value": {
44
44
"type": "string",
45
45
"maxLength": 10000,
46
46
"description": "The muted word itself.",
47
47
"maxGraphemes": 1000
48
48
},
49
49
"targets": {
50
50
"type": "array",
51
51
"items": {
52
52
"ref": "app.bsky.actor.defs#mutedWordTarget",
53
53
"type": "ref"
54
54
},
55
55
"description": "The intended targets of the muted word."
56
56
},
57
57
"expiresAt": {
58
58
"type": "string",
59
59
"format": "datetime",
60
60
"description": "The date and time at which the muted word will expire and no longer be applied."
61
61
},
62
62
"actorTarget": {
63
63
"type": "string",
64
64
"default": "all",
65
65
"description": "Groups of users to apply the muted word to. If undefined, applies to all users.",
66
66
"knownValues": [
67
67
"all",
68
68
"exclude-following"
69
69
]
70
70
}
71
71
},
72
72
"description": "A word that the account owner has muted."
73
73
},
74
74
"savedFeed": {
75
75
"type": "object",
76
76
"required": [
77
77
"id",
78
78
"type",
79
79
"value",
80
80
"pinned"
81
81
],
82
82
"properties": {
83
83
"id": {
84
84
"type": "string"
85
85
},
86
86
"type": {
87
87
"type": "string",
88
88
"knownValues": [
89
89
"feed",
90
90
"list",
91
91
"timeline"
92
92
]
93
93
},
94
94
"value": {
95
95
"type": "string"
96
96
},
97
97
"pinned": {
98
98
"type": "boolean"
99
99
}
100
100
}
101
101
},
102
102
"statusView": {
103
103
"type": "object",
104
104
"required": [
105
105
"status",
106
106
"record"
107
107
],
108
108
"properties": {
109
109
"cid": {
110
110
"type": "string",
111
111
"format": "cid"
112
112
},
113
113
"uri": {
114
114
"type": "string",
115
115
"format": "at-uri"
116
116
},
117
117
"embed": {
118
118
"refs": [
119
119
"app.bsky.embed.external#view"
120
120
],
121
121
"type": "union",
122
122
"description": "An optional embed associated with the status."
123
123
},
124
124
"labels": {
125
125
"type": "array",
126
126
"items": {
127
127
"ref": "com.atproto.label.defs#label",
128
128
"type": "ref"
129
129
}
130
130
},
131
131
"record": {
132
132
"type": "unknown"
133
133
},
134
134
"status": {
135
135
"type": "string",
136
136
"description": "The status for the account.",
137
137
"knownValues": [
138
138
"app.bsky.actor.status#live"
139
139
]
140
140
},
141
141
"isActive": {
142
142
"type": "boolean",
143
143
"description": "True if the status is not expired, false if it is expired. Only present if expiration was set."
144
144
},
145
145
"expiresAt": {
146
146
"type": "string",
147
147
"format": "datetime",
148
148
"description": "The date when this status will expire. The application might choose to no longer return the status after expiration."
149
149
},
150
150
"isDisabled": {
151
151
"type": "boolean",
152
152
"description": "True if the user's go-live access has been disabled by a moderator, false otherwise."
153
153
}
154
154
}
155
155
},
156
156
"preferences": {
157
157
"type": "array",
158
158
"items": {
159
159
"refs": [
160
160
"#adultContentPref",
161
161
"#contentLabelPref",
162
162
"#savedFeedsPref",
163
163
"#savedFeedsPrefV2",
164
164
"#personalDetailsPref",
165
165
"#declaredAgePref",
166
166
"#feedViewPref",
167
167
"#threadViewPref",
168
168
"#interestsPref",
169
169
"#mutedWordsPref",
170
170
"#hiddenPostsPref",
171
171
"#bskyAppStatePref",
172
172
"#labelersPref",
173
173
"#postInteractionSettingsPref",
174
174
"#verificationPrefs",
175
175
"#liveEventPreferences"
176
176
],
177
177
"type": "union"
178
178
}
179
179
},
180
180
"profileView": {
181
181
"type": "object",
182
182
"required": [
183
183
"did",
184
184
"handle"
185
185
],
186
186
"properties": {
187
187
"did": {
188
188
"type": "string",
189
189
"format": "did"
190
190
},
191
191
"debug": {
192
192
"type": "unknown",
193
193
"description": "Debug information for internal development"
194
194
},
195
195
"avatar": {
196
196
"type": "string",
197
197
"format": "uri"
198
198
},
199
199
"handle": {
200
200
"type": "string",
201
201
"format": "handle"
202
202
},
203
203
"labels": {
204
204
"type": "array",
205
205
"items": {
206
206
"ref": "com.atproto.label.defs#label",
207
207
"type": "ref"
208
208
}
209
209
},
210
210
"status": {
211
211
"ref": "#statusView",
212
212
"type": "ref"
213
213
},
214
214
"viewer": {
215
215
"ref": "#viewerState",
216
216
"type": "ref"
217
217
},
218
218
"pronouns": {
219
219
"type": "string"
220
220
},
221
221
"createdAt": {
222
222
"type": "string",
223
223
"format": "datetime"
224
224
},
225
225
"indexedAt": {
226
226
"type": "string",
227
227
"format": "datetime"
228
228
},
229
229
"associated": {
230
230
"ref": "#profileAssociated",
231
231
"type": "ref"
232
232
},
233
233
"description": {
234
234
"type": "string",
235
235
"maxLength": 2560,
236
236
"maxGraphemes": 256
237
237
},
238
238
"displayName": {
239
239
"type": "string",
240
240
"maxLength": 640,
241
241
"maxGraphemes": 64
242
242
},
243
243
"verification": {
244
244
"ref": "#verificationState",
245
245
"type": "ref"
246
246
}
247
247
}
248
248
},
249
249
"viewerState": {
250
250
"type": "object",
251
251
"properties": {
252
252
"muted": {
253
253
"type": "boolean"
254
254
},
255
255
"blocking": {
256
256
"type": "string",
257
257
"format": "at-uri"
258
258
},
259
259
"blockedBy": {
260
260
"type": "boolean"
261
261
},
262
262
"following": {
263
263
"type": "string",
264
264
"format": "at-uri"
265
265
},
266
266
"followedBy": {
267
267
"type": "string",
268
268
"format": "at-uri"
269
269
},
270
270
"mutedByList": {
271
271
"ref": "app.bsky.graph.defs#listViewBasic",
272
272
"type": "ref"
273
273
},
274
274
"blockingByList": {
275
275
"ref": "app.bsky.graph.defs#listViewBasic",
276
276
"type": "ref"
277
277
},
278
278
"knownFollowers": {
279
279
"ref": "#knownFollowers",
280
280
"type": "ref",
281
281
"description": "This property is present only in selected cases, as an optimization."
282
282
},
283
283
"activitySubscription": {
284
284
"ref": "app.bsky.notification.defs#activitySubscription",
285
285
"type": "ref",
286
286
"description": "This property is present only in selected cases, as an optimization."
287
287
}
288
288
},
289
289
"description": "Metadata about the requesting account's relationship with the subject account. Only has meaningful content for authed requests."
290
290
},
291
291
"feedViewPref": {
292
292
"type": "object",
293
293
"required": [
294
294
"feed"
295
295
],
296
296
"properties": {
297
297
"feed": {
298
298
"type": "string",
299
299
"description": "The URI of the feed, or an identifier which describes the feed."
300
300
},
301
301
"hideReplies": {
302
302
"type": "boolean",
303
303
"description": "Hide replies in the feed."
304
304
},
305
305
"hideReposts": {
306
306
"type": "boolean",
307
307
"description": "Hide reposts in the feed."
308
308
},
309
309
"hideQuotePosts": {
310
310
"type": "boolean",
311
311
"description": "Hide quote posts in the feed."
312
312
},
313
313
"hideRepliesByLikeCount": {
314
314
"type": "integer",
315
315
"description": "Hide replies in the feed if they do not have this number of likes."
316
316
},
317
317
"hideRepliesByUnfollowed": {
318
318
"type": "boolean",
319
319
"default": true,
320
320
"description": "Hide replies in the feed if they are not by followed users."
321
321
}
322
322
}
323
323
},
324
324
"labelersPref": {
325
325
"type": "object",
326
326
"required": [
327
327
"labelers"
328
328
],
329
329
"properties": {
330
330
"labelers": {
331
331
"type": "array",
332
332
"items": {
333
333
"ref": "#labelerPrefItem",
334
334
"type": "ref"
335
335
}
336
336
}
337
337
}
338
338
},
339
339
"interestsPref": {
340
340
"type": "object",
341
341
"required": [
342
342
"tags"
343
343
],
344
344
"properties": {
345
345
"tags": {
346
346
"type": "array",
347
347
"items": {
348
348
"type": "string",
349
349
"maxLength": 640,
350
350
"maxGraphemes": 64
351
351
},
352
352
"maxLength": 100,
353
353
"description": "A list of tags which describe the account owner's interests gathered during onboarding."
354
354
}
355
355
}
356
356
},
357
357
"knownFollowers": {
358
358
"type": "object",
359
359
"required": [
360
360
"count",
361
361
"followers"
362
362
],
363
363
"properties": {
364
364
"count": {
365
365
"type": "integer"
366
366
},
367
367
"followers": {
368
368
"type": "array",
369
369
"items": {
370
370
"ref": "#profileViewBasic",
371
371
"type": "ref"
372
372
},
373
373
"maxLength": 5,
374
374
"minLength": 0
375
375
}
376
376
},
377
377
"description": "The subject's followers whom you also follow"
378
378
},
379
379
"mutedWordsPref": {
380
380
"type": "object",
381
381
"required": [
382
382
"items"
383
383
],
384
384
"properties": {
385
385
"items": {
386
386
"type": "array",
387
387
"items": {
388
388
"ref": "app.bsky.actor.defs#mutedWord",
389
389
"type": "ref"
390
390
},
391
391
"description": "A list of words the account owner has muted."
392
392
}
393
393
}
394
394
},
395
395
"savedFeedsPref": {
396
396
"type": "object",
397
397
"required": [
398
398
"pinned",
399
399
"saved"
400
400
],
401
401
"properties": {
402
402
"saved": {
403
403
"type": "array",
404
404
"items": {
405
405
"type": "string",
406
406
"format": "at-uri"
407
407
}
408
408
},
409
409
"pinned": {
410
410
"type": "array",
411
411
"items": {
412
412
"type": "string",
413
413
"format": "at-uri"
414
414
}
415
415
},
416
416
"timelineIndex": {
417
417
"type": "integer"
418
418
}
419
419
}
420
420
},
421
421
"threadViewPref": {
422
422
"type": "object",
423
423
"properties": {
424
424
"sort": {
425
425
"type": "string",
426
426
"description": "Sorting mode for threads.",
427
427
"knownValues": [
428
428
"oldest",
429
429
"newest",
430
430
"most-likes",
431
431
"random",
432
432
"hotness"
433
433
]
434
434
}
435
435
}
436
436
},
437
437
"declaredAgePref": {
438
438
"type": "object",
439
439
"properties": {
440
440
"isOverAge13": {
441
441
"type": "boolean",
442
442
"description": "Indicates if the user has declared that they are over 13 years of age."
443
443
},
444
444
"isOverAge16": {
445
445
"type": "boolean",
446
446
"description": "Indicates if the user has declared that they are over 16 years of age."
447
447
},
448
448
"isOverAge18": {
449
449
"type": "boolean",
450
450
"description": "Indicates if the user has declared that they are over 18 years of age."
451
451
}
452
452
},
453
453
"description": "Read-only preference containing value(s) inferred from the user's declared birthdate. Absence of this preference object in the response indicates that the user has not made a declaration."
454
454
},
455
455
"hiddenPostsPref": {
456
456
"type": "object",
457
457
"required": [
458
458
"items"
459
459
],
460
460
"properties": {
461
461
"items": {
462
462
"type": "array",
463
463
"items": {
464
464
"type": "string",
465
465
"format": "at-uri"
466
466
},
467
467
"description": "A list of URIs of posts the account owner has hidden."
468
468
}
469
469
}
470
470
},
471
471
"labelerPrefItem": {
472
472
"type": "object",
473
473
"required": [
474
474
"did"
475
475
],
476
476
"properties": {
477
477
"did": {
478
478
"type": "string",
479
479
"format": "did"
480
480
}
481
481
}
482
482
},
483
483
"mutedWordTarget": {
484
484
"type": "string",
485
485
"maxLength": 640,
486
486
"knownValues": [
487
487
"content",
488
488
"tag"
489
489
],
490
490
"maxGraphemes": 64
491
491
},
492
492
"adultContentPref": {
493
493
"type": "object",
494
494
"required": [
495
495
"enabled"
496
496
],
497
497
"properties": {
498
498
"enabled": {
499
499
"type": "boolean",
500
500
"default": false
501
501
}
502
502
}
503
503
},
504
504
"bskyAppStatePref": {
505
505
"type": "object",
506
506
"properties": {
507
507
"nuxs": {
508
508
"type": "array",
509
509
"items": {
510
510
"ref": "app.bsky.actor.defs#nux",
511
511
"type": "ref"
512
512
},
513
513
"maxLength": 100,
514
514
"description": "Storage for NUXs the user has encountered."
515
515
},
516
+
"isBetaUser": {
517
+
"type": "boolean",
518
+
"description": "Indicates if the user is participating in the beta features program."
519
+
},
516
520
"queuedNudges": {
517
521
"type": "array",
518
522
"items": {
519
523
"type": "string",
520
524
"maxLength": 100
521
525
},
522
526
"maxLength": 1000,
523
527
"description": "An array of tokens which identify nudges (modals, popups, tours, highlight dots) that should be shown to the user."
524
528
},
525
529
"activeProgressGuide": {
526
530
"ref": "#bskyAppProgressGuide",
527
531
"type": "ref"
528
532
}
529
533
},
530
534
"description": "A grab bag of state that's specific to the bsky.app program. Third-party apps shouldn't use this."
531
535
},
532
536
"contentLabelPref": {
533
537
"type": "object",
534
538
"required": [
535
539
"label",
536
540
"visibility"
537
541
],
538
542
"properties": {
539
543
"label": {
540
544
"type": "string"
541
545
},
542
546
"labelerDid": {
543
547
"type": "string",
544
548
"format": "did",
545
549
"description": "Which labeler does this preference apply to? If undefined, applies globally."
546
550
},
547
551
"visibility": {
548
552
"type": "string",
549
553
"knownValues": [
550
554
"ignore",
551
555
"show",
552
556
"warn",
553
557
"hide"
554
558
]
555
559
}
556
560
}
557
561
},
558
562
"profileViewBasic": {
559
563
"type": "object",
560
564
"required": [
561
565
"did",
562
566
"handle"
563
567
],
564
568
"properties": {
565
569
"did": {
566
570
"type": "string",
567
571
"format": "did"
568
572
},
569
573
"debug": {
570
574
"type": "unknown",
571
575
"description": "Debug information for internal development"
572
576
},
573
577
"avatar": {
574
578
"type": "string",
575
579
"format": "uri"
576
580
},
577
581
"handle": {
578
582
"type": "string",
579
583
"format": "handle"
580
584
},
581
585
"labels": {
582
586
"type": "array",
583
587
"items": {
584
588
"ref": "com.atproto.label.defs#label",
585
589
"type": "ref"
586
590
}
587
591
},
588
592
"status": {
589
593
"ref": "#statusView",
590
594
"type": "ref"
591
595
},
592
596
"viewer": {
593
597
"ref": "#viewerState",
594
598
"type": "ref"
595
599
},
596
600
"pronouns": {
597
601
"type": "string"
598
602
},
599
603
"createdAt": {
600
604
"type": "string",
601
605
"format": "datetime"
602
606
},
603
607
"associated": {
604
608
"ref": "#profileAssociated",
605
609
"type": "ref"
606
610
},
607
611
"displayName": {
608
612
"type": "string",
609
613
"maxLength": 640,
610
614
"maxGraphemes": 64
611
615
},
612
616
"verification": {
613
617
"ref": "#verificationState",
614
618
"type": "ref"
615
619
}
616
620
}
617
621
},
618
622
"savedFeedsPrefV2": {
619
623
"type": "object",
620
624
"required": [
621
625
"items"
622
626
],
623
627
"properties": {
624
628
"items": {
625
629
"type": "array",
626
630
"items": {
627
631
"ref": "app.bsky.actor.defs#savedFeed",
628
632
"type": "ref"
629
633
}
630
634
}
631
635
}
632
636
},
633
637
"verificationView": {
634
638
"type": "object",
635
639
"required": [
636
640
"issuer",
637
641
"uri",
638
642
"isValid",
639
643
"createdAt"
640
644
],
641
645
"properties": {
642
646
"uri": {
643
647
"type": "string",
644
648
"format": "at-uri",
645
649
"description": "The AT-URI of the verification record."
646
650
},
647
651
"issuer": {
648
652
"type": "string",
649
653
"format": "did",
650
654
"description": "The user who issued this verification."
651
655
},
652
656
"isValid": {
653
657
"type": "boolean",
654
658
"description": "True if the verification passes validation, otherwise false."
655
659
},
656
660
"createdAt": {
657
661
"type": "string",
658
662
"format": "datetime",
659
663
"description": "Timestamp when the verification was created."
664
+
},
665
+
"issuerHandle": {
666
+
"type": "string",
667
+
"format": "handle",
668
+
"description": "The handle of the issuer."
669
+
},
670
+
"issuerDisplayName": {
671
+
"type": "string",
672
+
"description": "The display name of the issuer."
660
673
}
661
674
},
662
675
"description": "An individual verification for an associated subject."
663
676
},
664
677
"profileAssociated": {
665
678
"type": "object",
666
679
"properties": {
667
680
"chat": {
668
681
"ref": "#profileAssociatedChat",
669
682
"type": "ref"
670
683
},
671
684
"germ": {
672
685
"ref": "#profileAssociatedGerm",
673
686
"type": "ref"
674
687
},
675
688
"lists": {
676
689
"type": "integer"
677
690
},
678
691
"labeler": {
679
692
"type": "boolean"
680
693
},
681
694
"feedgens": {
682
695
"type": "integer"
683
696
},
684
697
"starterPacks": {
685
698
"type": "integer"
686
699
},
687
700
"activitySubscription": {
688
701
"ref": "#profileAssociatedActivitySubscription",
689
702
"type": "ref"
690
703
}
691
704
}
692
705
},
693
706
"verificationPrefs": {
694
707
"type": "object",
695
708
"required": [],
696
709
"properties": {
697
710
"hideBadges": {
698
711
"type": "boolean",
699
712
"default": false,
700
713
"description": "Hide the blue check badges for verified accounts and trusted verifiers."
701
714
}
702
715
},
703
716
"description": "Preferences for how verified accounts appear in the app."
704
717
},
705
718
"verificationState": {
706
719
"type": "object",
707
720
"required": [
708
721
"verifications",
709
722
"verifiedStatus",
710
723
"trustedVerifierStatus"
711
724
],
712
725
"properties": {
713
726
"verifications": {
714
727
"type": "array",
715
728
"items": {
716
729
"ref": "#verificationView",
717
730
"type": "ref"
718
731
},
719
732
"description": "All verifications issued by trusted verifiers on behalf of this user. Verifications by untrusted verifiers are not included."
720
733
},
721
734
"verifiedStatus": {
722
735
"type": "string",
723
736
"description": "The user's status as a verified account.",
724
737
"knownValues": [
725
738
"valid",
726
739
"invalid",
727
740
"none"
728
741
]
729
742
},
730
743
"trustedVerifierStatus": {
731
744
"type": "string",
732
745
"description": "The user's status as a trusted verifier.",
733
746
"knownValues": [
734
747
"valid",
735
748
"invalid",
736
749
"none"
737
750
]
738
751
}
739
752
},
740
753
"description": "Represents the verification information about the user this object is attached to."
741
754
},
742
755
"personalDetailsPref": {
743
756
"type": "object",
744
757
"properties": {
745
758
"birthDate": {
746
759
"type": "string",
747
760
"format": "datetime",
748
761
"description": "The birth date of account owner."
749
762
}
750
763
}
751
764
},
752
765
"profileViewDetailed": {
753
766
"type": "object",
754
767
"required": [
755
768
"did",
756
769
"handle"
757
770
],
758
771
"properties": {
759
772
"did": {
760
773
"type": "string",
761
774
"format": "did"
762
775
},
763
776
"debug": {
764
777
"type": "unknown",
765
778
"description": "Debug information for internal development"
766
779
},
767
780
"avatar": {
768
781
"type": "string",
769
782
"format": "uri"
770
783
},
771
784
"banner": {
772
785
"type": "string",
773
786
"format": "uri"
774
787
},
775
788
"handle": {
776
789
"type": "string",
777
790
"format": "handle"
778
791
},
779
792
"labels": {
780
793
"type": "array",
781
794
"items": {
782
795
"ref": "com.atproto.label.defs#label",
783
796
"type": "ref"
784
797
}
785
798
},
786
799
"status": {
787
800
"ref": "#statusView",
788
801
"type": "ref"
789
802
},
790
803
"viewer": {
791
804
"ref": "#viewerState",
792
805
"type": "ref"
793
806
},
794
807
"website": {
795
808
"type": "string",
796
809
"format": "uri"
797
810
},
798
811
"pronouns": {
799
812
"type": "string"
800
813
},
801
814
"createdAt": {
802
815
"type": "string",
803
816
"format": "datetime"
804
817
},
805
818
"indexedAt": {
806
819
"type": "string",
807
820
"format": "datetime"
808
821
},
809
822
"associated": {
810
823
"ref": "#profileAssociated",
811
824
"type": "ref"
812
825
},
813
826
"pinnedPost": {
814
827
"ref": "com.atproto.repo.strongRef",
815
828
"type": "ref"
816
829
},
817
830
"postsCount": {
818
831
"type": "integer"
819
832
},
820
833
"description": {
821
834
"type": "string",
822
835
"maxLength": 2560,
823
836
"maxGraphemes": 256
824
837
},
825
838
"displayName": {
826
839
"type": "string",
827
840
"maxLength": 640,
828
841
"maxGraphemes": 64
829
842
},
830
843
"followsCount": {
831
844
"type": "integer"
832
845
},
833
846
"verification": {
834
847
"ref": "#verificationState",
835
848
"type": "ref"
836
849
},
837
850
"followersCount": {
838
851
"type": "integer"
839
852
},
840
853
"joinedViaStarterPack": {
841
854
"ref": "app.bsky.graph.defs#starterPackViewBasic",
842
855
"type": "ref"
843
856
}
844
857
}
845
858
},
846
859
"bskyAppProgressGuide": {
847
860
"type": "object",
848
861
"required": [
849
862
"guide"
850
863
],
851
864
"properties": {
852
865
"guide": {
853
866
"type": "string",
854
867
"maxLength": 100
855
868
}
856
869
},
857
870
"description": "If set, an active progress guide. Once completed, can be set to undefined. Should have unspecced fields tracking progress."
858
871
},
859
872
"liveEventPreferences": {
860
873
"type": "object",
861
874
"properties": {
862
875
"hideAllFeeds": {
863
876
"type": "boolean",
864
877
"default": false,
865
878
"description": "Whether to hide all feeds from live events."
866
879
},
867
880
"hiddenFeedIds": {
868
881
"type": "array",
869
882
"items": {
870
883
"type": "string"
871
884
},
872
885
"description": "A list of feed IDs that the user has hidden from live events."
873
886
}
874
887
},
875
888
"description": "Preferences for live events."
876
889
},
877
890
"profileAssociatedChat": {
878
891
"type": "object",
879
892
"required": [
880
893
"allowIncoming"
881
894
],
882
895
"properties": {
883
896
"allowIncoming": {
884
897
"type": "string",
885
898
"knownValues": [
886
899
"all",
887
900
"none",
888
901
"following"
889
902
]
903
+
},
904
+
"allowGroupInvites": {
905
+
"type": "string",
906
+
"knownValues": [
907
+
"all",
908
+
"none",
909
+
"following"
910
+
]
890
911
}
891
912
}
892
913
},
893
914
"profileAssociatedGerm": {
894
915
"type": "object",
895
916
"required": [
896
917
"showButtonTo",
897
918
"messageMeUrl"
898
919
],
899
920
"properties": {
900
921
"messageMeUrl": {
901
922
"type": "string",
902
923
"format": "uri"
903
924
},
904
925
"showButtonTo": {
905
926
"type": "string",
906
927
"knownValues": [
907
928
"usersIFollow",
908
929
"everyone"
909
930
]
910
931
}
911
932
}
912
933
},
913
934
"postInteractionSettingsPref": {
914
935
"type": "object",
915
936
"required": [],
916
937
"properties": {
917
938
"threadgateAllowRules": {
918
939
"type": "array",
919
940
"items": {
920
941
"refs": [
921
942
"app.bsky.feed.threadgate#mentionRule",
922
943
"app.bsky.feed.threadgate#followerRule",
923
944
"app.bsky.feed.threadgate#followingRule",
924
945
"app.bsky.feed.threadgate#listRule"
925
946
],
926
947
"type": "union"
927
948
},
928
949
"maxLength": 5,
929
950
"description": "Matches threadgate record. List of rules defining who can reply to this users posts. If value is an empty array, no one can reply. If value is undefined, anyone can reply."
930
951
},
931
952
"postgateEmbeddingRules": {
932
953
"type": "array",
933
954
"items": {
934
955
"refs": [
935
956
"app.bsky.feed.postgate#disableRule"
936
957
],
937
958
"type": "union"
938
959
},
939
960
"maxLength": 5,
940
961
"description": "Matches postgate record. List of rules defining who can embed this users posts. If value is an empty array or is undefined, no particular rules apply and anyone can embed."
941
962
}
942
963
},
943
964
"description": "Default post interaction settings for the account. These values should be applied as default values when creating new posts. These refs should mirror the threadgate and postgate records exactly."
944
965
},
945
966
"profileAssociatedActivitySubscription": {
946
967
"type": "object",
947
968
"required": [
948
969
"allowSubscriptions"
949
970
],
950
971
"properties": {
951
972
"allowSubscriptions": {
952
973
"type": "string",
953
974
"knownValues": [
954
975
"followers",
955
976
"mutuals",
956
977
"none"
957
978
]
958
979
}
959
980
}
960
981
}
961
982
},
962
983
"$type": "com.atproto.lexicon.schema",
963
984
"lexicon": 1
964
985
}