Moonborn — API · admin
Hard-delete personas whose grace window elapsed (admin/cron)
GDPR §17 right to erasure. Drains deletion_queue rows where resource_type=persona, status=scheduled, scheduled_at<=now. For each persona, FK-respecting cascade physical-DELETE: chat_messages → chat_sessions → persona_versions → voice_fingerprints → marketplace_* → persona_portraits → persona_lineage → generation_steps → generation_runs → personas. audit_log rows survive (immutable ledger).
POST/v1/admin/personas/hard-delete-duescope · Bearer (API key or session JWT)
Responses
200Hard-delete cycle completed
403Forbidden — platform admin only
Body
| Field | Type | Description |
|---|---|---|
| errorreq | object | |
| error.codereq | string | |
| error.messagereq | string |
Examples
cURL
curl -X POST https://api.moonborn.co/v1/admin/personas/hard-delete-due \ -H "Authorization: Bearer $MOONBORN_API_KEY"
TypeScript
import Moonborn from '@moonborn/sdk';
const client = new Moonborn({ apiKey: process.env.MOONBORN_API_KEY });
const result = await client.admin.adminHardDeleteDuePersonas();Python
import os from moonborn import Moonborn client = Moonborn(api_key=os.environ["MOONBORN_API_KEY"]) result = client.admin.admin_hard_delete_due_personas()