wallet
Register a non-custodial wallet address
Register a public wallet address for balance monitoring, transaction indexing, and webhook notifications. Keys are never sent to the server; generation and signing happen client-side only. Supports EVM, UTXO, Solana, Tron, TON, Cardano, and other chains. Optionally provide derivation path and label for multi-address tracking.
/api/wallet/non-custodial/register-addressAuthentication
Authorization: Bearer YOUR_TOKEN header (user-facing apps, RBAC). View authentication guide →Request Body
Public address, chain identifier, and optional derivation path and label. projectId scopes the registration to a project.
{
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"chain": "base",
"derivationPath": "m/44'/60'/0'/0/5",
"label": "User Wallet 5",
"projectId": "proj_qh5hFHNT70YZ"
}{
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"chain": "base",
"derivationPath": "m/44'/60'/0'/0/5",
"label": "User Wallet 5",
"projectId": "proj_qh5hFHNT70YZ"
}SDK setup
Create a client and set credentials (JWT and/or API key) before calling the API. Match the authentication type shown above.
import { MudbaseClient } from "mudbase";
const client = new MudbaseClient();
client.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig");import { MudbaseClient } from "mudbase";
const client = new MudbaseClient();
client.setJWT("eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c3JfbW9yZ2FuX2RlIiwiZW1haWwiOiJtb3JnYW4uY2hlbkBub3J0aHdpbmQuZGV2IiwiZXhwIjoxODI1MTI5NjAwfQ.doc_preview_sig");Example request
Call this endpoint using the client from SDK setup. Use View HTTP for a raw cURL example.
const result = await client.wallet.registerAddress({
address: "86999 Kristin Cove",
chain: "microchip quantify",
derivationPath: "sensor bypass",
label: "sensor reboot",
projectId: "proj_iiM3zLxdyzSG"
});const result = await client.wallet.registerAddress({
address: "86999 Kristin Cove",
chain: "microchip quantify",
derivationPath: "sensor bypass",
label: "sensor reboot",
projectId: "proj_iiM3zLxdyzSG"
});Try It Live
Test this endpoint with your own credentials. Your requests will be sent to the live API.
No Request Yet
Send a request to see the full inspector
Responses
{
"success": true,
"message": "Address registered successfully",
"data": {
"_id": "65a1b2c3d4e5f6789012345a",
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"chain": "ethereum",
"org": "685acbe0e129932fbb7a0fc3",
"project": "685ad30be129932fbb7a1047",
"derivationPath": "m/44'/60'/0'/0/5",
"label": "User Wallet 5",
"isActive": true,
"registeredAt": "2026-01-22T10:00:00.000Z",
"lastSyncedAt": null,
"createdAt": "2026-01-22T10:00:00.000Z",
"updatedAt": "2026-01-22T10:00:00.000Z"
}
}{
"success": true,
"message": "Address registered successfully",
"data": {
"_id": "65a1b2c3d4e5f6789012345a",
"address": "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb",
"chain": "ethereum",
"org": "685acbe0e129932fbb7a0fc3",
"project": "685ad30be129932fbb7a1047",
"derivationPath": "m/44'/60'/0'/0/5",
"label": "User Wallet 5",
"isActive": true,
"registeredAt": "2026-01-22T10:00:00.000Z",
"lastSyncedAt": null,
"createdAt": "2026-01-22T10:00:00.000Z",
"updatedAt": "2026-01-22T10:00:00.000Z"
}
}Errors
| Code | Meaning |
|---|---|
400 | Bad request or validation error. |
401 | Authentication required or invalid token. |
429 | Rate limit exceeded. |