community.gifthood.reply

gifthood.community

Documentation

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.

main record

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.

Record Key tid Timestamp-based ID

Properties

createdAt string datetime Required

An RFC 3339 formatted timestamp.

facets array of ref app.bsky.richtext.facet Optional

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.

labels union Optional

Self-labels set by the author (e.g. the global 'sexual' value), gated by the AppView like listing self-labels.

langs array of string language Optional

No description available.

maxLength: 3 items
parent ref com.atproto.repo.strongRef Required

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.

root ref com.atproto.repo.strongRef Required

Strong reference (URI + CID) to the listing this note belongs to. Always the listing — one query on root fetches a whole thread family.

text string Required

The note. Keep pickup logistics in private messages.

maxLength: 600 bytesminLength: 1 bytesmaxGraphemes: 300 graphemesminGraphemes: 1 graphemes
View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "root",
      "parent",
      "text",
      "createdAt"
    ],
    "properties": {
      "root": {
        "ref": "com.atproto.repo.strongRef",
        "type": "ref",
        "description": "Strong reference (URI + CID) to the listing this note belongs to. Always the listing — one query on root fetches a whole thread family."
      },
      "text": {
        "type": "string",
        "maxLength": 600,
        "minLength": 1,
        "description": "The note. Keep pickup logistics in private messages.",
        "maxGraphemes": 300,
        "minGraphemes": 1
      },
      "langs": {
        "type": "array",
        "items": {
          "type": "string",
          "format": "language"
        },
        "maxLength": 3
      },
      "facets": {
        "type": "array",
        "items": {
          "ref": "app.bsky.richtext.facet",
          "type": "ref"
        },
        "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."
      },
      "labels": {
        "refs": [
          "com.atproto.label.defs#selfLabels"
        ],
        "type": "union",
        "description": "Self-labels set by the author (e.g. the global 'sexual' value), gated by the AppView like listing self-labels."
      },
      "parent": {
        "ref": "com.atproto.repo.strongRef",
        "type": "ref",
        "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."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      }
    }
  },
  "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."
}

Lexicon Garden

@