From
bafyreibvqccpt6ozjocecvifpsqirkpp5llqqik6kadotmta24vg6vrtte
indexed 2026-10-15 15:34 UTC
View this version
To
bafyreiacg5e3hyobi2k7zdkwmqagt5lsaa3jguccbprjvgbwusxd43mu6y
indexed 2026-10-19 16:33 UTC
View this version
Compatibility
backward compatible Backward compatible. 6 non-breaking changes.
Non-breaking changes (6)
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.actor.setStatus:input.customEmoji" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.actor.setStatus:input.removeCustomEmoji" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.richtext.facet#customEmoji" }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.setStatus:input", tgt: "social.colibri.beta.actor.setStatus:input.customEmoji", kind: "prop", name: Some("customEmoji") }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.setStatus:input", tgt: "social.colibri.beta.actor.setStatus:input.removeCustomEmoji", kind: "prop", name: Some("removeCustomEmoji") }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.setStatus:input.customEmoji", tgt: "social.colibri.beta.richtext.facet#customEmoji", kind: "ref", name: None }
Migration guidance
Added
AddedVertex { vertex_id: "social.colibri.beta.actor.setStatus:input.customEmoji" }AddedVertex { vertex_id: "social.colibri.beta.actor.setStatus:input.removeCustomEmoji" }AddedVertex { vertex_id: "social.colibri.beta.richtext.facet#customEmoji" }
Notes
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.setStatus:input", tgt: "social.colibri.beta.actor.setStatus:input.customEmoji", kind: "prop", name: Some("customEmoji") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.setStatus:input", tgt: "social.colibri.beta.actor.setStatus:input.removeCustomEmoji", kind: "prop", name: Some("removeCustomEmoji") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.setStatus:input.customEmoji", tgt: "social.colibri.beta.richtext.facet#customEmoji", kind: "ref", name: None }
Changes
11
{22
"$type": "com.atproto.lexicon.schema",33
"defs": {44
"main": {55
"description": "Sets the requesting user's off-protocol presence. An absent field leaves the current value unchanged.",66
"errors": [77
{88
"description": "The request has no valid service auth.",99
"name": "AuthRequired"1010
},1111
{1212
"description": "A field is present but does not hold an allowed value.",1313
"name": "InvalidRequest"1414
}1515
],1616
"input": {1717
"encoding": "application/json",1818
"schema": {1919
"properties": {20
"customEmoji": {21
"description": "A custom emoji shown beside the status. The uri must name an emoji item record. Absent leaves the current value unchanged. Takes precedence over removeCustomEmoji.",22
"ref": "social.colibri.beta.richtext.facet#customEmoji",23
"type": "ref"24
},2025
"emoji": {21
"description": "An emoji shown beside the status. Absent leaves the current value unchanged.",26
"description": "A Unicode emoji shown beside the status. An empty string clears it. Absent leaves the current value unchanged.",2227
"type": "string"2328
},2429
"expiresAt": {2530
"description": "When the status clears. Absent leaves the current value unchanged. Takes precedence over removeExpiresAt.",2631
"format": "datetime",2732
"type": "string"2833
},2934
"onlineState": {3035
"description": "Derived online state. Absent leaves the current value unchanged.",3136
"knownValues": [3237
"online",3338
"away",3439
"dnd",3540
"offline"3641
],3742
"type": "string"3843
},44
"removeCustomEmoji": {45
"description": "Removes the custom emoji. Ignored when customEmoji is also given.",46
"type": "boolean"47
},3948
"removeExpiresAt": {4049
"description": "Removes the status expiry, so the status stays until it is changed. Ignored when expiresAt is also given.",4150
"type": "boolean"4251
},4352
"showWhileOffline": {4453
"description": "Whether a client shows the status while the user is offline. Absent leaves the current value unchanged.",4554
"type": "boolean"4655
},4756
"text": {48
"description": "The status text. Absent leaves the current value unchanged.",57
"description": "The status text. An empty string clears it. Absent leaves the current value unchanged.",4958
"maxLength": 64,5059
"type": "string"5160
}5261
},5362
"type": "object"5463
}5564
},5665
"output": {5766
"encoding": "application/json",5867
"schema": {5968
"properties": {6069
"presence": {6170
"description": "The requesting user's presence, after the update.",6271
"ref": "social.colibri.beta.actor.defs#presence",6372
"type": "ref"6473
}6574
},6675
"required": [6776
"presence"6877
],6978
"type": "object"7079
}7180
},7281
"type": "procedure"7382
}7483
},7584
"id": "social.colibri.beta.actor.setStatus",7685
"lexicon": 17786
}