{
"id": "town.muni.arbiter.resetPolicy",
"defs": {
"main": {
"type": "procedure",
"input": {
"schema": {
"type": "object",
"required": [
"arbiterDid",
"policy"
],
"properties": {
"policy": {
"type": "string",
"description": "The replacement Rego source text for the root policy."
},
"arbiterDid": {
"type": "string",
"format": "did",
"description": "The stewarded account whose root policy to reset."
}
}
},
"encoding": "application/json"
},
"errors": [
{
"name": "ErrPermissionDenied",
"description": "The caller is not the designated recovery admin, or no recovery admin is set."
},
{
"name": "ErrInvalidPolicy",
"description": "The replacement policy failed to compile."
}
],
"output": {
"schema": {
"type": "object",
"required": [
"ok"
],
"properties": {
"ok": {
"type": "boolean"
}
}
},
"encoding": "application/json"
},
"description": "Reset a stewarded arbiter's root policy.\n\nThe caller authenticates via serviceAuth (aud = arbiter-server DID,\nlxm = town.muni.arbiter.resetPolicy). Only the account designated in the\narbiter's `town.muni.arbiter.recovery/self` record (the recovery admin)\nmay reset the policy. The replacement Rego source is written to\n`town.muni.arbiter.policy.root/self` and the arbiter is re-onboarded.\n\nIf no recovery admin is set, this endpoint is unavailable (forbidden)."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}
Metadata
- DID
-
did:plc:ulg2bzgrgs7ddjjlmhtegk3v
- CID
-
bafyreifwoocv5poc53iruo425ow26e5woj5x6giuh5buwzywaqj7prsx24
- Indexed At
- 2026-08-10 17:41 UTC
- AT-URI
-
at://did:plc:ulg2bzgrgs7ddjjlmhtegk3v/com.atproto.lexicon.schema/town.muni.arbiter.resetPolicy