app.tempomusic.actor.restoreAccount
Restore the requesting viewer's previously soft-deleted account. Clears deleted_at on the profile and unconditionally on every post, reply and like owned by the viewer (including content the viewer soft-deleted individually before the account cascade). Moderation-held content stays in moderation hold. Only valid within the 30-day restoration window opened by deleteAccount; outside the window the profile has been hard-deleted and the cascade content is anonymised, so restoration is impossible. See ADR-009 for the full retention lifecycle.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | actor.tempomusic.app |
| Indexed |
Checks
Valid Lint pass{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "Restore the requesting viewer's previously soft-deleted account. Clears deleted_at on the profile and unconditionally on every post, reply and like owned by the viewer (including content the viewer soft-deleted individually before the account cascade). Moderation-held content stays in moderation hold. Only valid within the 30-day restoration window opened by deleteAccount; outside the window the profile has been hard-deleted and the cascade content is anonymised, so restoration is impossible. See ADR-009 for the full retention lifecycle.",
"errors": [
{
"description": "The 30-day restoration window has elapsed since deleteAccount was called. The profile has been hard-deleted and cannot be restored.",
"name": "ExpiredWindow"
},
{
"description": "The viewer's profile is not in the soft-deleted state; nothing to restore.",
"name": "NotDeleted"
},
{
"description": "TEM-518: the soft deletion originated from a PDS-direct account destruction (self-service PDS account page). The AT Protocol repo no longer exists upstream, so restoring the appview projection would resurrect an orphan; the deletion proceeds to the day-30 hard delete.",
"name": "NotRestorable"
}
],
"output": {
"encoding": "application/json",
"schema": {
"properties": {},
"type": "object"
}
},
"parameters": {
"properties": {
"viewer": {
"description": "DID of the requesting viewer whose account is being restored. Must match the authenticated principal.",
"format": "did",
"type": "string"
}
},
"required": [
"viewer"
],
"type": "params"
},
"type": "procedure"
}
},
"id": "app.tempomusic.actor.restoreAccount",
"lexicon": 1
}