so.sprk.feed.threadgate

sprk.so

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "followerRule": {
      "description": "Allow replies from actors who follow you.",
      "properties": {},
      "type": "object"
    },
    "followingRule": {
      "description": "Allow replies from actors you follow.",
      "properties": {},
      "type": "object"
    },
    "main": {
      "description": "Record defining interaction gating rules for a thread (aka, reply controls). The record key (rkey) of the threadgate record must match the record key of the thread's root post, and that record must be in the same repository.",
      "key": "tid",
      "record": {
        "properties": {
          "allow": {
            "description": "List of rules defining who can reply to this post. If value is an empty array, no one can reply. If value is undefined, anyone can reply.",
            "items": {
              "refs": [
                "#mentionRule",
                "#followerRule",
                "#followingRule"
              ],
              "type": "union"
            },
            "maxLength": 5,
            "type": "array"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "hiddenReplies": {
            "description": "List of hidden reply URIs.",
            "items": {
              "format": "at-uri",
              "type": "string"
            },
            "maxLength": 50,
            "type": "array"
          },
          "post": {
            "description": "Reference (AT-URI) to the post record.",
            "format": "at-uri",
            "type": "string"
          }
        },
        "required": [
          "post",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "mentionRule": {
      "description": "Allow replies from actors mentioned in your post.",
      "properties": {},
      "type": "object"
    }
  },
  "id": "so.sprk.feed.threadgate",
  "lexicon": 1
}

Validate Record

Validate a record against so.sprk.feed.threadgate

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:cveom2iroj3mt747sd4qqnr2
CID
bafyreic22bxt4kljqozmus5uiiuvvge36fpmgyrmawto5qtxnhpw6ev3zi
Indexed At
2026-04-21 22:28 UTC
AT-URI
at://did:plc:cveom2iroj3mt747sd4qqnr2/com.atproto.lexicon.schema/so.sprk.feed.threadgate

Similar Lexicons

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • town.delve.feed.threadgate recordnot from the namespace authority

    Record defining interaction gating rules for a thread (aka, reply controls). The record key (rkey) of the threadgate record must match the record key of the thread's root post, and that record must be in the same reposi…

  • Record defining interaction gating rules for a thread (aka, reply controls). The record key (rkey) of the threadgate record must match the record key of the thread's root post, and that record must be in the same reposi…

  • Interaction settings for a log or list, analogous to app.bsky.feed.threadgate/postgate. The record key (rkey) must match the rkey of the gated record. Absence of a gate record means everyone can interact.

  • town.delve.feed.postgate recordnot from the namespace authority

    Record defining interaction rules for a post. The record key (rkey) of the postgate record must match the record key of the post, and that record must be in the same repository.

  • Record defining interaction rules for a post. The record key (rkey) of the postgate record must match the record key of the post, and that record must be in the same repository.

Lexicon Garden

@