# place.pollen.post.poll

> An interactive poll post.

- Kind: record
- Record key: tid
- Authority: post.pollen.place
- Lexicon: 1
- Published by [keith.pollen.place](https://lexicon.garden/identity/did:plc:nwgfqqv7a56aicy3d3um37ch), the NSID's authority

## Links

- [Documentation](https://lexicon.garden/lexicon/did:plc:nwgfqqv7a56aicy3d3um37ch/place.pollen.post.poll)
- [Schema JSON](https://lexicon.garden/lexicon/did:plc:nwgfqqv7a56aicy3d3um37ch/place.pollen.post.poll/schema.json)
- [Analytics](https://lexicon.garden/lexicon/did:plc:nwgfqqv7a56aicy3d3um37ch/place.pollen.post.poll/analytics)

## Record (`place.pollen.post.poll`)

Type: record · key tid

### Properties

- `blueskyPostUri` (string · at-uri): AT URI of the cross-posted Bluesky post.
- `closesAt` (string · datetime): Absolute timestamp when the poll closes.
- `createdAt` (string · datetime, required): Client-declared timestamp when the post was created.
- `duration` (integer): Duration in hours until the poll closes.
  - Constraints: minimum: 1
- `facets` (array): Rich text annotations for the text.
  - `items` (ref)
    - Reference: `place.pollen.richtext.facet#main`
- `options` (array, required): The answer choices.
  - Constraints: minLength: 2, maxLength: 10
  - `items` (string)
    - Constraints: maxLength: 200
- `question` (string, required): The poll question.
  - Constraints: maxLength: 500
- `tags` (array): Hashtags for discovery.
  - Constraints: maxLength: 10
  - `items` (string)
    - Constraints: maxLength: 64
- `text` (string): Optional context or commentary.
  - Constraints: maxLength: 500

## Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "An interactive poll post.",
      "key": "tid",
      "record": {
        "properties": {
          "blueskyPostUri": {
            "description": "AT URI of the cross-posted Bluesky post.",
            "format": "at-uri",
            "type": "string"
          },
          "closesAt": {
            "description": "Absolute timestamp when the poll closes.",
            "format": "datetime",
            "type": "string"
          },
          "createdAt": {
            "description": "Client-declared timestamp when the post was created.",
            "format": "datetime",
            "type": "string"
          },
          "duration": {
            "description": "Duration in hours until the poll closes.",
            "minimum": 1,
            "type": "integer"
          },
          "facets": {
            "description": "Rich text annotations for the text.",
            "items": {
              "ref": "place.pollen.richtext.facet#main",
              "type": "ref"
            },
            "type": "array"
          },
          "options": {
            "description": "The answer choices.",
            "items": {
              "maxLength": 200,
              "type": "string"
            },
            "maxLength": 10,
            "minLength": 2,
            "type": "array"
          },
          "question": {
            "description": "The poll question.",
            "maxLength": 500,
            "type": "string"
          },
          "tags": {
            "description": "Hashtags for discovery.",
            "items": {
              "maxLength": 64,
              "type": "string"
            },
            "maxLength": 10,
            "type": "array"
          },
          "text": {
            "description": "Optional context or commentary.",
            "maxLength": 500,
            "type": "string"
          }
        },
        "required": [
          "question",
          "options",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "place.pollen.post.poll",
  "lexicon": 1
}
```
