tech.waow.brand.defs

waow.tech

Documentation

authority object

Who chose this, and where they said it. For a namespace, the DID its _lexicon TXT record names; for an actor, the account itself.

Properties

did string did Required

A decentralized identifier (DID).

domain string Required

The domain whose _lexicon TXT record names the declaring DID, or the actor's handle.

maxLength: 253 bytes
uri string at-uri Required

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

View raw schema
{
  "type": "object",
  "required": [
    "domain",
    "did",
    "uri"
  ],
  "properties": {
    "did": {
      "type": "string",
      "format": "did"
    },
    "uri": {
      "type": "string",
      "format": "at-uri"
    },
    "domain": {
      "type": "string",
      "maxLength": 253,
      "description": "The domain whose _lexicon TXT record names the declaring DID, or the actor's handle."
    }
  },
  "description": "Who chose this, and where they said it. For a namespace, the DID its _lexicon TXT record names; for an actor, the account itself."
}
brandView object

Resolved brand assets for one namespace.

Properties

description string Optional

No description available.

maxLength: 512 bytes
icon string Required

URL for the icon: an https URL, or a data: URI when generated.

maxLength: 8192 bytes
iconSource string Optional

Present only when the icon comes from a lower tier than the rest of the response, e.g. a declaration that omitted an icon. The icon never inherits the declaration's authority.

maxLength: 32 bytes
Known values: declared, borrowed, curated, generated
known boolean Optional

Whether records have ever been written under this exact namespace, or a schema published for it. Prefix inheritance means an invented namespace still resolves with its parent's icon, so this is how a consumer spots a typo. A hint, never a rejection: false can also mean declared-but-not-yet-used. Absent for actors, or when the check failed.

matched string Required

What actually answered: the namespace itself, a shorter prefix it inherits from, or -- for an actor -- their resolved handle.

maxLength: 317 bytes
name string Optional

No description available.

maxLength: 128 bytes
namespace string Required

The namespace or identifier that was asked for.

maxLength: 317 bytes
source string Required

Who chose this. 'declared': the namespace's lexicon authority, in a record. 'borrowed': the reverse-DNS domain's atproto account avatar, chosen for that account rather than for this namespace. 'curated': the responding service's own table. 'generated': nobody, a deterministic monogram.

maxLength: 32 bytes
Known values: declared, borrowed, curated, generated
subject string Required

What kind of thing answered. 'plyr.fm' and 'fm.plyr' are both well-formed inputs and mean entirely different things: an identity and a namespace.

maxLength: 16 bytes
Known values: namespace, actor
url string uri Optional

A valid URI.

wordmark string Optional

No description available.

maxLength: 8192 bytes
View raw schema
{
  "type": "object",
  "required": [
    "subject",
    "namespace",
    "matched",
    "source",
    "icon"
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri"
    },
    "icon": {
      "type": "string",
      "maxLength": 8192,
      "description": "URL for the icon: an https URL, or a data: URI when generated."
    },
    "name": {
      "type": "string",
      "maxLength": 128
    },
    "known": {
      "type": "boolean",
      "description": "Whether records have ever been written under this exact namespace, or a schema published for it. Prefix inheritance means an invented namespace still resolves with its parent's icon, so this is how a consumer spots a typo. A hint, never a rejection: false can also mean declared-but-not-yet-used. Absent for actors, or when the check failed."
    },
    "colors": {
      "ref": "tech.waow.brand.defs#colors",
      "type": "ref"
    },
    "source": {
      "type": "string",
      "maxLength": 32,
      "description": "Who chose this. 'declared': the namespace's lexicon authority, in a record. 'borrowed': the reverse-DNS domain's atproto account avatar, chosen for that account rather than for this namespace. 'curated': the responding service's own table. 'generated': nobody, a deterministic monogram.",
      "knownValues": [
        "declared",
        "borrowed",
        "curated",
        "generated"
      ]
    },
    "matched": {
      "type": "string",
      "maxLength": 317,
      "description": "What actually answered: the namespace itself, a shorter prefix it inherits from, or -- for an actor -- their resolved handle."
    },
    "subject": {
      "type": "string",
      "maxLength": 16,
      "description": "What kind of thing answered. 'plyr.fm' and 'fm.plyr' are both well-formed inputs and mean entirely different things: an identity and a namespace.",
      "knownValues": [
        "namespace",
        "actor"
      ]
    },
    "wordmark": {
      "type": "string",
      "maxLength": 8192
    },
    "authority": {
      "ref": "tech.waow.brand.defs#authority",
      "type": "ref"
    },
    "namespace": {
      "type": "string",
      "maxLength": 317,
      "description": "The namespace or identifier that was asked for."
    },
    "iconSource": {
      "type": "string",
      "maxLength": 32,
      "description": "Present only when the icon comes from a lower tier than the rest of the response, e.g. a declaration that omitted an icon. The icon never inherits the declaration's authority.",
      "knownValues": [
        "declared",
        "borrowed",
        "curated",
        "generated"
      ]
    },
    "description": {
      "type": "string",
      "maxLength": 512
    }
  },
  "description": "Resolved brand assets for one namespace."
}
colors object

Brand colors as sRGB hex, '#rrggbb'. Shared by the declaration record and the views that render it.

Properties

background string Optional

No description available.

maxLength: 7 bytes
foreground string Optional

No description available.

maxLength: 7 bytes
primary string Optional

No description available.

maxLength: 7 bytes
View raw schema
{
  "type": "object",
  "properties": {
    "primary": {
      "type": "string",
      "maxLength": 7
    },
    "background": {
      "type": "string",
      "maxLength": 7
    },
    "foreground": {
      "type": "string",
      "maxLength": 7
    }
  },
  "description": "Brand colors as sRGB hex, '#rrggbb'. Shared by the declaration record and the views that render it."
}

Lexicon Garden

@