social.colibri.beta.emoji.defs
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"catalogView": {
"description": "Every custom emoji and pack in one repo.",
"properties": {
"emojis": {
"description": "Every emoji in the repo.",
"items": {
"ref": "#emojiView",
"type": "ref"
},
"type": "array"
},
"owner": {
"description": "The repo the catalog belongs to.",
"format": "did",
"type": "string"
},
"packs": {
"description": "Every pack in the repo.",
"items": {
"ref": "#packView",
"type": "ref"
},
"type": "array"
}
},
"required": [
"owner",
"emojis",
"packs"
],
"type": "object"
},
"emojiImage": {
"description": "One stored rendition of an emoji.",
"properties": {
"animated": {
"description": "Whether the format is animated.",
"type": "boolean"
},
"cid": {
"description": "The blob's CID in the owner's repo.",
"format": "cid",
"type": "string"
},
"format": {
"description": "The image format.",
"knownValues": [
"png",
"webp",
"gif",
"apng",
"lottie",
"other"
],
"type": "string"
},
"mimeType": {
"description": "The blob's MIME type.",
"type": "string"
},
"pixels": {
"description": "The rendition's longest edge in pixels, when the provider fixes one.",
"minimum": 1,
"type": "integer"
},
"size": {
"description": "The blob's size in bytes.",
"minimum": 0,
"type": "integer"
}
},
"required": [
"cid",
"format",
"animated"
],
"type": "object"
},
"emojiOwner": {
"description": "The user or community that holds an emoji or pack.",
"properties": {
"avatar": {
"description": "The user's avatar or the community's icon.",
"format": "uri",
"type": "string"
},
"did": {
"description": "The owner.",
"format": "did",
"type": "string"
},
"displayName": {
"description": "The user's display name or the community's name.",
"type": "string"
},
"handle": {
"description": "The owner's handle.",
"format": "handle",
"type": "string"
},
"kind": {
"description": "Whether the owner is a user or a community.",
"knownValues": [
"user",
"community"
],
"type": "string"
}
},
"required": [
"did",
"kind"
],
"type": "object"
},
"emojiView": {
"description": "A custom emoji, normalised from its provider's record.",
"properties": {
"adultOnly": {
"description": "Whether the owner marked the emoji as adult content.",
"type": "boolean"
},
"alt": {
"description": "Alt text for the image.",
"type": "string"
},
"cid": {
"description": "The record's CID.",
"format": "cid",
"type": "string"
},
"createdAt": {
"description": "When the record was created.",
"format": "datetime",
"type": "string"
},
"fallback": {
"description": "The text shown where the image cannot render.",
"type": "string"
},
"images": {
"description": "Every rendition the record carries.",
"items": {
"ref": "#emojiImage",
"type": "ref"
},
"type": "array"
},
"name": {
"description": "The name without colons.",
"type": "string"
},
"owner": {
"description": "The repo that holds the record and its blobs.",
"format": "did",
"type": "string"
},
"provider": {
"description": "The emoji provider whose lexicon the record uses.",
"knownValues": [
"blue.moji"
],
"type": "string"
},
"uri": {
"description": "The emoji's record URI.",
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"provider",
"owner",
"name",
"images",
"createdAt"
],
"type": "object"
},
"followView": {
"description": "A pack or single emoji the user follows, resolved against the owner's current catalog.",
"properties": {
"createdAt": {
"description": "When the user started following.",
"format": "datetime",
"type": "string"
},
"emojis": {
"description": "The pack's current emoji in pack order, or the single followed emoji. Empty unless state is available.",
"items": {
"ref": "#emojiView",
"type": "ref"
},
"type": "array"
},
"kind": {
"description": "Whether the subject is a pack or a single emoji.",
"knownValues": [
"pack",
"emoji"
],
"type": "string"
},
"owner": {
"description": "Who holds the subject.",
"ref": "#emojiOwner",
"type": "ref"
},
"pack": {
"description": "The pack, when kind is pack and state is available.",
"ref": "#packView",
"type": "ref"
},
"state": {
"description": "available when the subject resolves. missing when the owner deleted it. unreachable when the owner's repo cannot be read, for example a deactivated or taken down account.",
"knownValues": [
"available",
"missing",
"unreachable"
],
"type": "string"
},
"subject": {
"description": "The followed pack or emoji.",
"format": "at-uri",
"type": "string"
},
"uri": {
"description": "The follow record.",
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"subject",
"kind",
"state",
"owner",
"emojis",
"createdAt"
],
"type": "object"
},
"libraryView": {
"description": "A user's emoji library.",
"properties": {
"follows": {
"description": "Everything the user follows, oldest follow first.",
"items": {
"ref": "#followView",
"type": "ref"
},
"type": "array"
},
"own": {
"description": "The emoji and packs in the user's own repo.",
"ref": "#catalogView",
"type": "ref"
}
},
"required": [
"own",
"follows"
],
"type": "object"
},
"packView": {
"description": "A named group of custom emoji, normalised from its provider's records.",
"properties": {
"createdAt": {
"description": "When the record was created.",
"format": "datetime",
"type": "string"
},
"description": {
"description": "The pack's description.",
"type": "string"
},
"emojis": {
"description": "The URIs of the emoji in the pack, in the order they were added. Only emoji present in the catalog are listed.",
"items": {
"format": "at-uri",
"type": "string"
},
"type": "array"
},
"name": {
"description": "The pack's name.",
"type": "string"
},
"owner": {
"description": "The repo that holds the pack.",
"format": "did",
"type": "string"
},
"provider": {
"description": "The emoji provider whose lexicon the record uses.",
"knownValues": [
"blue.moji"
],
"type": "string"
},
"uri": {
"description": "The pack's record URI.",
"format": "at-uri",
"type": "string"
}
},
"required": [
"uri",
"provider",
"owner",
"name",
"emojis",
"createdAt"
],
"type": "object"
}
},
"id": "social.colibri.beta.emoji.defs",
"lexicon": 1
}
Metadata
- DID
-
did:plc:mprdjqjluoswa7awzggaggj3 - CID
-
bafyreihmy73xj5bgajyqgqgrsozz4i72dkle7w7k6r3aom6jzwm4nixv5y - Indexed At
- 2026-10-18 11:51 UTC
- AT-URI
-
at://did:plc:mprdjqjluoswa7awzggaggj3/com.atproto.lexicon.schema/social.colibri.beta.emoji.defs
Version History (2 versions)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
Lists the custom emoji and packs in one repo, from every supported emoji provider. Works for communities and users alike, since the records are public.
-
Marks its author as following a custom emoji pack or a single custom emoji. Presence means following and deleting it means unfollowing. The user writes it into their own social.colibri.beta.actor.preferences space, so o…
-
A custom emoji. The record key is the canonical alias for ASCII aliases, or its RFC 3492 Punycode encoding (xn-- prefixed) for internationalised aliases; see Bluemoji RFC 0005.
-
A shareable Bluemoji pack