support.supper.comment

supper.support

Documentation

A public Supper comment attached directly to a site.standard.document, support.supper.feed.post, fm.plyr.track, or support.supper.poll.poll. The record is authored in the commenter's repository; its subject identifies the Supper discussion independently of any optional microblog cross-post.

main record

A public Supper comment attached directly to a site.standard.document, support.supper.feed.post, fm.plyr.track, or support.supper.poll.poll. The record is authored in the commenter's repository; its subject identifies the Supper discussion independently of any optional microblog cross-post.

Record Key tid Timestamp-based ID

Properties

createdAt string datetime Required

When the comment was created.

facets array of ref #facet Optional

Optional rich-text annotations over UTF-8 byte ranges in plaintext.

maxLength: 100 items
plaintext string Required

Plaintext comment body. Facets may annotate links and mentions without changing this canonical text.

maxLength: 20000 bytesmaxGraphemes: 2000 graphemes
reply ref #replyRef Optional

Thread references when this comment replies to another support.supper.comment. Indexers must verify that both referenced comments use this record's exact subject URI.

subject string at-uri Required

AT URI of the site.standard.document, support.supper.feed.post, fm.plyr.track, or support.supper.poll.poll being discussed. Indexers must verify that the URI identifies one of those collections before including the comment in a subject thread.

View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "subject",
      "plaintext",
      "createdAt"
    ],
    "properties": {
      "reply": {
        "ref": "#replyRef",
        "type": "ref",
        "description": "Thread references when this comment replies to another support.supper.comment. Indexers must verify that both referenced comments use this record's exact subject URI."
      },
      "facets": {
        "type": "array",
        "items": {
          "ref": "#facet",
          "type": "ref"
        },
        "maxLength": 100,
        "description": "Optional rich-text annotations over UTF-8 byte ranges in plaintext."
      },
      "subject": {
        "type": "string",
        "format": "at-uri",
        "description": "AT URI of the site.standard.document, support.supper.feed.post, fm.plyr.track, or support.supper.poll.poll being discussed. Indexers must verify that the URI identifies one of those collections before including the comment in a subject thread."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "When the comment was created."
      },
      "plaintext": {
        "type": "string",
        "maxLength": 20000,
        "description": "Plaintext comment body. Facets may annotate links and mentions without changing this canonical text.",
        "maxGraphemes": 2000
      }
    }
  },
  "description": "A public Supper comment attached directly to a site.standard.document, support.supper.feed.post, fm.plyr.track, or support.supper.poll.poll. The record is authored in the commenter's repository; its subject identifies the Supper discussion independently of any optional microblog cross-post."
}
byteSlice object

Zero-indexed UTF-8 byte range. The start is inclusive and the end is exclusive.

Properties

byteEnd integer Required

No description available.

minimum: 0
byteStart integer Required

No description available.

minimum: 0
View raw schema
{
  "type": "object",
  "required": [
    "byteStart",
    "byteEnd"
  ],
  "properties": {
    "byteEnd": {
      "type": "integer",
      "minimum": 0
    },
    "byteStart": {
      "type": "integer",
      "minimum": 0
    }
  },
  "description": "Zero-indexed UTF-8 byte range. The start is inclusive and the end is exclusive."
}
facet object

Annotation of a UTF-8 byte range in the plaintext comment.

Properties

features array of union Required

No description available.

maxLength: 5 itemsminLength: 1 items
Known types:
index ref #byteSlice Required

No description available.

View raw schema
{
  "type": "object",
  "required": [
    "index",
    "features"
  ],
  "properties": {
    "index": {
      "ref": "#byteSlice",
      "type": "ref"
    },
    "features": {
      "type": "array",
      "items": {
        "refs": [
          "#link",
          "#mention"
        ],
        "type": "union",
        "closed": false
      },
      "maxLength": 5,
      "minLength": 1
    }
  },
  "description": "Annotation of a UTF-8 byte range in the plaintext comment."
}
link object

Link associated with the annotated text.

Properties

uri string uri Required

HTTP(S) link annotated by this facet.

View raw schema
{
  "type": "object",
  "required": [
    "uri"
  ],
  "properties": {
    "uri": {
      "type": "string",
      "format": "uri",
      "description": "HTTP(S) link annotated by this facet."
    }
  },
  "description": "Link associated with the annotated text."
}
mention object

Account mention associated with the annotated text.

Properties

did string did Required

A decentralized identifier (DID).

View raw schema
{
  "type": "object",
  "required": [
    "did"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did"
    }
  },
  "description": "Account mention associated with the annotated text."
}
replyRef object

No description available.

Properties

parent ref com.atproto.repo.strongRef Required

Strong reference to the support.supper.comment being replied to. Its subject must exactly match the replying record's subject.

root ref com.atproto.repo.strongRef Required

Strong reference to the top-level support.supper.comment that starts this subject thread. Its subject must exactly match the replying record's subject.

View raw schema
{
  "type": "object",
  "required": [
    "root",
    "parent"
  ],
  "properties": {
    "root": {
      "ref": "com.atproto.repo.strongRef",
      "type": "ref",
      "description": "Strong reference to the top-level support.supper.comment that starts this subject thread. Its subject must exactly match the replying record's subject."
    },
    "parent": {
      "ref": "com.atproto.repo.strongRef",
      "type": "ref",
      "description": "Strong reference to the support.supper.comment being replied to. Its subject must exactly match the replying record's subject."
    }
  }
}

Lexicon Garden

@