Skip to main content
POST
Create Server Wallet

Server Wallet Management

Create and manage server-side wallets secured with MPC (Multi-Party Computation) key management through Dynamic Labs. These wallets are used for all trading operations across supported exchanges.

Create Wallet

Create a new server wallet for a user. The wallet is secured with a 2-of-2 MPC threshold scheme.

Endpoint

POST /api/wallets

Request Body

Response

Response Fields

Example Request


Get Wallet

Retrieve wallet information by userId, walletId, or wallet address.

Endpoint

GET /api/wallets/:walletIdOrAddress

Path Parameters

Example Requests

Response

Error Responses

400 Bad Request
404 Not Found

Sign Message

Sign an arbitrary message using the server wallet’s MPC-managed key shares.

Endpoint

POST /api/wallets/:walletIdOrAddress/sign

Path Parameters

Request Body

Response

Example Request

Error Responses

400 Bad Request
404 Not Found
500 Internal Server Error

Security Features

  • MPC Key Management: Wallets use 2-of-2 threshold signature scheme
  • Encrypted Storage: Private key shares are encrypted at rest
  • No Single Point of Failure: Key shares are distributed across multiple parties
  • Secure Signing: All signing operations use MPC protocol

Use Cases

  • Create wallets for new users joining the platform
  • Retrieve wallet information for trading operations
  • Sign messages for exchange API registration
  • Sign transactions for deposits and withdrawals
Server wallets are managed by the platform. Never expose wallet credentials or private key shares to clients.
Store the walletId and address returned from wallet creation. You’ll need these for all subsequent trading operations.

Environment Configuration

Required environment variables:
Get these credentials from Dynamic Labs Dashboard.

Authorizations

X-API-KEY
string
header
required

Body

application/json
userId
string
required

Unique identifier for the user

Example:

"user_123"

Response

Wallet created successfully

success
boolean
userId
string

User identifier

address
string

Wallet address (0x...)

walletId
string

Wallet UUID

publicKey
string

Public key for verification