app.didpic.actor.getProfilePublic

lexicons.didpic.app

Schema Diff

+10 -0

From

CID
bafyreib3o4knerv...
Indexed At
2026-05-18 09:55 UTC
View this version

To

CID
bafyreihwe3w4s2c...
Indexed At
2026-05-22 04:37 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

4 breaking changes, 4 non-breaking changes.

Breaking Changes (4)
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.pronouns", sort: "maxLength", value: "640" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.pronouns", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.location", sort: "maxLength", value: "640" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.location", sort: "maxGraphemes", value: "64" }
Non-Breaking Changes (4)
  • AddedVertex AddedVertex { vertex_id: "app.didpic.actor.getProfilePublic:output.location" }
  • AddedVertex AddedVertex { vertex_id: "app.didpic.actor.getProfilePublic:output.pronouns" }
  • AddedEdge AddedEdge { src: "app.didpic.actor.getProfilePublic:output", tgt: "app.didpic.actor.getProfilePublic:output.location", kind: "prop", name: Some("location") }
  • AddedEdge AddedEdge { src: "app.didpic.actor.getProfilePublic:output", tgt: "app.didpic.actor.getProfilePublic:output.pronouns", kind: "prop", name: Some("pronouns") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "app.didpic.actor.getProfilePublic:output.location" }
  • AddedVertex { vertex_id: "app.didpic.actor.getProfilePublic:output.pronouns" }

Constraint Changes

  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.pronouns", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.pronouns", sort: "maxLength", value: "640" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.location", sort: "maxGraphemes", value: "64" }
  • ConstraintAdded ConstraintAdded { vertex_id: "app.didpic.actor.getProfilePublic:output.location", sort: "maxLength", value: "640" }

Additional Notes

  • Non-breaking: AddedEdge { src: "app.didpic.actor.getProfilePublic:output", tgt: "app.didpic.actor.getProfilePublic:output.location", kind: "prop", name: Some("location") }
  • Non-breaking: AddedEdge { src: "app.didpic.actor.getProfilePublic:output", tgt: "app.didpic.actor.getProfilePublic:output.pronouns", kind: "prop", name: Some("pronouns") }
1 1
{
2 2
  "id": "app.didpic.actor.getProfilePublic",
3 3
  "defs": {
4 4
    "main": {
5 5
      "type": "query",
6 6
      "errors": [
7 7
        {
8 8
          "name": "ProfileNotFound"
9 9
        }
10 10
      ],
11 11
      "output": {
12 12
        "schema": {
13 13
          "type": "object",
14 14
          "required": [
15 15
            "did"
16 16
          ],
17 17
          "properties": {
18 18
            "did": {
19 19
              "type": "string",
20 20
              "format": "did"
21 21
            },
22 22
            "pds": {
23 23
              "type": "string",
24 24
              "format": "uri",
25 25
              "description": "Authoritative PDS endpoint. Use to construct blob URLs (com.atproto.sync.getBlob)."
26 26
            },
27 27
            "handle": {
28 28
              "type": "string",
29 29
              "format": "handle"
30 30
            },
31 31
            "labels": {
32 32
              "type": "array",
33 33
              "items": {
34 34
                "type": "string"
35 35
              }
36 36
            },
37 +
            "location": {
38 +
              "type": "string",
39 +
              "maxLength": 640,
40 +
              "maxGraphemes": 64
41 +
            },
42 +
            "pronouns": {
43 +
              "type": "string",
44 +
              "maxLength": 640,
45 +
              "maxGraphemes": 64
46 +
            },
37 47
            "avatarCid": {
38 48
              "type": "string",
39 49
              "format": "cid"
40 50
            },
41 51
            "bannerCid": {
42 52
              "type": "string",
43 53
              "format": "cid"
44 54
            },
45 55
            "indexedAt": {
46 56
              "type": "string",
47 57
              "format": "datetime"
48 58
            },
49 59
            "likesCount": {
50 60
              "type": "integer",
51 61
              "minimum": 0
52 62
            },
53 63
            "postsCount": {
54 64
              "type": "integer",
55 65
              "minimum": 0
56 66
            },
57 67
            "description": {
58 68
              "type": "string",
59 69
              "maxLength": 2560,
60 70
              "maxGraphemes": 256
61 71
            },
62 72
            "displayName": {
63 73
              "type": "string",
64 74
              "maxLength": 640,
65 75
              "maxGraphemes": 64
66 76
            },
67 77
            "followsCount": {
68 78
              "type": "integer",
69 79
              "minimum": 0
70 80
            },
71 81
            "followersCount": {
72 82
              "type": "integer",
73 83
              "minimum": 0
74 84
            }
75 85
          }
76 86
        },
77 87
        "encoding": "application/json"
78 88
      },
79 89
      "parameters": {
80 90
        "type": "params",
81 91
        "required": [
82 92
          "actor"
83 93
        ],
84 94
        "properties": {
85 95
          "actor": {
86 96
            "type": "string",
87 97
            "description": "DID or handle."
88 98
          }
89 99
        }
90 100
      },
91 101
      "description": "Unauthenticated profile view for public web landings. Omits viewer-relative fields."
92 102
    }
93 103
  },
94 104
  "$type": "com.atproto.lexicon.schema",
95 105
  "lexicon": 1
96 106
}

Compare Other Versions

Lexicon Garden

@