social.colibri.actor.profile
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "A Colibri-specific user profile. Singleton record on the user's own repo, kept separate from app.bsky.actor.profile so Colibri never needs write access to the Bluesky record.",
"key": "literal:self",
"record": {
"properties": {
"$type": {
"description": "The type of the record.",
"format": "nsid",
"type": "string"
},
"avatar": {
"accept": [
"image/jpeg",
"image/png",
"image/gif",
"image/webp"
],
"description": "The user's avatar image.",
"type": "blob"
},
"banner": {
"accept": [
"image/jpeg",
"image/png",
"image/gif",
"image/webp"
],
"description": "The user's profile banner image.",
"type": "blob"
},
"description": {
"description": "The user's profile description / bio.",
"maxGraphemes": 256,
"maxLength": 2560,
"type": "string"
},
"displayName": {
"description": "The user's display name.",
"maxGraphemes": 64,
"maxLength": 640,
"type": "string"
},
"preferredBadge": {
"description": "Label value of the badge the user chose to display as their primary badge. Absent means automatic (highest-priority badge).",
"maxLength": 64,
"type": "string"
},
"presenceService": {
"description": "DID of the AppView authorized to emit off-protocol presence (status, typing, voice) for this user via Humming. A receiving AppView MUST drop any Hum about this user whose authenticated origin does not equal this value. Absent means the user has not opted into cross-instance presence.",
"format": "did",
"type": "string"
},
"syncBluesky": {
"default": false,
"description": "When true, the AppView serves displayName/avatar/banner/description from the user's app.bsky.actor.profile record (Bluesky stays the live source); these mirrored fields may be omitted here.",
"type": "boolean"
},
"theme": {
"description": "Colibri-only profile theming. Always sourced from this record regardless of syncBluesky.",
"ref": "lex:social.colibri.actor.profile#theme",
"type": "ref"
}
},
"required": [],
"type": "object"
},
"type": "record"
},
"theme": {
"description": "Colibri-only profile theming.",
"properties": {
"accentColor": {
"description": "Accent color as a #rrggbb hex string.",
"maxLength": 7,
"type": "string"
},
"bannerColor": {
"description": "Solid fallback banner color as #rrggbb, used when no banner image is set.",
"maxLength": 7,
"type": "string"
},
"gradient": {
"description": "Two-color gradient profile theme.",
"ref": "lex:social.colibri.actor.profile#themeGradient",
"type": "ref"
}
},
"required": [],
"type": "object"
},
"themeGradient": {
"description": "Two-color gradient profile theme.",
"properties": {
"primary": {
"description": "Primary gradient color as #rrggbb.",
"maxLength": 7,
"type": "string"
},
"secondary": {
"description": "Secondary gradient color as #rrggbb.",
"maxLength": 7,
"type": "string"
}
},
"required": [],
"type": "object"
}
},
"id": "social.colibri.actor.profile",
"lexicon": 1,
"revision": 2
}
Metadata
- DID
-
did:plc:mprdjqjluoswa7awzggaggj3 - CID
-
bafyreigfshrxjmf7nu2x6vlknp6ox7atahk6ufsuol3puco6at3vjpweqy - Indexed At
- 2026-07-31 21:22 UTC
- AT-URI
-
at://did:plc:mprdjqjluoswa7awzggaggj3/com.atproto.lexicon.schema/social.colibri.actor.profile
Version History (3 versions)
Similar Lexicons
Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
A Colibri profile. A public record on the user's own repo, kept separate from app.bsky.actor.profile so Colibri never needs write access to the Bluesky record.
-
The profile and presence data for a Colibri actor.
-
social.coves.actor.profile record
A user's profile information
-
app.bsky.actor.profile record
A declaration of a Bluesky account profile.
-
app.offprint.actor.profile record
A declaration of an Offprint user profile. Overrides the Bluesky profile when set.