QM3 Wallets — /api/qm3*
Multi-signature wallets for the QM3 surface. A wallet has multiple owners; a transition is initiated by one owner, then signed by enough co-owners (HMAC signatures) to clear its threshold before it executes. Admins create wallets; owners drive the pending-transition flow.
Source: shared/api-core/src/routes/qm3Wallets.ts.
Admin
| Method | Path | Auth | Notes |
|---|---|---|---|
POST | /api/admin/qm3-wallets | Admin | Create a wallet. |
GET | /api/admin/qm3-wallets | Admin | List wallets created on this domain. |
Owner
| Method | Path | Auth | Notes |
|---|---|---|---|
GET | /api/qm3/wallets/mine | ZID-bound | Wallets the signed-in user owns. |
GET | /api/qm3/wallets/:id | ZID-bound | Wallet detail + owners + pending count. |
POST | /api/qm3/wallets/:id/initiate | ZID-bound | Initiate a pending transition (any owner). |
GET | /api/qm3/wallets/:id/pending | ZID-bound | List pending transitions. |
POST | /api/qm3/pending/:tid/sign | ZID-bound | Attach an HMAC signature to a pending tx. |
POST | /api/qm3/pending/:tid/cancel | ZID-bound | Cancel a pending tx (initiator only). |
POST | /api/qm3/pending/:tid/compute-sig | ZID-bound | Helper — server-side derivation of the caller's HMAC. |
ZID-bound = authenticated via authenticateZeqAuth; ownership of the wallet is checked per call.