Migrate an SDK-pregenerated wallet to the REST API by persisting its user share in Para’s hardware-isolated enclave.
The request body must contain an encryptedPayload — the user share encrypted with
the enclave’s P-256 public key using ECIES. The SDK’s migrateWalletShare() method
handles encryption automatically. Non-SDK callers must implement ECIES-P256 encryption
using the key from GET /v1/enclave/public-key.
After migration the wallet’s sharesPersisted flag becomes true and the wallet
can be used with all REST API signing endpoints (sign-raw, sign-transaction,
sign-message, sign-typed-data, transfer).
Migration is additive — the original SDK signing flow continues to work.
Your partner secret key (server-side only)
UUID for request tracing. Para returns one if omitted.
Wallet ID
"0a1b2c3d-4e5f-6789-abcd-ef0123456789"
JSON string containing the ECIES-encrypted user share. The SDK's
migrateWalletShare() method produces this automatically. Non-SDK
callers must encrypt the share with the enclave's P-256 public key
(from GET /v1/enclave/public-key) using ECIES-P256-AES256-SHA256.
"{\"encryptedData\":\"base64...\",\"ephemeral\":\"base64...\",\"algorithm\":\"ECIES-P256-AES256-SHA256\"}"
Wallet migrated successfully
Unique wallet identifier
"0a1b2c3d-4e5f-6789-abcd-ef0123456789"
Blockchain network type
EVM, SOLANA, COSMOS, STELLAR "EVM"
Signature scheme
DKLS, CGGMP, ED25519 "DKLS"
Wallet creation status
creating, ready ISO 8601 timestamp
"2024-01-15T09:30:00Z"
Wallet address. Present when status is ready, omitted otherwise.
"0x742d35Cc6634C0532925a3b844Bc9e7595f..."
Public key. Present when status is ready, omitted otherwise.
The user identifier associated with this wallet
"alice@example.com"
Type of user identifier
EMAIL, PHONE, CUSTOM_ID, GUEST_ID, DISCORD, TWITTER, TELEGRAM, FARCASTER