Wallets
Wallet management and contract deployment.
Authentication: Bearer token required.
Create Wallet
Endpoint: POST /api/v1/wallets
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| node_id | string | Yes | Node UUID |
| chain_id | string | Yes | Chain UUID |
| name | string | Yes | 1–255 chars |
Response — 201 Created
Returns wallet object (id, node_id, chain_id, name, address, is_active, created_at, updated_at).
| Status | Description |
|---|---|
| 404 | Node or chain not found |
List Wallets
Endpoint: GET /api/v1/wallets
Query Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| node_id | string | Yes | — | Node UUID |
| page | int | No | 1 | Page number |
| per_page | int | No | 10 | Items per page (max 100) |
Response — 200 OK
Paginated list with items, page, per_page, total.
Get Wallet by ID
Endpoint: GET /api/v1/wallets/{id}
Response — 200 OK
Full wallet object.
| Status | Description |
|---|---|
| 404 | Wallet not found |
Update Wallet
Endpoint: PUT /api/v1/wallets/{id}
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | No | max 255 |
| address | string | No | max 255 |
| is_active | bool | No | Active flag |
Response — 204 No Content
| Status | Description |
|---|---|
| 404 | Wallet not found |
Delete Wallet
Endpoint: DELETE /api/v1/wallets/{id}
Soft-deletes a wallet.
Response — 204 No Content
| Status | Description |
|---|---|
| 404 | Wallet not found |
Deploy Node Contracts
Endpoint: POST /api/v1/wallets/{id}/deploy
Starts or continues an ordered deployment sequence. Safe to call repeatedly.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| node_id | string | Yes | Node UUID |
| network_id | string | Yes | Network UUID |
Wallet ID comes from path.
Response — 201 Created
{
"step": "deploy_diamond",
"transaction_id": "550e8400-...",
"status": "started"
}
| Status | Description |
|---|---|
| 404 | Wallet, node, or network not found |
Check Node Contract Versions
Endpoint: GET /api/v1/wallets/{id}/deploy/version-check
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| node_id | string | Yes | Node UUID |
| network_id | string | Yes | Network UUID |
Response — 200 OK
Returns any_update_available, checked_at, contracts array.
| Status | Description |
|---|---|
| 404 | Wallet, node, or network not found |
Update Node Contracts
Endpoint: POST /api/v1/wallets/{id}/update
Deploys updated facets (if needed) and triggers update_diamond_cut.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| node_id | string | Yes | Node UUID |
| network_id | string | Yes | Network UUID |
Response — 201 Created
| Status | Description |
|---|---|
| 404 | Wallet, node, or network not found |