com.getorbyt.actor.profile
The account's Orbyt profile, separate from its profile on any connected network. Every field is optional: an absent field falls back to the network profile, so an account that never edits here still renders. The profile's colours and app preferences stay in com.getorbyt.profile; how each Highlight box looks is here, with the boxes.
Details · record, key literal:self
| Kind | record |
|---|---|
| Record key | literal:self |
| Authority | actor.getorbyt.com |
| Indexed |
Showing version bafyreiabfdayzsqyxsawcdshuldki7fmzskr4nbq3347n5itemnnro5phq. Show the latest
Checks
Validunlimited-stringdefs.boxStyle.properties.sizeNo maxLength, maxGraphemes or format limits this string.unlimited-stringdefs.main.record.properties.networkFollowImportNo maxLength, maxGraphemes or format limits this string.
{
"$type": "com.atproto.lexicon.schema",
"defs": {
"boxStyle": {
"properties": {
"background": {
"description": "`#RRGGBB`. Any colour; see textColor.",
"maxLength": 7,
"type": "string"
},
"box": {
"description": "The box's id, as profileBoxes lists it.",
"maxLength": 640,
"type": "string"
},
"fill": {
"accept": [
"image/png",
"image/jpeg",
"image/webp",
"image/gif"
],
"description": "A photo or GIF that fills the box behind its words.",
"maxSize": 1000000,
"type": "blob"
},
"label": {
"ref": "#textPlacement",
"type": "ref"
},
"size": {
"description": "Fit is as wide as its words, wide the whole row, tall half a row and two rows high. Unknown sizes are fit.",
"knownValues": [
"fit",
"wide",
"tall"
],
"type": "string"
},
"sticker": {
"ref": "#sticker",
"type": "ref"
},
"textColor": {
"description": "`#RRGGBB` for the label and words. Any colour: readers who ask for more contrast get a readable shade of it, and a pair under 1.5:1 is read as that shade for everyone.",
"maxLength": 7,
"type": "string"
},
"value": {
"ref": "#textPlacement",
"type": "ref"
}
},
"required": [
"box"
],
"type": "object"
},
"customBox": {
"description": "A box the account wrote: a short label over what it says.",
"properties": {
"id": {
"description": "A record key (TID) the account made for the box; its box id is `custom:` and this.",
"maxLength": 64,
"type": "string"
},
"label": {
"maxGraphemes": 20,
"maxLength": 200,
"type": "string"
},
"link": {
"description": "An app.bsky.actor.link record in the account's repository the box opens. The link lives on the network profile, so it shows there too; a box whose link record is gone shows without one.",
"format": "at-uri",
"type": "string"
},
"value": {
"maxGraphemes": 40,
"maxLength": 400,
"type": "string"
}
},
"required": [
"id",
"value"
],
"type": "object"
},
"main": {
"description": "The account's Orbyt profile, separate from its profile on any connected network. Every field is optional: an absent field falls back to the network profile, so an account that never edits here still renders. The profile's colours and app preferences stay in com.getorbyt.profile; how each Highlight box looks is here, with the boxes.",
"key": "literal:self",
"record": {
"properties": {
"avatar": {
"accept": [
"image/gif",
"image/png",
"image/jpeg",
"image/webp"
],
"description": "Square avatar image. Animated GIFs loop in supporting clients.",
"maxSize": 3000000,
"type": "blob"
},
"avatarVideo": {
"accept": [
"video/mp4"
],
"description": "Optional silent looping MP4 rendition of the avatar.",
"maxSize": 3000000,
"type": "blob"
},
"banner": {
"accept": [
"image/gif",
"image/png",
"image/jpeg",
"image/webp"
],
"maxSize": 3000000,
"type": "blob"
},
"boxStyles": {
"description": "How the account styled its boxes, one entry per box id. A box without one keeps the default look.",
"items": {
"ref": "#boxStyle",
"type": "ref"
},
"maxLength": 40,
"type": "array"
},
"createdAt": {
"format": "datetime",
"type": "string"
},
"customBoxes": {
"description": "Boxes the account wrote itself. Each is listed in profileBoxes as `custom:` and its id.",
"items": {
"ref": "#customBox",
"type": "ref"
},
"maxLength": 8,
"type": "array"
},
"description": {
"maxGraphemes": 256,
"maxLength": 2560,
"type": "string"
},
"displayName": {
"maxGraphemes": 64,
"maxLength": 640,
"type": "string"
},
"networkFollowImport": {
"default": "off",
"description": "How the account's follows on the connected network become Orbyt follows. `continuous` follows each network follow who joins Orbyt, until the account unfollows them here. An unrecognised value means off.",
"knownValues": [
"off",
"once",
"continuous"
],
"type": "string"
},
"profileBoxes": {
"description": "The boxes on the second page of the profile header, in order, by the ids com.getorbyt.actor.defs#profileBox gives them. A box not listed is hidden, including one added after this was written. Absent: the service's default boxes.",
"items": {
"maxLength": 640,
"type": "string"
},
"maxLength": 40,
"type": "array"
},
"showNetworkLink": {
"default": true,
"description": "Whether Orbyt links this profile to the account's profile on the connected network.",
"type": "boolean"
},
"updatedAt": {
"format": "datetime",
"type": "string"
}
},
"type": "object"
},
"type": "record"
},
"sticker": {
"description": "An image placed on the box: one of the account's own stickers or a photo. The box's edge crops it.",
"properties": {
"image": {
"accept": [
"image/png",
"image/webp",
"image/gif"
],
"description": "Required in practice: a sticker without an image draws nothing.",
"maxSize": 1000000,
"type": "blob"
},
"rotation": {
"description": "Degrees, clockwise.",
"maximum": 180,
"minimum": -180,
"type": "integer"
},
"size": {
"description": "Width and height, thousandths of the box's height.",
"maximum": 2000,
"minimum": 100,
"type": "integer"
},
"x": {
"description": "Centre, thousandths of the box's width.",
"maximum": 1000,
"minimum": 0,
"type": "integer"
},
"y": {
"description": "Centre, thousandths of the box's height.",
"maximum": 1000,
"minimum": 0,
"type": "integer"
}
},
"required": [
"x",
"y",
"size"
],
"type": "object"
},
"textPlacement": {
"description": "Where a line of the box sits, by its centre, in thousandths of the box's width and height, and its size.",
"properties": {
"size": {
"description": "Points. Absent: the line's default size.",
"maximum": 56,
"minimum": 14,
"type": "integer"
},
"x": {
"maximum": 1000,
"minimum": 0,
"type": "integer"
},
"y": {
"maximum": 1000,
"minimum": 0,
"type": "integer"
}
},
"required": [
"x",
"y"
],
"type": "object"
}
},
"id": "com.getorbyt.actor.profile",
"lexicon": 1
}