org.ballotready.constituent.profile

ballotready.org

{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "issue": {
      "description": "An issue or topic of concern.",
      "properties": {
        "civicEngineId": {
          "description": "CivicEngine API identifier for the issue.",
          "type": "string"
        },
        "name": {
          "description": "Name of the issue.",
          "type": "string"
        }
      },
      "required": [
        "civicEngineId"
      ],
      "type": "object"
    },
    "main": {
      "description": "A declaration of a BallotReady constituent profile.",
      "key": "literal:self",
      "record": {
        "properties": {
          "avatar": {
            "accept": [
              "image/png",
              "image/jpeg"
            ],
            "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'",
            "maxSize": 1000000,
            "type": "blob"
          },
          "banner": {
            "accept": [
              "image/png",
              "image/jpeg"
            ],
            "description": "Larger horizontal image to display behind profile view.",
            "maxSize": 1000000,
            "type": "blob"
          },
          "bskyProfileProperties": {
            "description": "List of properties to inherit from the user's Bluesky profile (app.bsky.actor.profile).",
            "items": {
              "enum": [
                "avatar",
                "banner",
                "displayName",
                "description"
              ],
              "type": "string"
            },
            "type": "array"
          },
          "constituentOf": {
            "description": "Self-declared constituency group, e.g. \"Michigan\" or \"United States\".",
            "maxGraphemes": 64,
            "maxLength": 640,
            "type": "string"
          },
          "createdAt": {
            "description": "Timestamp when this record was originally created.",
            "format": "datetime",
            "type": "string"
          },
          "description": {
            "description": "The constituent's bio/description.",
            "maxGraphemes": 256,
            "maxLength": 2560,
            "type": "string"
          },
          "displayName": {
            "description": "The constituent's display name.",
            "maxGraphemes": 64,
            "maxLength": 640,
            "type": "string"
          },
          "topIssues": {
            "description": "Ranked list of the constituent's highest priority issues.",
            "items": {
              "ref": "#issue",
              "type": "ref"
            },
            "maxLength": 10,
            "type": "array"
          }
        },
        "required": [
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "org.ballotready.constituent.profile",
  "lexicon": 1
}

Validate Record

Validate a record against org.ballotready.constituent.profile

Validation Options
Treat any remaining unresolved references as valid

Metadata

DID
did:plc:tctahrvhb37udyarpqahggnv
CID
bafyreiexe5s5ipuqdxqn2tsv7cn2twg4wvdm6rmfzvwckzyzkbm3evhyjy
Indexed At
2026-10-16 01:34 UTC
AT-URI
at://did:plc:tctahrvhb37udyarpqahggnv/com.atproto.lexicon.schema/org.ballotready.constituent.profile

Version History (4 versions)

Similar Lexicons

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

Lexicon Garden

@