org.anthers.vote

anthers.org

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A vote on a work, a post, a comment or a review — the voter saying which way they want it to move. It is a vote with a direction rather than a reaction with a sentiment, because that is what the gesture actually does: it is the input to ranking. Both directions are published, deliberately. If votes decide what rises and what folds away, publishing only the ones pushing upward would describe the mechanism dishonestly. How a service DISPLAYS them is its own decision and no part of this record.",
      "key": "tid",
      "record": {
        "properties": {
          "direction": {
            "description": "Which way the voter wants this subject to move. `up` — more people should see it. `down` — fewer should. Named for the effect rather than for a feeling, because framing it as approval invites the familiar bind where somebody withholds a vote from work they think is important but did not enjoy. This is an open set: consumers must accept values not listed here, because a third kind may be added later.",
            "knownValues": [
              "up",
              "down"
            ],
            "maxLength": 32,
            "type": "string"
          },
          "subject": {
            "ref": "#subject",
            "type": "ref"
          }
        },
        "required": [
          "subject",
          "direction"
        ],
        "type": "object"
      },
      "type": "record"
    },
    "subject": {
      "description": "What this record is about, named by the address of a record on the network. An OBJECT rather than a bare string, deliberately: a published field's type can never change, so a bare address would close the door on ever carrying anything beside it — a content identifier pinning the subject to one version being the obvious candidate. What KIND of thing the subject is needs no field of its own, because the collection segment of the address already says it. A vote whose subject is a review is asking whether that review helped, which is the same gesture and needs no separate record type.",
      "properties": {
        "uri": {
          "description": "The address of the record this is about. Version pinning is deliberately absent rather than forgotten: a work's listing is rewritten whenever its creator edits the title or the description, so a subject pinned to the version that existed on the day would come to point at something gone, through no act of the person who cast this vote.",
          "format": "at-uri",
          "type": "string"
        }
      },
      "required": [
        "uri"
      ],
      "type": "object"
    }
  },
  "id": "org.anthers.vote",
  "lexicon": 1
}

Validate Record

Validate a record against org.anthers.vote

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:75xx6l27mt7a3uxoga5ka4qt
CID
bafyreigrxxf4oz2w7jehphpij5okuolg2lwxyrjtpdjzjam4tjefu5vwcm
Indexed At
2026-09-13 03:56 UTC
AT-URI
at://did:plc:75xx6l27mt7a3uxoga5ka4qt/com.atproto.lexicon.schema/org.anthers.vote

Similar Lexicons

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

  • A user vote on a submission to AlternativeProto. Each user may cast one vote per submission.

  • A directional vote on a forum topic or reply. Votes are quantitative (ranking); reactions are expressive (emoji-style).

  • One vote per member per subject: the rkey is derived from the subject URI, so a changed vote is a putRecord and an unvote a deleteRecord.

  • site.filae.agora.vote recordnot from the namespace authority

    An upvote or downvote on a post or comment

  • Record declaring a vote (upvote or downvote) on a post or comment. Requires authentication.

Lexicon Garden

@