aboutsummaryrefslogtreecommitdiffstats
path: root/index.ts
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-06-13 14:21:49 -0700
committerAdam Soltys <[email protected]>2026-06-13 14:21:49 -0700
commit2548f7578ab879bc7eb292462b13f41e7f3112e5 (patch)
treea75ff4a96e3749017db7a4d65761c42e75c23b11 /index.ts
parentca28c19fe26d3f81ae62d2d3f0dc8b175849a9a8 (diff)
downloadcoinos-server-2548f7578ab879bc7eb292462b13f41e7f3112e5.tar.gz
coinos-server-2548f7578ab879bc7eb292462b13f41e7f3112e5.zip
users: add authenticated self-delete endpoint
POST /delete (auth) wipes every key tied to the calling user, mirroring scripts/delall-legacy.ts: user records, payments/invoices, sub-accounts, NWC apps, nostr follow graph + nip5. Gated by typing the username and refuses while balance+pending > 10k sats so funds can't be destroyed by accident. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
Diffstat (limited to 'index.ts')
-rw-r--r--index.ts1
1 files changed, 1 insertions, 0 deletions
diff --git a/index.ts b/index.ts
index 3b90d32b..0a3bfd89 100644
--- a/index.ts
+++ b/index.ts
@@ -123,6 +123,7 @@ app.post("/register", users.create);
app.post("/disable2fa", auth, users.disable2fa);
app.post("/2fa", auth, users.enable2fa);
app.post("/user", auth, users.update);
+app.post("/delete", auth, users.deleteSelf);
app.post("/reset", optional, users.reset);
app.post("/upload/:type", users.upload);
app.get("/users/delete/:username", users.del);