community.gifthood.reply

A public note on a listing — appreciation, a question, a joke; the front porch. Thread-native: root is ALWAYS the listing; parent is the listing for top-level notes or another reply once threaded rendering exists. Mirrors app.bsky.feed.post's reply-ref semantics. Public, like the interest record.

Details · record, key tid
Kindrecord
Record keytid
Authoritygifthood.community
Indexed
cid bafyreicrt6dk6wxwiw6akh67kdjuouyn57uhyotn7pc7jw6vxj76o6g2gm

Checks

Valid Lint pass
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A public note on a listing — appreciation, a question, a joke; the front porch. Thread-native: root is ALWAYS the listing; parent is the listing for top-level notes or another reply once threaded rendering exists. Mirrors app.bsky.feed.post's reply-ref semantics. Public, like the interest record.",
      "key": "tid",
      "record": {
        "properties": {
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "facets": {
            "description": "Annotations over `text` (mentions, links) keyed by UTF-8 byte range. Reuses app.bsky.richtext.facet. Author-asserted display hints; clients re-validate ranges. Addresses and phone numbers are deliberately NOT faceted here.",
            "items": {
              "ref": "app.bsky.richtext.facet",
              "type": "ref"
            },
            "type": "array"
          },
          "labels": {
            "description": "Self-labels set by the author (e.g. the global 'sexual' value), gated by the AppView like listing self-labels.",
            "refs": [
              "com.atproto.label.defs#selfLabels"
            ],
            "type": "union"
          },
          "langs": {
            "items": {
              "format": "language",
              "type": "string"
            },
            "maxLength": 3,
            "type": "array"
          },
          "parent": {
            "description": "What this note replies to: the listing itself for top-level notes, or another reply. parent's root MUST equal this record's root; indexers enforce that at read time.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "root": {
            "description": "Strong reference (URI + CID) to the listing this note belongs to. Always the listing — one query on root fetches a whole thread family.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          },
          "text": {
            "description": "The note. Keep pickup logistics in private messages.",
            "maxGraphemes": 300,
            "maxLength": 600,
            "minGraphemes": 1,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "root",
          "parent",
          "text",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "community.gifthood.reply",
  "lexicon": 1
}