# forum.barazo.interaction.vote

> Published by [barazo.forum](https://lexicon.garden/identity/did:plc:7brt3r7rokkjqc4wjgeovnyx)

✓ This is the authoritative definition for this NSID.

## Description

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

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:plc:7brt3r7rokkjqc4wjgeovnyx/forum.barazo.interaction.vote)
- [Documentation](https://lexicon.garden/lexicon/did:plc:7brt3r7rokkjqc4wjgeovnyx/forum.barazo.interaction.vote/docs)
- [Examples](https://lexicon.garden/lexicon/did:plc:7brt3r7rokkjqc4wjgeovnyx/forum.barazo.interaction.vote/examples)

## Definitions

### `forum.barazo.interaction.vote`

**Type**: `record`

Record containing a directional vote on a forum topic or reply.

**Key**: `tid`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `subject` | `ref` → `com.atproto.repo.strongRef` | Yes | The topic or reply being voted on. |
| `community` | `string` (did) | Yes | DID of the community where this vote was cast. Immutable origin identifier. |
| `createdAt` | `string` (datetime) | Yes | Client-declared timestamp when this vote was originally created. |
| `direction` | `string` | Yes | Vote direction. Start upvote-only; 'down' can be added later without breaking change. |

## Raw Schema

```json
{
  "id": "forum.barazo.interaction.vote",
  "defs": {
    "main": {
      "key": "tid",
      "type": "record",
      "record": {
        "type": "object",
        "required": [
          "subject",
          "direction",
          "community",
          "createdAt"
        ],
        "properties": {
          "subject": {
            "ref": "com.atproto.repo.strongRef",
            "type": "ref",
            "description": "The topic or reply being voted on."
          },
          "community": {
            "type": "string",
            "format": "did",
            "description": "DID of the community where this vote was cast. Immutable origin identifier."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Client-declared timestamp when this vote was originally created."
          },
          "direction": {
            "type": "string",
            "description": "Vote direction. Start upvote-only; 'down' can be added later without breaking change.",
            "knownValues": [
              "up"
            ]
          }
        }
      },
      "description": "Record containing a directional vote on a forum topic or reply."
    }
  },
  "$type": "com.atproto.lexicon.schema",
  "lexicon": 1,
  "description": "A directional vote on a forum topic or reply. Votes are quantitative (ranking); reactions are expressive (emoji-style)."
}
```
