com.getorbyt.community.moderatePost

getorbyt.com

Schema Diff

+13 -0

From

CID
bafyreieyrajqmzp...
Indexed At
2026-09-01 05:23 UTC
View this version

To

CID
bafyreia4vkwluba...
Indexed At
2026-10-04 14:54 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 6 non-breaking changes.

Non-Breaking Changes (6)
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.moderatePost:input.ruleIndex" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.moderatePost:output.removalActionId" }
  • AddedVertex AddedVertex { vertex_id: "com.getorbyt.community.moderatePost:output.removedRuleIndex" }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.moderatePost:input", tgt: "com.getorbyt.community.moderatePost:input.ruleIndex", kind: "prop", name: Some("ruleIndex") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.moderatePost:output", tgt: "com.getorbyt.community.moderatePost:output.removalActionId", kind: "prop", name: Some("removalActionId") }
  • AddedEdge AddedEdge { src: "com.getorbyt.community.moderatePost:output", tgt: "com.getorbyt.community.moderatePost:output.removedRuleIndex", kind: "prop", name: Some("removedRuleIndex") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "com.getorbyt.community.moderatePost:input.ruleIndex" }
  • AddedVertex { vertex_id: "com.getorbyt.community.moderatePost:output.removalActionId" }
  • AddedVertex { vertex_id: "com.getorbyt.community.moderatePost:output.removedRuleIndex" }

Additional Notes

  • Non-breaking: AddedEdge { src: "com.getorbyt.community.moderatePost:input", tgt: "com.getorbyt.community.moderatePost:input.ruleIndex", kind: "prop", name: Some("ruleIndex") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.moderatePost:output", tgt: "com.getorbyt.community.moderatePost:output.removalActionId", kind: "prop", name: Some("removalActionId") }
  • Non-breaking: AddedEdge { src: "com.getorbyt.community.moderatePost:output", tgt: "com.getorbyt.community.moderatePost:output.removedRuleIndex", kind: "prop", name: Some("removedRuleIndex") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "main": {
5 5
      "description": "A moderator action on one post's Community-level state. Removal is scoped to the Community; only actions that change state are journaled.",
6 6
      "errors": [
7 7
        {
8 8
          "name": "CommunityNotFound"
9 9
        },
10 10
        {
11 11
          "name": "InsufficientRole"
12 12
        },
13 13
        {
14 14
          "name": "PostNotFound"
15 15
        },
16 16
        {
17 17
          "name": "InvalidAction"
18 18
        },
19 19
        {
20 20
          "description": "The request carried no service-auth token, or one this service could not verify for the method. Distinct from InsufficientRole: the caller's identity was never established, so no role decision was made. A client should reauthorize and retry once rather than tell the viewer they lack access.",
21 21
          "name": "AuthenticationRequired"
22 22
        }
23 23
      ],
24 24
      "input": {
25 25
        "encoding": "application/json",
26 26
        "schema": {
27 27
          "properties": {
28 28
            "action": {
29 29
              "knownValues": [
30 30
                "remove",
31 31
                "restore",
32 32
                "pin",
33 33
                "unpin"
34 34
              ],
35 35
              "type": "string"
36 36
            },
37 37
            "community": {
38 38
              "format": "at-uri",
39 39
              "type": "string"
40 40
            },
41 41
            "post": {
42 42
              "description": "The linked app.bsky.feed.post URI.",
43 43
              "format": "at-uri",
44 44
              "type": "string"
45 45
            },
46 46
            "reason": {
47 47
              "description": "Required for removal, shown to the author, and recorded in the moderation log.",
48 48
              "maxLength": 1000,
49 49
              "type": "string"
50 +
            },
51 +
            "ruleIndex": {
52 +
              "description": "For removal: the Community rule the post broke, by position. Shown to the author.",
53 +
              "minimum": 0,
54 +
              "type": "integer"
50 55
            }
51 56
          },
52 57
          "required": [
53 58
            "community",
54 59
            "post",
55 60
            "action"
56 61
          ],
57 62
          "type": "object"
58 63
        }
59 64
      },
60 65
      "output": {
61 66
        "encoding": "application/json",
62 67
        "schema": {
63 68
          "properties": {
64 69
            "changed": {
65 70
              "type": "boolean"
66 71
            },
67 72
            "pinned": {
68 73
              "type": "boolean"
69 74
            },
75 +
            "removalActionId": {
76 +
              "maxLength": 128,
77 +
              "type": "string"
78 +
            },
70 79
            "removedAt": {
71 80
              "format": "datetime",
72 81
              "type": "string"
73 82
            },
74 83
            "removedReason": {
75 84
              "type": "string"
76 85
            },
86 +
            "removedRuleIndex": {
87 +
              "minimum": 0,
88 +
              "type": "integer"
89 +
            },
77 90
            "status": {
78 91
              "knownValues": [
79 92
                "visible",
80 93
                "removed"
81 94
              ],
82 95
              "type": "string"
83 96
            }
84 97
          },
85 98
          "required": [
86 99
            "status",
87 100
            "pinned",
88 101
            "changed"
89 102
          ],
90 103
          "type": "object"
91 104
        }
92 105
      },
93 106
      "type": "procedure"
94 107
    }
95 108
  },
96 109
  "id": "com.getorbyt.community.moderatePost",
97 110
  "lexicon": 1
98 111
}

Compare Other Versions

Lexicon Garden

@