social.smallbury.feed.reaction

lexicon.pds.smallbury.social

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Emoji reaction by an actor on a post or comment. Use one record per emoji (stacking supported). Public targets store cleartext emoji. Reactions to encrypted targets store ciphertext plus keyEpochId.",
      "key": "tid",
      "record": {
        "properties": {
          "ciphertext": {
            "description": "Encrypted reaction payload for private targets. Omit for public targets.",
            "maxLength": 4096,
            "type": "bytes"
          },
          "createdAt": {
            "description": "Client-declared timestamp when this reaction record was created.",
            "format": "datetime",
            "type": "string"
          },
          "emoji": {
            "description": "Cleartext emoji reaction for public targets. Omit when ciphertext is set.",
            "maxGraphemes": 1,
            "maxLength": 32,
            "type": "string"
          },
          "keyEpochId": {
            "description": "Trust key epoch used for encrypted reactions. Required when ciphertext is set.",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          },
          "subject": {
            "description": "AT-URI/CID of the target post or comment.",
            "ref": "com.atproto.repo.strongRef",
            "type": "ref"
          }
        },
        "required": [
          "subject",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "social.smallbury.feed.reaction",
  "lexicon": 1
}

Validate Record

Validate a record against social.smallbury.feed.reaction

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:wnagcp6h73nxmvmwid2xxukx
CID
bafyreibp7ar3m6obhwkj5snldcymz2zqtw4db5umrptvlxcnes7v2qti2e
Indexed At
2026-06-26 11:59 UTC
AT-URI
at://did:plc:wnagcp6h73nxmvmwid2xxukx/com.atproto.lexicon.schema/social.smallbury.feed.reaction

Similar Lexicons

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

  • An emoji reaction to a post, in the reactor's own repo. One record per (subject, emoji) per person, keyed so that reacting again is an overwrite and unreacting is a delete. A placeholder for the shape Bluesky is expecte…

  • at.secretsky.reaction recordnot from the namespace authority
  • blue.moji.feed.reaction recordnot from the namespace authority

    A custom-emoji reaction to a post. Analogous to app.bsky.feed.like, but the reaction glyph is a Bluemoji. Duplicate reactions (same subject + same emoji URI by the same actor) should be ignored by AppViews.

  • An emoji reaction to a message or thread. Written into the reactor's own repo within the space. rkey is derived from the subject URI and the emoji ('r' + base32lower(sha256(uri + '\n' + emoji))[0:26]) so one reactor has…

  • One reactor's reaction to one message. Written into the reactor's own repo within the message's space, so counts are an aggregate the view computes across the space's repos — never a mutable field on the message, whic…

Lexicon Garden

@