blue.moji.embed.sticker

moji.blue

Documentation

A full-sized Bluemoji sticker attached to a post as media, in the style of app.bsky.embed.external. References a blue.moji.collection.item record in the sticker owner's repo.

main object

A full-sized Bluemoji sticker attached to a post as media, in the style of app.bsky.embed.external. References a blue.moji.collection.item record in the sticker owner's repo.

Properties

sticker ref #sticker Required

No description available.

View raw schema
{
  "type": "object",
  "required": [
    "sticker"
  ],
  "properties": {
    "sticker": {
      "ref": "#sticker",
      "type": "ref"
    }
  },
  "description": "A full-sized Bluemoji sticker attached to a post as media, in the style of app.bsky.embed.external. References a blue.moji.collection.item record in the sticker owner's repo."
}
formats_v0 object

CIDs of the full-size (512px-class) blobs stored in the sticker owner's repo under blue.moji.collection.item stickerFormats. CID-only, like blue.moji.richtext.facet#formats_v1, because blobs cannot be referenced across repos.

Properties

apng_512 string cid Optional

A content identifier (CID) referencing immutable data.

gif_512 string cid Optional

A content identifier (CID) referencing immutable data.

lottie string cid Optional

A content identifier (CID) referencing immutable data.

png_512 string cid Optional

A content identifier (CID) referencing immutable data.

webp_512 string cid Optional

A content identifier (CID) referencing immutable data.

View raw schema
{
  "type": "object",
  "properties": {
    "lottie": {
      "type": "string",
      "format": "cid"
    },
    "gif_512": {
      "type": "string",
      "format": "cid"
    },
    "png_512": {
      "type": "string",
      "format": "cid"
    },
    "apng_512": {
      "type": "string",
      "format": "cid"
    },
    "webp_512": {
      "type": "string",
      "format": "cid"
    }
  },
  "description": "CIDs of the full-size (512px-class) blobs stored in the sticker owner's repo under blue.moji.collection.item stickerFormats. CID-only, like blue.moji.richtext.facet#formats_v1, because blobs cannot be referenced across repos."
}
sticker object

SECURITY: did/name/formats are self-attested by the posting client, like blue.moji.richtext.facet. Verify against the record strongRef (or by re-deriving the rkey from name and looking up did's blue.moji.collection.item) before rendering an image, if the render surface matters for trust.

Properties

alt string Optional

Alt text description of the sticker, for accessibility.

did string did Required

DID of the repo that owns the sticker record. Combined with the format CIDs to construct blob/CDN URLs without a getRecord round-trip, mirroring blue.moji.richtext.facet. Self-attested; see security note on this object.

formats union Required

CIDs of the full-size sticker renditions. Open union to allow future formats.

Known types:
name string Required

Colon-wrapped alias of the source Bluemoji (e.g. :blobcat:). Implementers should use this as fallback text when assets are unavailable.

record ref com.atproto.repo.strongRef Optional

Strong reference to the source blue.moji.collection.item record. Use this as the verification anchor: resolve it and compare formats before trusting this embed's claims.

View raw schema
{
  "type": "object",
  "required": [
    "did",
    "name",
    "formats"
  ],
  "properties": {
    "alt": {
      "type": "string",
      "description": "Alt text description of the sticker, for accessibility."
    },
    "did": {
      "type": "string",
      "format": "did",
      "description": "DID of the repo that owns the sticker record. Combined with the format CIDs to construct blob/CDN URLs without a getRecord round-trip, mirroring blue.moji.richtext.facet. Self-attested; see security note on this object."
    },
    "name": {
      "type": "string",
      "description": "Colon-wrapped alias of the source Bluemoji (e.g. :blobcat:). Implementers should use this as fallback text when assets are unavailable."
    },
    "record": {
      "ref": "com.atproto.repo.strongRef",
      "type": "ref",
      "description": "Strong reference to the source blue.moji.collection.item record. Use this as the verification anchor: resolve it and compare formats before trusting this embed's claims."
    },
    "formats": {
      "refs": [
        "#formats_v0"
      ],
      "type": "union",
      "closed": false,
      "description": "CIDs of the full-size sticker renditions. Open union to allow future formats."
    },
    "aspectRatio": {
      "ref": "app.bsky.embed.defs#aspectRatio",
      "type": "ref"
    }
  },
  "description": "SECURITY: did/name/formats are self-attested by the posting client, like blue.moji.richtext.facet. Verify against the record strongRef (or by re-deriving the rkey from name and looking up did's blue.moji.collection.item) before rendering an image, if the render surface matters for trust."
}
view object

No description available.

Properties

sticker ref #viewSticker Required

No description available.

View raw schema
{
  "type": "object",
  "required": [
    "sticker"
  ],
  "properties": {
    "sticker": {
      "ref": "#viewSticker",
      "type": "ref"
    }
  }
}
viewSticker object

No description available.

Properties

alt string Optional

No description available.

fullsize string uri Required

Fully-qualified URL of the full-size sticker asset.

labels array of refcom.atproto.label.defs#label Optional

AppViews producing this view MUST populate labels (and reflect the source item's adultOnly) from the verified blue.moji.collection.item record, not from the embed's own self-attested fields — see the security note on #sticker. Consumers SHOULD warn or blur before rendering fullsize/thumb when present.

name string Required

No description available.

thumb string uri Optional

URL of the 128px inline-emoji rendition, if available.

View raw schema
{
  "type": "object",
  "required": [
    "fullsize",
    "name"
  ],
  "properties": {
    "alt": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "thumb": {
      "type": "string",
      "format": "uri",
      "description": "URL of the 128px inline-emoji rendition, if available."
    },
    "labels": {
      "type": "array",
      "items": {
        "ref": "com.atproto.label.defs#label",
        "type": "ref"
      },
      "description": "AppViews producing this view MUST populate labels (and reflect the source item's adultOnly) from the verified blue.moji.collection.item record, not from the embed's own self-attested fields — see the security note on #sticker. Consumers SHOULD warn or blur before rendering fullsize/thumb when present."
    },
    "record": {
      "ref": "com.atproto.repo.strongRef",
      "type": "ref"
    },
    "fullsize": {
      "type": "string",
      "format": "uri",
      "description": "Fully-qualified URL of the full-size sticker asset."
    },
    "aspectRatio": {
      "ref": "app.bsky.embed.defs#aspectRatio",
      "type": "ref"
    }
  }
}

Lexicon Garden

@