social.colibri.labeler.service

colibri.social

Documentation

Declares that this account operates a Colibri labeler and describes the badges it issues. The Colibri equivalent of `app.bsky.labeler.service`. Labels themselves stay standard `com.atproto.label` labels, served from the `#atproto_labeler` service endpoint in this account's DID document.

main record

Declares that this account operates a Colibri labeler and describes the badges it issues. The Colibri equivalent of `app.bsky.labeler.service`. Labels themselves stay standard `com.atproto.label` labels, served from the `#atproto_labeler` service endpoint in this account's DID document.

Record Key literal:self Fixed literal value

Properties

$type string nsid Optional

The type of the record.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

View raw schema
{
  "key": "literal:self",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "badgeDefinitions",
      "createdAt"
    ],
    "properties": {
      "$type": {
        "type": "string",
        "format": "nsid",
        "description": "The type of the record."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime"
      },
      "badgeDefinitions": {
        "type": "array",
        "items": {
          "ref": "lex:social.colibri.labeler.service#badgeDefinition",
          "type": "ref"
        },
        "maxLength": 100,
        "description": "Every badge this labeler can issue. A label value absent from this list is not a recognised badge."
      }
    }
  },
  "description": "Declares that this account operates a Colibri labeler and describes the badges it issues. The Colibri equivalent of `app.bsky.labeler.service`. Labels themselves stay standard `com.atproto.label` labels, served from the `#atproto_labeler` service endpoint in this account's DID document."
}
badgeAppearance object

Colours for a single badge. Every colour is a `#rrggbb` or `#rrggbbaa` hex literal so clients can render it without interpreting arbitrary CSS.

Properties

colors array of string Required

Badge colours, each a `#rrggbb` or `#rrggbbaa` hex literal. `solid` uses only the first entry.

maxLength: 6 itemsminLength: 1 items
foreground string Required

Text colour, a `#rrggbb` or `#rrggbbaa` hex literal.

maxLength: 9 bytesminLength: 7 bytes
variant string Optional

How `colors` is applied. `solid` fills the badge with the first colour. `gradientBorder` renders every colour as a stop in a gradient border over a darkened gradient fill. Defaults to `solid`.

maxLength: 32 bytes
Known values: solid, gradientBorder
View raw schema
{
  "type": "object",
  "required": [
    "colors",
    "foreground"
  ],
  "properties": {
    "colors": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 9,
        "minLength": 7
      },
      "maxLength": 6,
      "minLength": 1,
      "description": "Badge colours, each a `#rrggbb` or `#rrggbbaa` hex literal. `solid` uses only the first entry."
    },
    "variant": {
      "type": "string",
      "maxLength": 32,
      "description": "How `colors` is applied. `solid` fills the badge with the first colour. `gradientBorder` renders every colour as a stop in a gradient border over a darkened gradient fill. Defaults to `solid`.",
      "knownValues": [
        "solid",
        "gradientBorder"
      ]
    },
    "foreground": {
      "type": "string",
      "maxLength": 9,
      "minLength": 7,
      "description": "Text colour, a `#rrggbb` or `#rrggbbaa` hex literal."
    }
  },
  "description": "Colours for a single badge. Every colour is a `#rrggbb` or `#rrggbbaa` hex literal so clients can render it without interpreting arbitrary CSS."
}
badgeDefinition object

Metadata for a single badge. `identifier` is the `val` carried by the corresponding label.

Properties

description string Required

What holding this badge means.

maxLength: 512 bytes
identifier string Required

The label value, lowercase kebab-case, as it appears in `com.atproto.label` records.

maxLength: 100 bytes
name string Required

Short display name shown on the badge itself.

maxLength: 64 bytes
precedence integer Optional

Sort order when a user holds several badges. Lower sorts first, so the lowest value is the default primary badge.

minimum: 0
View raw schema
{
  "type": "object",
  "required": [
    "identifier",
    "name",
    "description"
  ],
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 64,
      "description": "Short display name shown on the badge itself."
    },
    "appearance": {
      "ref": "lex:social.colibri.labeler.service#badgeAppearance",
      "type": "ref",
      "description": "How the badge is coloured. Clients fall back to a neutral style when this is absent or unrecognised."
    },
    "identifier": {
      "type": "string",
      "maxLength": 100,
      "description": "The label value, lowercase kebab-case, as it appears in `com.atproto.label` records."
    },
    "precedence": {
      "type": "integer",
      "minimum": 0,
      "description": "Sort order when a user holds several badges. Lower sorts first, so the lowest value is the default primary badge."
    },
    "description": {
      "type": "string",
      "maxLength": 512,
      "description": "What holding this badge means."
    }
  },
  "description": "Metadata for a single badge. `identifier` is the `val` carried by the corresponding label."
}

Lexicon Garden

@