pub.chive.review.getThread

chive.pub View official

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "authorRef": {
      "properties": {
        "avatar": {
          "format": "uri",
          "type": "string"
        },
        "did": {
          "format": "did",
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "handle": {
          "type": "string"
        }
      },
      "required": [
        "did"
      ],
      "type": "object"
    },
    "main": {
      "description": "Get a review thread including the root review and all replies",
      "errors": [
        {
          "description": "Review not found",
          "name": "NotFound"
        }
      ],
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "parent": {
              "description": "Root review of the thread",
              "ref": "#reviewView",
              "type": "ref"
            },
            "replies": {
              "description": "Direct replies to the root review",
              "items": {
                "ref": "#reviewView",
                "type": "ref"
              },
              "type": "array"
            },
            "totalReplies": {
              "description": "Total number of replies in the thread",
              "minimum": 0,
              "type": "integer"
            }
          },
          "required": [
            "parent",
            "replies",
            "totalReplies"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "uri": {
            "description": "AT-URI of the root review",
            "format": "at-uri",
            "type": "string"
          }
        },
        "required": [
          "uri"
        ],
        "type": "params"
      },
      "type": "query"
    },
    "reviewView": {
      "description": "View of a review/comment",
      "properties": {
        "author": {
          "ref": "#authorRef",
          "type": "ref"
        },
        "body": {
          "description": "Rich text body items",
          "items": {
            "refs": [
              "pub.chive.richtext.defs#textItem",
              "pub.chive.richtext.defs#nodeRefItem",
              "pub.chive.richtext.defs#wikidataRefItem",
              "pub.chive.richtext.defs#fieldRefItem",
              "pub.chive.richtext.defs#facetRefItem",
              "pub.chive.richtext.defs#eprintRefItem",
              "pub.chive.richtext.defs#annotationRefItem",
              "pub.chive.richtext.defs#authorRefItem",
              "pub.chive.richtext.defs#mentionItem",
              "pub.chive.richtext.defs#linkItem",
              "pub.chive.richtext.defs#tagItem",
              "pub.chive.richtext.defs#latexItem",
              "pub.chive.richtext.defs#codeBlockItem",
              "pub.chive.richtext.defs#headingItem",
              "pub.chive.richtext.defs#listItem",
              "pub.chive.richtext.defs#blockquoteItem"
            ],
            "type": "union"
          },
          "maxLength": 500,
          "type": "array"
        },
        "bodyPlainText": {
          "description": "Plain text body for search/preview",
          "type": "string"
        },
        "cid": {
          "description": "Content identifier",
          "type": "string"
        },
        "content": {
          "description": "Plain text content of the review",
          "type": "string"
        },
        "createdAt": {
          "description": "When the review was created",
          "format": "datetime",
          "type": "string"
        },
        "eprintUri": {
          "description": "AT-URI of the eprint being reviewed",
          "format": "at-uri",
          "type": "string"
        },
        "indexedAt": {
          "description": "When the review was indexed",
          "format": "datetime",
          "type": "string"
        },
        "motivation": {
          "description": "W3C Web Annotation motivation",
          "knownValues": [
            "commenting",
            "highlighting",
            "questioning",
            "replying",
            "assessing",
            "bookmarking",
            "classifying",
            "describing",
            "editing",
            "linking",
            "moderating",
            "tagging"
          ],
          "type": "string"
        },
        "parentReviewUri": {
          "description": "Parent review URI for threaded replies",
          "format": "at-uri",
          "type": "string"
        },
        "replyCount": {
          "description": "Number of direct replies",
          "minimum": 0,
          "type": "integer"
        },
        "target": {
          "description": "Target text span for inline annotations",
          "ref": "#textSpanTarget",
          "type": "ref"
        },
        "uri": {
          "description": "Review AT-URI",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri",
        "cid",
        "author",
        "eprintUri",
        "content",
        "motivation",
        "replyCount",
        "createdAt",
        "indexedAt"
      ],
      "type": "object"
    },
    "textPositionSelector": {
      "description": "W3C Text Position Selector with optional page info",
      "properties": {
        "end": {
          "minimum": 0,
          "type": "integer"
        },
        "pageNumber": {
          "description": "Page number in PDF",
          "minimum": 1,
          "type": "integer"
        },
        "start": {
          "minimum": 0,
          "type": "integer"
        },
        "type": {
          "const": "TextPositionSelector",
          "type": "string"
        }
      },
      "required": [
        "type",
        "start",
        "end"
      ],
      "type": "object"
    },
    "textQuoteSelector": {
      "description": "W3C Text Quote Selector",
      "properties": {
        "exact": {
          "maxLength": 1000,
          "type": "string"
        },
        "prefix": {
          "maxLength": 100,
          "type": "string"
        },
        "suffix": {
          "maxLength": 100,
          "type": "string"
        },
        "type": {
          "const": "TextQuoteSelector",
          "type": "string"
        }
      },
      "required": [
        "type",
        "exact"
      ],
      "type": "object"
    },
    "textSpanTarget": {
      "description": "Target text span for inline annotations (W3C Web Annotation compatible)",
      "properties": {
        "page": {
          "description": "Page number (deprecated, use refinedBy.pageNumber)",
          "minimum": 1,
          "type": "integer"
        },
        "refinedBy": {
          "description": "Position refinement with page info",
          "ref": "#textPositionSelector",
          "type": "ref"
        },
        "selector": {
          "description": "Text quote selector",
          "ref": "#textQuoteSelector",
          "type": "ref"
        },
        "source": {
          "description": "Eprint AT-URI",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "source"
      ],
      "type": "object"
    }
  },
  "id": "pub.chive.review.getThread",
  "lexicon": 1,
  "revision": 1
}

Validate Record

Validate a record against pub.chive.review.getThread

Validation Options
Automatically resolve and include external schemas for full validation
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:7natp5xae72bddaqlkef2t4e
CID
bafyreig27se4rdhqfqyl7z7yg7txeb2g7ssqn5k44ji5va7oxticvk6foq
Indexed At
2026-05-04 17:29 UTC
AT-URI
at://did:plc:7natp5xae72bddaqlkef2t4e/com.atproto.lexicon.schema/pub.chive.review.getThread

Referenced Schemas (16)

Similar Lexicons

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

Lexicon Garden

@