Skip to main content
POST
/
v1
/
wallets
/
{walletId}
/
migrate-share
Migrate SDK Pregen Wallet Share
curl --request POST \
  --url https://api.beta.getpara.com/v1/wallets/{walletId}/migrate-share \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "encryptedPayload": "{\"encryptedData\":\"base64...\",\"ephemeral\":\"base64...\",\"algorithm\":\"ECIES-P256-AES256-SHA256\"}"
}
'
{
  "id": "0a1b2c3d-4e5f-6789-abcd-ef0123456789",
  "type": "EVM",
  "scheme": "DKLS",
  "status": "creating",
  "createdAt": "2024-01-15T09:30:00Z",
  "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f...",
  "publicKey": "<string>",
  "userIdentifier": "alice@example.com",
  "userIdentifierType": "EMAIL"
}

Authorizations

X-API-Key
string
header
default:sk_your_secret_key_here
required

Your partner secret key (server-side only)

Headers

X-Request-Id
string<uuid>

UUID for request tracing. Para returns one if omitted.

Path Parameters

walletId
string
required

Wallet ID

Example:

"0a1b2c3d-4e5f-6789-abcd-ef0123456789"

Body

application/json
encryptedPayload
string
required

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.

Example:

"{\"encryptedData\":\"base64...\",\"ephemeral\":\"base64...\",\"algorithm\":\"ECIES-P256-AES256-SHA256\"}"

Response

Wallet migrated successfully

id
string<uuid>
required

Unique wallet identifier

Example:

"0a1b2c3d-4e5f-6789-abcd-ef0123456789"

type
enum<string>
required

Blockchain network type

Available options:
EVM,
SOLANA,
COSMOS,
STELLAR
Example:

"EVM"

scheme
enum<string>
required

Signature scheme

Available options:
DKLS,
CGGMP,
ED25519
Example:

"DKLS"

status
enum<string>
required

Wallet creation status

Available options:
creating,
ready
createdAt
string<date-time>
required

ISO 8601 timestamp

Example:

"2024-01-15T09:30:00Z"

address
string

Wallet address. Present when status is ready, omitted otherwise.

Example:

"0x742d35Cc6634C0532925a3b844Bc9e7595f..."

publicKey
string

Public key. Present when status is ready, omitted otherwise.

userIdentifier
string

The user identifier associated with this wallet

Example:

"alice@example.com"

userIdentifierType
enum<string>

Type of user identifier

Available options:
EMAIL,
PHONE,
CUSTOM_ID,
GUEST_ID,
DISCORD,
TWITTER,
TELEGRAM,
FARCASTER