id.sifa.getProfileView

sifa.id

Schema Diff

+6 -0

From

CID
bafyreieqk4xkcnh...
Indexed At
2026-09-25 21:44 UTC
View this version

To

CID
bafyreigtbx426d6...
Indexed At
2026-09-25 22:02 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 2 non-breaking changes.

Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "id.sifa.getProfileView#educationView.eqfLevel" }
  • AddedEdge AddedEdge { src: "id.sifa.getProfileView#educationView", tgt: "id.sifa.getProfileView#educationView.eqfLevel", kind: "prop", name: Some("eqfLevel") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "id.sifa.getProfileView#educationView.eqfLevel" }

Additional Notes

  • Non-breaking: AddedEdge { src: "id.sifa.getProfileView#educationView", tgt: "id.sifa.getProfileView#educationView.eqfLevel", kind: "prop", name: Some("eqfLevel") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "activeAppView": {
5 5
      "description": "An AT Protocol app the account has recently created records in.",
6 6
      "properties": {
7 7
        "category": {
8 8
          "description": "App category.",
9 9
          "type": "string"
10 10
        },
11 11
        "id": {
12 12
          "description": "App identifier.",
13 13
          "type": "string"
14 14
        },
15 15
        "latestRecordAt": {
16 16
          "description": "Timestamp of the latest record.",
17 17
          "format": "datetime",
18 18
          "type": "string"
19 19
        },
20 20
        "name": {
21 21
          "description": "App display name.",
22 22
          "type": "string"
23 23
        },
24 24
        "recentCount": {
25 25
          "description": "Recent record count.",
26 26
          "type": "integer"
27 27
        }
28 28
      },
29 29
      "required": [
30 30
        "id",
31 31
        "name"
32 32
      ],
33 33
      "type": "object"
34 34
    },
35 35
    "atfundLink": {
36 36
      "description": "A contribution or funding link.",
37 37
      "properties": {
38 38
        "label": {
39 39
          "description": "Optional display label.",
40 40
          "type": "string"
41 41
        },
42 42
        "url": {
43 43
          "description": "Contribution URL.",
44 44
          "format": "uri",
45 45
          "type": "string"
46 46
        }
47 47
      },
48 48
      "required": [
49 49
        "url"
50 50
      ],
51 51
      "type": "object"
52 52
    },
53 53
    "certificationView": {
54 54
      "description": "A certification or license.",
55 55
      "properties": {
56 56
        "agentRef": {
57 57
          "description": "Canonical issuing-authority reference (name plus optional did/entityRef). Mirrors the flat authority/entityRef fields during the migration; the two always agree.",
58 58
          "ref": "id.sifa.defs#agentRef",
59 59
          "type": "ref"
60 60
        },
61 61
        "credentialUrl": {
62 62
          "description": "URL of the credential.",
63 63
          "format": "uri",
64 64
          "type": "string"
65 65
        },
66 66
        "currentCompanyName": {
67 67
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
68 68
          "type": "string"
69 69
        },
70 70
        "entityRef": {
71 71
          "description": "Pointer URI to the resolved issuer entity.",
72 72
          "format": "uri",
73 73
          "type": "string"
74 74
        },
75 75
        "expiryDate": {
76 76
          "description": "Expiry date. Partial date.",
77 77
          "type": "string"
78 78
        },
79 79
        "issueDate": {
80 80
          "description": "Issue date. Partial date.",
81 81
          "type": "string"
82 82
        },
83 83
        "issuingOrg": {
84 84
          "description": "Issuing organization.",
85 85
          "type": "string"
86 86
        },
87 87
        "name": {
88 88
          "description": "Certification name.",
89 89
          "type": "string"
90 90
        },
91 91
        "rkey": {
92 92
          "description": "Record key of the certification record.",
93 93
          "type": "string"
94 94
        }
95 95
      },
96 96
      "required": [
97 97
        "rkey",
98 98
        "name"
99 99
      ],
100 100
      "type": "object"
101 101
    },
102 102
    "coSpeakerView": {
103 103
      "description": "A co-speaker on a presentation delivery.",
104 104
      "properties": {
105 105
        "avatar": {
106 106
          "description": "Avatar URL, when linked.",
107 107
          "format": "uri",
108 108
          "type": "string"
109 109
        },
110 110
        "did": {
111 111
          "description": "DID of the co-speaker, when linked to a Sifa profile.",
112 112
          "format": "did",
113 113
          "type": "string"
114 114
        },
115 115
        "displayName": {
116 116
          "description": "Display name, when linked.",
117 117
          "type": "string"
118 118
        },
119 119
        "handle": {
120 120
          "description": "Handle, when linked.",
121 121
          "format": "handle",
122 122
          "type": "string"
123 123
        },
124 124
        "name": {
125 125
          "description": "Free-text co-speaker name, when not linked.",
126 126
          "type": "string"
127 127
        }
128 128
      },
129 129
      "type": "object"
130 130
    },
131 131
    "contributorView": {
132 132
      "description": "A linked publication contributor.",
133 133
      "properties": {
134 134
        "did": {
135 135
          "description": "Sifa/AT Protocol DID, when linked.",
136 136
          "format": "did",
137 137
          "type": "string"
138 138
        },
139 139
        "handle": {
140 140
          "description": "Handle, when linked.",
141 141
          "format": "handle",
142 142
          "type": "string"
143 143
        },
144 144
        "name": {
145 145
          "description": "Contributor name.",
146 146
          "type": "string"
147 147
        },
148 148
        "orcidId": {
149 149
          "description": "ORCID identifier.",
150 150
          "type": "string"
151 151
        }
152 152
      },
153 153
      "required": [
154 154
        "name"
155 155
      ],
156 156
      "type": "object"
157 157
    },
158 158
    "courseView": {
159 159
      "description": "A course entry.",
160 160
      "properties": {
161 161
        "agentRef": {
162 162
          "description": "Canonical institution reference (name plus optional did/entityRef). Mirrors the flat institution/entityRef fields during the migration; the two always agree.",
163 163
          "ref": "id.sifa.defs#agentRef",
164 164
          "type": "ref"
165 165
        },
166 166
        "completedAt": {
167 167
          "description": "Completion date of a taken course (YYYY-MM or YYYY-MM-DD).",
168 168
          "type": "string"
169 169
        },
170 170
        "credentialRkey": {
171 171
          "description": "Record key of a linked certification, when present.",
172 172
          "type": "string"
173 173
        },
174 174
        "currentCompanyName": {
175 175
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
176 176
          "type": "string"
177 177
        },
178 178
        "educationRkey": {
179 179
          "description": "Record key of the linked education record the course was part of, when present.",
180 180
          "type": "string"
181 181
        },
182 182
        "endedAt": {
183 183
          "description": "When the user last taught the course; absent if ongoing.",
184 184
          "type": "string"
185 185
        },
186 186
        "entityRef": {
187 187
          "description": "Pointer URI to the resolved institution entity.",
188 188
          "format": "uri",
189 189
          "type": "string"
190 190
        },
191 191
        "institution": {
192 192
          "description": "Institution name.",
193 193
          "type": "string"
194 194
        },
195 195
        "name": {
196 196
          "description": "Course name.",
197 197
          "type": "string"
198 198
        },
199 199
        "number": {
200 200
          "description": "Course number or code.",
201 201
          "type": "string"
202 202
        },
203 203
        "positionRkey": {
204 204
          "description": "Record key of the linked position the course was part of, when present.",
205 205
          "type": "string"
206 206
        },
207 207
        "rkey": {
208 208
          "description": "Record key of the course record.",
209 209
          "type": "string"
210 210
        },
211 211
        "role": {
212 212
          "description": "The user's role in the course (id.sifa.defs#courseRole). Absent means taken.",
213 213
          "type": "string"
214 214
        },
215 215
        "startedAt": {
216 216
          "description": "When the user started teaching the course (YYYY, YYYY-MM or YYYY-MM-DD).",
217 217
          "type": "string"
218 218
        }
219 219
      },
220 220
      "required": [
221 221
        "rkey",
222 222
        "name"
223 223
      ],
224 224
      "type": "object"
225 225
    },
226 226
    "durationView": {
227 227
      "description": "A duration range in minutes.",
228 228
      "properties": {
229 229
        "maxMinutes": {
230 230
          "description": "Maximum duration in minutes.",
231 231
          "type": "integer"
232 232
        },
233 233
        "minMinutes": {
234 234
          "description": "Minimum duration in minutes.",
235 235
          "type": "integer"
236 236
        }
237 237
      },
238 238
      "required": [
239 239
        "minMinutes"
240 240
      ],
241 241
      "type": "object"
242 242
    },
243 243
    "educationView": {
244 244
      "description": "An education-history entry.",
245 245
      "properties": {
246 246
        "activities": {
247 247
          "description": "Activities and societies.",
248 248
          "type": "string"
249 249
        },
250 250
        "agentRef": {
251 251
          "description": "Canonical institution reference (name plus optional did/entityRef). Mirrors the flat institution/institutionDid/entityRef fields during the migration; the two always agree.",
252 252
          "ref": "id.sifa.defs#agentRef",
253 253
          "type": "ref"
254 254
        },
255 255
        "currentCompanyName": {
256 256
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
257 257
          "type": "string"
258 258
        },
259 259
        "degree": {
260 260
          "description": "Degree earned.",
261 261
          "type": "string"
262 262
        },
263 263
        "description": {
264 264
          "description": "Additional description.",
265 265
          "type": "string"
266 266
        },
267 267
        "endedAt": {
268 268
          "description": "End date. Partial date.",
269 269
          "type": "string"
270 270
        },
271 271
        "entityRef": {
272 272
          "description": "Pointer URI to the resolved institution entity.",
273 273
          "format": "uri",
274 274
          "type": "string"
275 275
        },
276 +
        "eqfLevel": {
277 +
          "description": "European Qualifications Framework level of the degree (1 to 8, 8 is doctoral), when set.",
278 +
          "maximum": 8,
279 +
          "minimum": 1,
280 +
          "type": "integer"
281 +
        },
276 282
        "fieldOfStudy": {
277 283
          "description": "Field of study.",
278 284
          "type": "string"
279 285
        },
280 286
        "institution": {
281 287
          "description": "Institution name.",
282 288
          "type": "string"
283 289
        },
284 290
        "institutionDid": {
285 291
          "description": "DID of the institution, when known.",
286 292
          "format": "did",
287 293
          "type": "string"
288 294
        },
289 295
        "primary": {
290 296
          "description": "Whether this is the user's primary education entry.",
291 297
          "type": "boolean"
292 298
        },
293 299
        "rkey": {
294 300
          "description": "Record key of the education record.",
295 301
          "type": "string"
296 302
        },
297 303
        "startedAt": {
298 304
          "description": "Start date. Partial date.",
299 305
          "type": "string"
300 306
        }
301 307
      },
302 308
      "required": [
303 309
        "rkey"
304 310
      ],
305 311
      "type": "object"
306 312
    },
307 313
    "externalAccountView": {
308 314
      "description": "A linked external account with verification state.",
309 315
      "properties": {
310 316
        "feedUrl": {
311 317
          "description": "Feed URL (RSS/Atom), when applicable.",
312 318
          "format": "uri",
313 319
          "type": "string"
314 320
        },
315 321
        "label": {
316 322
          "description": "Optional custom label.",
317 323
          "type": "string"
318 324
        },
319 325
        "platform": {
320 326
          "description": "Platform type.",
321 327
          "ref": "id.sifa.defs#externalPlatform",
322 328
          "type": "ref"
323 329
        },
324 330
        "primary": {
325 331
          "description": "Whether this is the primary external account.",
326 332
          "type": "boolean"
327 333
        },
328 334
        "rkey": {
329 335
          "description": "Record key of the external account record.",
330 336
          "type": "string"
331 337
        },
332 338
        "url": {
333 339
          "description": "Account URL.",
334 340
          "format": "uri",
335 341
          "type": "string"
336 342
        },
337 343
        "verifiable": {
338 344
          "description": "Whether the account can be verified.",
339 345
          "type": "boolean"
340 346
        },
341 347
        "verified": {
342 348
          "description": "Whether the account is verified.",
343 349
          "type": "boolean"
344 350
        },
345 351
        "verifiedVia": {
346 352
          "description": "Verification method, when verified.",
347 353
          "type": "string"
348 354
        }
349 355
      },
350 356
      "required": [
351 357
        "rkey",
352 358
        "url"
353 359
      ],
354 360
      "type": "object"
355 361
    },
356 362
    "honorView": {
357 363
      "description": "An honor or award.",
358 364
      "properties": {
359 365
        "agentRef": {
360 366
          "description": "Canonical issuer reference (name plus optional did/entityRef). Mirrors the flat issuer/entityRef fields during the migration; the two always agree.",
361 367
          "ref": "id.sifa.defs#agentRef",
362 368
          "type": "ref"
363 369
        },
364 370
        "currentCompanyName": {
365 371
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
366 372
          "type": "string"
367 373
        },
368 374
        "date": {
369 375
          "description": "Date received. Partial date.",
370 376
          "type": "string"
371 377
        },
372 378
        "description": {
373 379
          "description": "Description.",
374 380
          "type": "string"
375 381
        },
376 382
        "entityRef": {
377 383
          "description": "Pointer URI to the resolved issuer entity.",
378 384
          "format": "uri",
379 385
          "type": "string"
380 386
        },
381 387
        "issuer": {
382 388
          "description": "Issuing organization.",
383 389
          "type": "string"
384 390
        },
385 391
        "rkey": {
386 392
          "description": "Record key of the honor record.",
387 393
          "type": "string"
388 394
        },
389 395
        "title": {
390 396
          "description": "Honor or award title.",
391 397
          "type": "string"
392 398
        }
393 399
      },
394 400
      "required": [
395 401
        "rkey",
396 402
        "title"
397 403
      ],
398 404
      "type": "object"
399 405
    },
400 406
    "involvementLinkView": {
401 407
      "description": "A proof link on an involvement.",
402 408
      "properties": {
403 409
        "kind": {
404 410
          "description": "What the link points to (e.g. pull-request, talk, article).",
405 411
          "type": "string"
406 412
        },
407 413
        "label": {
408 414
          "description": "Optional human-readable label.",
409 415
          "type": "string"
410 416
        },
411 417
        "url": {
412 418
          "description": "Artifact URL.",
413 419
          "format": "uri",
414 420
          "type": "string"
415 421
        },
416 422
        "verified": {
417 423
          "description": "True if the link host matches a verified external account.",
418 424
          "type": "boolean"
419 425
        },
420 426
        "verifiedPlatform": {
421 427
          "description": "Platform token of the verified host, when verified.",
422 428
          "type": "string"
423 429
        }
424 430
      },
425 431
      "required": [
426 432
        "url"
427 433
      ],
428 434
      "type": "object"
429 435
    },
430 436
    "involvementView": {
431 437
      "description": "A community, open-source, charity, or civic involvement.",
432 438
      "properties": {
433 439
        "agentRef": {
434 440
          "description": "Canonical upstream reference (name plus optional did/entityRef). Mirrors the flat upstream/upstreamDid/entityRef fields during the migration; the two always agree.",
435 441
          "ref": "id.sifa.defs#agentRef",
436 442
          "type": "ref"
437 443
        },
438 444
        "currentCompanyName": {
439 445
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
440 446
          "type": "string"
441 447
        },
442 448
        "description": {
443 449
          "description": "Description.",
444 450
          "type": "string"
445 451
        },
446 452
        "endedAt": {
447 453
          "description": "End date. Partial date.",
448 454
          "type": "string"
449 455
        },
450 456
        "kind": {
451 457
          "description": "The nature of the involvement.",
452 458
          "ref": "id.sifa.defs#involvementKind",
453 459
          "type": "ref"
454 460
        },
455 461
        "legacy": {
456 462
          "description": "True if mapped from a legacy volunteering record.",
457 463
          "type": "boolean"
458 464
        },
459 465
        "links": {
460 466
          "description": "Public artifact links proving the work.",
461 467
          "items": {
462 468
            "ref": "#involvementLinkView",
463 469
            "type": "ref"
464 470
          },
465 471
          "type": "array"
466 472
        },
467 473
        "primary": {
468 474
          "description": "Whether this is the user's primary current involvement.",
469 475
          "type": "boolean"
470 476
        },
471 477
        "rkey": {
472 478
          "description": "Record key of the involvement (or legacy volunteering) record.",
473 479
          "type": "string"
474 480
        },
475 481
        "role": {
476 482
          "description": "Role in the involvement.",
477 483
          "type": "string"
478 484
        },
479 485
        "startedAt": {
480 486
          "description": "Start date. Partial date.",
481 487
          "type": "string"
482 488
        },
483 489
        "upstream": {
484 490
          "description": "Name of the community, org, or person the involvement is with.",
485 491
          "type": "string"
486 492
        },
487 493
        "upstreamDid": {
488 494
          "description": "DID of the upstream, when known.",
489 495
          "format": "did",
490 496
          "type": "string"
491 497
        },
492 498
        "upstreamUrl": {
493 499
          "description": "URL of the upstream, when provided.",
494 500
          "format": "uri",
495 501
          "type": "string"
496 502
        }
497 503
      },
498 504
      "required": [
499 505
        "rkey",
500 506
        "kind",
501 507
        "links",
502 508
        "legacy"
503 509
      ],
504 510
      "type": "object"
505 511
    },
506 512
    "languageView": {
507 513
      "description": "A language with proficiency.",
508 514
      "properties": {
509 515
        "language": {
510 516
          "description": "Language name or BCP-47 tag.",
511 517
          "type": "string"
512 518
        },
513 519
        "proficiency": {
514 520
          "description": "Proficiency level.",
515 521
          "ref": "id.sifa.defs#proficiency",
516 522
          "type": "ref"
517 523
        },
518 524
        "rkey": {
519 525
          "description": "Record key of the language record.",
520 526
          "type": "string"
521 527
        }
522 528
      },
523 529
      "required": [
524 530
        "rkey",
525 531
        "language"
526 532
      ],
527 533
      "type": "object"
528 534
    },
529 535
    "locationView": {
530 536
      "description": "A professional location on the profile.",
531 537
      "properties": {
532 538
        "countryCode": {
533 539
          "description": "ISO 3166-1 alpha-2 country code.",
534 540
          "type": "string"
535 541
        },
536 542
        "isPrimary": {
537 543
          "description": "Whether this is the primary location.",
538 544
          "type": "boolean"
539 545
        },
540 546
        "label": {
541 547
          "description": "Optional custom label.",
542 548
          "type": "string"
543 549
        },
544 550
        "location": {
545 551
          "description": "Assembled human-readable location string.",
546 552
          "type": "string"
547 553
        },
548 554
        "locationCountry": {
549 555
          "description": "Country name.",
550 556
          "type": "string"
551 557
        },
552 558
        "locationLocality": {
553 559
          "description": "City or locality.",
554 560
          "type": "string"
555 561
        },
556 562
        "locationRegion": {
557 563
          "description": "Region, state, or province.",
558 564
          "type": "string"
559 565
        },
560 566
        "rkey": {
561 567
          "description": "Record key of the location record.",
562 568
          "type": "string"
563 569
        },
564 570
        "type": {
565 571
          "description": "The role this location plays.",
566 572
          "ref": "id.sifa.defs#locationType",
567 573
          "type": "ref"
568 574
        }
569 575
      },
570 576
      "required": [
571 577
        "rkey"
572 578
      ],
573 579
      "type": "object"
574 580
    },
575 581
    "main": {
576 582
      "description": "Get the aggregated public profile view for an actor.",
577 583
      "errors": [
578 584
        {
579 585
          "description": "No profile exists for the given actor, or the actor could not be resolved.",
580 586
          "name": "ProfileNotFound"
581 587
        }
582 588
      ],
583 589
      "output": {
584 590
        "encoding": "application/json",
585 591
        "schema": {
586 592
          "ref": "#profileView",
587 593
          "type": "ref"
588 594
        }
589 595
      },
590 596
      "parameters": {
591 597
        "properties": {
592 598
          "actor": {
593 599
            "description": "The handle or DID of the profile to fetch.",
594 600
            "format": "at-identifier",
595 601
            "type": "string"
596 602
          }
597 603
        },
598 604
        "required": [
599 605
          "actor"
600 606
        ],
601 607
        "type": "params"
602 608
      },
603 609
      "type": "query"
604 610
    },
605 611
    "pdsProviderView": {
606 612
      "description": "A PDS provider descriptor.",
607 613
      "properties": {
608 614
        "host": {
609 615
          "description": "PDS hostname.",
610 616
          "type": "string"
611 617
        },
612 618
        "name": {
613 619
          "description": "Human-readable provider name.",
614 620
          "type": "string"
615 621
        }
616 622
      },
617 623
      "required": [
618 624
        "name"
619 625
      ],
620 626
      "type": "object"
621 627
    },
622 628
    "positionView": {
623 629
      "description": "A work-history entry.",
624 630
      "properties": {
625 631
        "agentRef": {
626 632
          "description": "Canonical company reference (name plus optional did/entityRef). Mirrors the flat company/companyDid/entityRef fields during the migration; the two always agree.",
627 633
          "ref": "id.sifa.defs#agentRef",
628 634
          "type": "ref"
629 635
        },
630 636
        "company": {
631 637
          "description": "Company or organization name.",
632 638
          "type": "string"
633 639
        },
634 640
        "companyDid": {
635 641
          "description": "DID of the company, when known.",
636 642
          "format": "did",
637 643
          "type": "string"
638 644
        },
639 645
        "countryCode": {
640 646
          "description": "ISO 3166-1 alpha-2 country code.",
641 647
          "type": "string"
642 648
        },
643 649
        "currentCompanyName": {
644 650
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
645 651
          "type": "string"
646 652
        },
647 653
        "description": {
648 654
          "description": "Role description.",
649 655
          "type": "string"
650 656
        },
651 657
        "employmentType": {
652 658
          "description": "Employment arrangement.",
653 659
          "ref": "id.sifa.defs#employmentType",
654 660
          "type": "ref"
655 661
        },
656 662
        "endedAt": {
657 663
          "description": "End date. Partial date, absent if current.",
658 664
          "type": "string"
659 665
        },
660 666
        "entityName": {
661 667
          "description": "Resolved canonical company name.",
662 668
          "type": "string"
663 669
        },
664 670
        "entityRef": {
665 671
          "description": "Pointer URI to the resolved company entity.",
666 672
          "format": "uri",
667 673
          "type": "string"
668 674
        },
669 675
        "location": {
670 676
          "description": "Assembled human-readable location string.",
671 677
          "type": "string"
672 678
        },
673 679
        "locationCountry": {
674 680
          "description": "Country name.",
675 681
          "type": "string"
676 682
        },
677 683
        "locationLocality": {
678 684
          "description": "City or locality.",
679 685
          "type": "string"
680 686
        },
681 687
        "locationRegion": {
682 688
          "description": "Region, state, or province.",
683 689
          "type": "string"
684 690
        },
685 691
        "onBehalfOf": {
686 692
          "description": "Party this role is held on behalf of, when the person represents someone else — most often a fund whose board seat this is. A disclosure, not a role type. Absent for independent roles.",
687 693
          "type": "string"
688 694
        },
689 695
        "onBehalfOfDid": {
690 696
          "description": "DID of the represented party, when known. May be an organization or a person.",
691 697
          "format": "did",
692 698
          "type": "string"
693 699
        },
694 700
        "onBehalfOfEntityName": {
695 701
          "description": "Resolved canonical name for the represented party. Present only when the reference resolves; clients render onBehalfOf otherwise, never the raw URI.",
696 702
          "type": "string"
697 703
        },
698 704
        "onBehalfOfEntityRef": {
699 705
          "description": "Pointer URI to the resolved entity for the represented party.",
700 706
          "format": "uri",
701 707
          "type": "string"
702 708
        },
703 709
        "primary": {
704 710
          "description": "Whether this is the user's primary current position.",
705 711
          "type": "boolean"
706 712
        },
707 713
        "rkey": {
708 714
          "description": "Record key of the position record.",
709 715
          "type": "string"
710 716
        },
711 717
        "skillRkeys": {
712 718
          "description": "Record keys of skills linked to this position.",
713 719
          "items": {
714 720
            "type": "string"
715 721
          },
716 722
          "type": "array"
717 723
        },
718 724
        "startedAt": {
719 725
          "description": "Start date. Partial date (YYYY, YYYY-MM, or YYYY-MM-DD).",
720 726
          "type": "string"
721 727
        },
722 728
        "title": {
723 729
          "description": "Job title or role.",
724 730
          "type": "string"
725 731
        },
726 732
        "workplaceType": {
727 733
          "description": "Workplace arrangement.",
728 734
          "ref": "id.sifa.defs#workplaceType",
729 735
          "type": "ref"
730 736
        }
731 737
      },
732 738
      "required": [
733 739
        "rkey",
734 740
        "title"
735 741
      ],
736 742
      "type": "object"
737 743
    },
738 744
    "presentationDeliveryView": {
739 745
      "description": "A single delivery of a presentation at an occasion.",
740 746
      "properties": {
741 747
        "coSpeakers": {
742 748
          "description": "Co-speakers on this delivery.",
743 749
          "items": {
744 750
            "ref": "#coSpeakerView",
745 751
            "type": "ref"
746 752
          },
747 753
          "type": "array"
748 754
        },
749 755
        "date": {
750 756
          "description": "Delivery date. Partial date.",
751 757
          "type": "string"
752 758
        },
753 759
        "eventName": {
754 760
          "description": "Name of the event or occasion.",
755 761
          "type": "string"
756 762
        },
757 763
        "eventUri": {
758 764
          "description": "AT-URI of a linked event record.",
759 765
          "format": "at-uri",
760 766
          "type": "string"
761 767
        },
762 768
        "links": {
763 769
          "description": "Related links for this delivery.",
764 770
          "items": {
765 771
            "ref": "id.sifa.defs#presentationLink",
766 772
            "type": "ref"
767 773
          },
768 774
          "type": "array"
769 775
        },
770 776
        "location": {
771 777
          "description": "Event location.",
772 778
          "type": "string"
773 779
        },
774 780
        "mode": {
775 781
          "description": "Delivery mode (e.g. in-person, remote, hybrid).",
776 782
          "type": "string"
777 783
        },
778 784
        "presentationRkey": {
779 785
          "description": "Record key of the parent presentation, when grouped.",
780 786
          "type": "string"
781 787
        },
782 788
        "rkey": {
783 789
          "description": "Record key of the delivery record.",
784 790
          "type": "string"
785 791
        },
786 792
        "role": {
787 793
          "description": "The user's role in the delivery.",
788 794
          "ref": "id.sifa.defs#presentationRole",
789 795
          "type": "ref"
790 796
        },
791 797
        "status": {
792 798
          "description": "Delivery status.",
793 799
          "type": "string"
794 800
        },
795 801
        "title": {
796 802
          "description": "Delivery title (may differ from the presentation title).",
797 803
          "type": "string"
798 804
        }
799 805
      },
800 806
      "required": [
801 807
        "rkey"
802 808
      ],
803 809
      "type": "object"
804 810
    },
805 811
    "presentationView": {
806 812
      "description": "A talk or session (content), with its deliveries grouped underneath.",
807 813
      "properties": {
808 814
        "deliveries": {
809 815
          "description": "Deliveries of this presentation.",
810 816
          "items": {
811 817
            "ref": "#presentationDeliveryView",
812 818
            "type": "ref"
813 819
          },
814 820
          "type": "array"
815 821
        },
816 822
        "description": {
817 823
          "description": "Presentation description.",
818 824
          "type": "string"
819 825
        },
820 826
        "duration": {
821 827
          "description": "Duration range in minutes.",
822 828
          "ref": "#durationView",
823 829
          "type": "ref"
824 830
        },
825 831
        "intendedAudiences": {
826 832
          "description": "Intended audiences.",
827 833
          "items": {
828 834
            "type": "string"
829 835
          },
830 836
          "type": "array"
831 837
        },
832 838
        "links": {
833 839
          "description": "Related links (slides, recording, etc.).",
834 840
          "items": {
835 841
            "ref": "id.sifa.defs#presentationLink",
836 842
            "type": "ref"
837 843
          },
838 844
          "type": "array"
839 845
        },
840 846
        "primary": {
841 847
          "description": "Whether this is the user's primary talk.",
842 848
          "type": "boolean"
843 849
        },
844 850
        "rkey": {
845 851
          "description": "Record key of the presentation record.",
846 852
          "type": "string"
847 853
        },
848 854
        "title": {
849 855
          "description": "Presentation title.",
850 856
          "type": "string"
851 857
        },
852 858
        "writeupUri": {
853 859
          "description": "AT-URI of a linked write-up record.",
854 860
          "format": "at-uri",
855 861
          "type": "string"
856 862
        }
857 863
      },
858 864
      "required": [
859 865
        "rkey",
860 866
        "title",
861 867
        "deliveries"
862 868
      ],
863 869
      "type": "object"
864 870
    },
865 871
    "profileView": {
866 872
      "description": "The aggregated public professional profile view.",
867 873
      "properties": {
868 874
        "about": {
869 875
          "description": "Longer professional summary or bio.",
870 876
          "maxGraphemes": 5000,
871 877
          "maxLength": 50000,
872 878
          "type": "string"
873 879
        },
874 880
        "activeApps": {
875 881
          "description": "AT Protocol apps this account has recently created records in.",
876 882
          "items": {
877 883
            "ref": "#activeAppView",
878 884
            "type": "ref"
879 885
          },
880 886
          "type": "array"
881 887
        },
882 888
        "atfundContribute": {
883 889
          "description": "Optional contribution/funding link.",
884 890
          "ref": "#atfundLink",
885 891
          "type": "ref"
886 892
        },
887 893
        "atprotoFollowersCount": {
888 894
          "description": "Number of app.bsky.graph followers.",
889 895
          "type": "integer"
890 896
        },
891 897
        "availableFromUtc": {
892 898
          "description": "Start of an availability window, as a UTC offset, if set.",
893 899
          "type": "integer"
894 900
        },
895 901
        "availableToUtc": {
896 902
          "description": "End of an availability window, as a UTC offset, if set.",
897 903
          "type": "integer"
898 904
        },
899 905
        "avatar": {
900 906
          "description": "URL of the profile avatar image.",
901 907
          "format": "uri",
902 908
          "type": "string"
903 909
        },
904 910
        "blueskyVerified": {
905 911
          "description": "Whether the account holds a Bluesky verification.",
906 912
          "type": "boolean"
907 913
        },
908 914
        "blueskyVerifiedAt": {
909 915
          "description": "When the Bluesky verification was issued.",
910 916
          "format": "datetime",
911 917
          "type": "string"
912 918
        },
913 919
        "certifications": {
914 920
          "description": "Certifications and licenses.",
915 921
          "items": {
916 922
            "ref": "#certificationView",
917 923
            "type": "ref"
918 924
          },
919 925
          "type": "array"
920 926
        },
921 927
        "claimed": {
922 928
          "description": "Whether the profile has been claimed by its owner on Sifa.",
923 929
          "type": "boolean"
924 930
        },
925 931
        "connectionsCount": {
926 932
          "description": "Number of confirmed professional connections.",
927 933
          "type": "integer"
928 934
        },
929 935
        "countryCode": {
930 936
          "description": "ISO 3166-1 alpha-2 country code for the primary location.",
931 937
          "type": "string"
932 938
        },
933 939
        "courses": {
934 940
          "description": "Courses, optionally linked to a credential.",
935 941
          "items": {
936 942
            "ref": "#courseView",
937 943
            "type": "ref"
938 944
          },
939 945
          "type": "array"
940 946
        },
941 947
        "createdAt": {
942 948
          "description": "When the profile record was created.",
943 949
          "format": "datetime",
944 950
          "type": "string"
945 951
        },
946 952
        "did": {
947 953
          "description": "The account DID. Stable identifier for the profile.",
948 954
          "format": "did",
949 955
          "type": "string"
950 956
        },
951 957
        "displayName": {
952 958
          "description": "Display name shown on the profile.",
953 959
          "maxGraphemes": 128,
954 960
          "maxLength": 1280,
955 961
          "type": "string"
956 962
        },
957 963
        "education": {
958 964
          "description": "Education history entries.",
959 965
          "items": {
960 966
            "ref": "#educationView",
961 967
            "type": "ref"
962 968
          },
963 969
          "type": "array"
964 970
        },
965 971
        "externalAccounts": {
966 972
          "description": "Linked external accounts, with verification state.",
967 973
          "items": {
968 974
            "ref": "#externalAccountView",
969 975
            "type": "ref"
970 976
          },
971 977
          "type": "array"
972 978
        },
973 979
        "familyName": {
974 980
          "description": "Family (last) name, when provided.",
975 981
          "maxGraphemes": 128,
976 982
          "maxLength": 1280,
977 983
          "type": "string"
978 984
        },
979 985
        "followersCount": {
980 986
          "description": "Number of Sifa graph followers.",
981 987
          "type": "integer"
982 988
        },
983 989
        "followingCount": {
984 990
          "description": "Number of accounts this profile follows on the Sifa graph.",
985 991
          "type": "integer"
986 992
        },
987 993
        "givenName": {
988 994
          "description": "Given (first) name, when provided.",
989 995
          "maxGraphemes": 128,
990 996
          "maxLength": 1280,
991 997
          "type": "string"
992 998
        },
993 999
        "handle": {
994 1000
          "description": "The current handle for the account.",
995 1001
          "format": "handle",
996 1002
          "type": "string"
997 1003
        },
998 1004
        "headline": {
999 1005
          "description": "Short professional headline.",
1000 1006
          "maxGraphemes": 300,
1001 1007
          "maxLength": 3000,
1002 1008
          "type": "string"
1003 1009
        },
1004 1010
        "honors": {
1005 1011
          "description": "Honors and awards.",
1006 1012
          "items": {
1007 1013
            "ref": "#honorView",
1008 1014
            "type": "ref"
1009 1015
          },
1010 1016
          "type": "array"
1011 1017
        },
1012 1018
        "industries": {
1013 1019
          "description": "Industry/domain pairs the user works in.",
1014 1020
          "items": {
1015 1021
            "ref": "id.sifa.defs#industryDomain",
1016 1022
            "type": "ref"
1017 1023
          },
1018 1024
          "type": "array"
1019 1025
        },
1020 1026
        "involvement": {
1021 1027
          "description": "Community, open-source, charity, and civic involvement.",
1022 1028
          "items": {
1023 1029
            "ref": "#involvementView",
1024 1030
            "type": "ref"
1025 1031
          },
1026 1032
          "type": "array"
1027 1033
        },
1028 1034
        "langs": {
1029 1035
          "description": "BCP-47 language tags the user has indicated.",
1030 1036
          "items": {
1031 1037
            "type": "string"
1032 1038
          },
1033 1039
          "type": "array"
1034 1040
        },
1035 1041
        "languages": {
1036 1042
          "description": "Spoken/written languages with proficiency.",
1037 1043
          "items": {
1038 1044
            "ref": "#languageView",
1039 1045
            "type": "ref"
1040 1046
          },
1041 1047
          "type": "array"
1042 1048
        },
1043 1049
        "location": {
1044 1050
          "description": "Assembled human-readable primary location string.",
1045 1051
          "type": "string"
1046 1052
        },
1047 1053
        "locationCountry": {
1048 1054
          "description": "Primary location country name.",
1049 1055
          "type": "string"
1050 1056
        },
1051 1057
        "locationLocality": {
1052 1058
          "description": "Primary location city or locality.",
1053 1059
          "type": "string"
1054 1060
        },
1055 1061
        "locationRegion": {
1056 1062
          "description": "Primary location region, state, or province.",
1057 1063
          "type": "string"
1058 1064
        },
1059 1065
        "locations": {
1060 1066
          "description": "All professional locations on the profile.",
1061 1067
          "items": {
1062 1068
            "ref": "#locationView",
1063 1069
            "type": "ref"
1064 1070
          },
1065 1071
          "type": "array"
1066 1072
        },
1067 1073
        "metInPersonCount": {
1068 1074
          "description": "Number of confirmed in-person meetings.",
1069 1075
          "type": "integer"
1070 1076
        },
1071 1077
        "openTo": {
1072 1078
          "description": "The kinds of opportunities the user is open to.",
1073 1079
          "items": {
1074 1080
            "ref": "id.sifa.defs#openToWorkStatus",
1075 1081
            "type": "ref"
1076 1082
          },
1077 1083
          "type": "array"
1078 1084
        },
1079 1085
        "pdsProvider": {
1080 1086
          "description": "The account PDS provider.",
1081 1087
          "ref": "#pdsProviderView",
1082 1088
          "type": "ref"
1083 1089
        },
1084 1090
        "positions": {
1085 1091
          "description": "Work history entries.",
1086 1092
          "items": {
1087 1093
            "ref": "#positionView",
1088 1094
            "type": "ref"
1089 1095
          },
1090 1096
          "type": "array"
1091 1097
        },
1092 1098
        "preferredWorkplace": {
1093 1099
          "description": "Preferred workplace arrangements.",
1094 1100
          "items": {
1095 1101
            "ref": "id.sifa.defs#workplaceType",
1096 1102
            "type": "ref"
1097 1103
          },
1098 1104
          "type": "array"
1099 1105
        },
1100 1106
        "presentationDeliveries": {
1101 1107
          "description": "Standalone deliveries that reference no owned presentation.",
1102 1108
          "items": {
1103 1109
            "ref": "#presentationDeliveryView",
1104 1110
            "type": "ref"
1105 1111
          },
1106 1112
          "type": "array"
1107 1113
        },
1108 1114
        "presentations": {
1109 1115
          "description": "Talks and sessions (content), each with its deliveries grouped underneath.",
1110 1116
          "items": {
1111 1117
            "ref": "#presentationView",
1112 1118
            "type": "ref"
1113 1119
          },
1114 1120
          "type": "array"
1115 1121
        },
1116 1122
        "projects": {
1117 1123
          "description": "Personal or professional projects.",
1118 1124
          "items": {
1119 1125
            "ref": "#projectView",
1120 1126
            "type": "ref"
1121 1127
          },
1122 1128
          "type": "array"
1123 1129
        },
1124 1130
        "pronouns": {
1125 1131
          "description": "Self-described pronouns.",
1126 1132
          "maxGraphemes": 64,
1127 1133
          "maxLength": 640,
1128 1134
          "type": "string"
1129 1135
        },
1130 1136
        "publications": {
1131 1137
          "description": "Publications, merged from Sifa records and linked ORCID works.",
1132 1138
          "items": {
1133 1139
            "ref": "#publicationView",
1134 1140
            "type": "ref"
1135 1141
          },
1136 1142
          "type": "array"
1137 1143
        },
1138 1144
        "skills": {
1139 1145
          "description": "Skills, optionally linked to positions.",
1140 1146
          "items": {
1141 1147
            "ref": "#skillView",
1142 1148
            "type": "ref"
1143 1149
          },
1144 1150
          "type": "array"
1145 1151
        },
1146 1152
        "volunteering": {
1147 1153
          "description": "Legacy volunteering entries. New entries are surfaced under involvement.",
1148 1154
          "items": {
1149 1155
            "ref": "#volunteeringView",
1150 1156
            "type": "ref"
1151 1157
          },
1152 1158
          "type": "array"
1153 1159
        },
1154 1160
        "website": {
1155 1161
          "description": "Primary personal or professional website.",
1156 1162
          "format": "uri",
1157 1163
          "type": "string"
1158 1164
        }
1159 1165
      },
1160 1166
      "required": [
1161 1167
        "did",
1162 1168
        "handle"
1163 1169
      ],
1164 1170
      "type": "object"
1165 1171
    },
1166 1172
    "projectView": {
1167 1173
      "description": "A project entry.",
1168 1174
      "properties": {
1169 1175
        "description": {
1170 1176
          "description": "Project description.",
1171 1177
          "type": "string"
1172 1178
        },
1173 1179
        "endDate": {
1174 1180
          "description": "End date. Partial date.",
1175 1181
          "type": "string"
1176 1182
        },
1177 1183
        "name": {
1178 1184
          "description": "Project name.",
1179 1185
          "type": "string"
1180 1186
        },
1181 1187
        "primary": {
1182 1188
          "description": "Whether this is the user's primary ongoing project.",
1183 1189
          "type": "boolean"
1184 1190
        },
1185 1191
        "rkey": {
1186 1192
          "description": "Record key of the project record.",
1187 1193
          "type": "string"
1188 1194
        },
1189 1195
        "role": {
1190 1196
          "description": "The user's own role on the project.",
1191 1197
          "type": "string"
1192 1198
        },
1193 1199
        "startDate": {
1194 1200
          "description": "Start date. Partial date.",
1195 1201
          "type": "string"
1196 1202
        },
1197 1203
        "url": {
1198 1204
          "description": "Project URL.",
1199 1205
          "format": "uri",
1200 1206
          "type": "string"
1201 1207
        }
1202 1208
      },
1203 1209
      "required": [
1204 1210
        "rkey",
1205 1211
        "name"
1206 1212
      ],
1207 1213
      "type": "object"
1208 1214
    },
1209 1215
    "publicationView": {
1210 1216
      "description": "A publication, merged from Sifa and linked ORCID works.",
1211 1217
      "properties": {
1212 1218
        "contributors": {
1213 1219
          "description": "Linked contributors (co-authors).",
1214 1220
          "items": {
1215 1221
            "ref": "#contributorView",
1216 1222
            "type": "ref"
1217 1223
          },
1218 1224
          "type": "array"
1219 1225
        },
1220 1226
        "date": {
1221 1227
          "description": "Publication date. Partial date.",
1222 1228
          "type": "string"
1223 1229
        },
1224 1230
        "description": {
1225 1231
          "description": "Description or abstract.",
1226 1232
          "type": "string"
1227 1233
        },
1228 1234
        "doi": {
1229 1235
          "description": "Digital Object Identifier.",
1230 1236
          "type": "string"
1231 1237
        },
1232 1238
        "image": {
1233 1239
          "description": "Cover or preview image URL.",
1234 1240
          "format": "uri",
1235 1241
          "type": "string"
1236 1242
        },
1237 1243
        "orcidCorroborated": {
1238 1244
          "description": "Whether an ORCID work corroborates a Sifa record.",
1239 1245
          "type": "boolean"
1240 1246
        },
1241 1247
        "primary": {
1242 1248
          "description": "Whether this is the user's primary publication.",
1243 1249
          "type": "boolean"
1244 1250
        },
1245 1251
        "publicationName": {
1246 1252
          "description": "Name of the source publication venue, when present.",
1247 1253
          "type": "string"
1248 1254
        },
1249 1255
        "publicationUri": {
1250 1256
          "description": "AT-URI of the source publication record, when present.",
1251 1257
          "format": "at-uri",
1252 1258
          "type": "string"
1253 1259
        },
1254 1260
        "publicationUrl": {
1255 1261
          "description": "Canonical publication URL, when present.",
1256 1262
          "format": "uri",
1257 1263
          "type": "string"
1258 1264
        },
1259 1265
        "publisher": {
1260 1266
          "description": "Publisher or journal.",
1261 1267
          "type": "string"
1262 1268
        },
1263 1269
        "relatedIdentifiers": {
1264 1270
          "description": "Other versions or forms of this work: the relations declared on the record plus, for a DOI, those registered with DataCite or Crossref. Clients can fold a preprint under its published version.",
1265 1271
          "items": {
1266 1272
            "ref": "id.sifa.defs#relatedIdentifier",
1267 1273
            "type": "ref"
1268 1274
          },
1269 1275
          "type": "array"
1270 1276
        },
1271 1277
        "rkey": {
1272 1278
          "description": "Record key, or a synthetic key for ORCID-only works.",
1273 1279
          "type": "string"
1274 1280
        },
1275 1281
        "subtitle": {
1276 1282
          "description": "Subtitle.",
1277 1283
          "type": "string"
1278 1284
        },
1279 1285
        "title": {
1280 1286
          "description": "Publication title.",
1281 1287
          "type": "string"
1282 1288
        },
1283 1289
        "type": {
1284 1290
          "description": "Publication type token.",
1285 1291
          "type": "string"
1286 1292
        },
1287 1293
        "typeLabel": {
1288 1294
          "description": "Human-readable publication type.",
1289 1295
          "type": "string"
1290 1296
        },
1291 1297
        "url": {
1292 1298
          "description": "Publication URL.",
1293 1299
          "format": "uri",
1294 1300
          "type": "string"
1295 1301
        },
1296 1302
        "verified": {
1297 1303
          "description": "Whether the publication is verified (e.g. via ORCID).",
1298 1304
          "type": "boolean"
1299 1305
        },
1300 1306
        "verifiedVia": {
1301 1307
          "description": "Verification source, when verified.",
1302 1308
          "type": "string"
1303 1309
        }
1304 1310
      },
1305 1311
      "required": [
1306 1312
        "rkey",
1307 1313
        "title",
1308 1314
        "verified"
1309 1315
      ],
1310 1316
      "type": "object"
1311 1317
    },
1312 1318
    "skillView": {
1313 1319
      "description": "A skill entry.",
1314 1320
      "properties": {
1315 1321
        "category": {
1316 1322
          "description": "Broad category.",
1317 1323
          "ref": "id.sifa.defs#skillCategory",
1318 1324
          "type": "ref"
1319 1325
        },
1320 1326
        "name": {
1321 1327
          "description": "Skill name.",
1322 1328
          "type": "string"
1323 1329
        },
1324 1330
        "positionRkeys": {
1325 1331
          "description": "Record keys of positions this skill is linked to.",
1326 1332
          "items": {
1327 1333
            "type": "string"
1328 1334
          },
1329 1335
          "type": "array"
1330 1336
        },
1331 1337
        "rkey": {
1332 1338
          "description": "Record key of the skill record.",
1333 1339
          "type": "string"
1334 1340
        }
1335 1341
      },
1336 1342
      "required": [
1337 1343
        "rkey",
1338 1344
        "name"
1339 1345
      ],
1340 1346
      "type": "object"
1341 1347
    },
1342 1348
    "volunteeringView": {
1343 1349
      "description": "A legacy volunteering entry.",
1344 1350
      "properties": {
1345 1351
        "agentRef": {
1346 1352
          "description": "Canonical organization reference (name plus optional did/entityRef). Mirrors the flat organization/entityRef fields during the migration; the two always agree.",
1347 1353
          "ref": "id.sifa.defs#agentRef",
1348 1354
          "type": "ref"
1349 1355
        },
1350 1356
        "cause": {
1351 1357
          "description": "Cause supported.",
1352 1358
          "type": "string"
1353 1359
        },
1354 1360
        "currentCompanyName": {
1355 1361
          "description": "Current canonical name of the linked entity, when it resolves. The web shows it as a \"Now {name}\" hint when it differs from the saved snapshot name (#516).",
1356 1362
          "type": "string"
1357 1363
        },
1358 1364
        "description": {
1359 1365
          "description": "Description.",
1360 1366
          "type": "string"
1361 1367
        },
1362 1368
        "endDate": {
1363 1369
          "description": "End date. Partial date.",
1364 1370
          "type": "string"
1365 1371
        },
1366 1372
        "entityRef": {
1367 1373
          "description": "Pointer URI to the resolved organization entity.",
1368 1374
          "format": "uri",
1369 1375
          "type": "string"
1370 1376
        },
1371 1377
        "organization": {
1372 1378
          "description": "Organization name.",
1373 1379
          "type": "string"
1374 1380
        },
1375 1381
        "rkey": {
1376 1382
          "description": "Record key of the volunteering record.",
1377 1383
          "type": "string"
1378 1384
        },
1379 1385
        "role": {
1380 1386
          "description": "Role held.",
1381 1387
          "type": "string"
1382 1388
        },
1383 1389
        "startDate": {
1384 1390
          "description": "Start date. Partial date.",
1385 1391
          "type": "string"
1386 1392
        }
1387 1393
      },
1388 1394
      "required": [
1389 1395
        "rkey",
1390 1396
        "organization"
1391 1397
      ],
1392 1398
      "type": "object"
1393 1399
    }
1394 1400
  },
1395 1401
  "description": "Get the aggregated public professional profile for an actor, as computed by a Sifa AppView. This view joins a user's id.sifa.* records across all sections (positions, education, skills, endorsements received, and more) plus AppView-computed aggregates (follower/connection counts, active apps, verification state). Raw records remain readable directly from the user's PDS; this method exposes the enriched, joined view that only exists in the AppView. Public projection: viewer-specific and internal fields are not included.",
1396 1402
  "id": "id.sifa.getProfileView",
1397 1403
  "lexicon": 1
1398 1404
}

Compare Other Versions

Lexicon Garden

@