Import a wallet

How to import an existing wallet.

Import wallets by specifying the importWalletType. We allow:

  1. Importing using a private key

  2. Importing using a keystore

  3. Importing using a WIF

  4. Importing using a WIF with a passphrase

  5. Migration

Additionally, you can specify the userId in the request body to automatically import the wallet and link it to a user. Note that you need to provide a valid signing method in the header request.

Import Wallet Types

JSON

{
  "importWalletType": {
    "enum": [
      "AETERNITY_KEYSTORE",
      "AETERNITY_PRIVATE_KEY",
      "BSC_KEYSTORE",
      "BSC_PRIVATE_KEY",
      "AVAC_KEYSTORE",
      "AVAC_PRIVATE_KEY",
      "ETHEREUM_KEYSTORE",
      "MATIC_KEYSTORE",
      "ETHEREUM_PRIVATE_KEY",
      "MATIC_PRIVATE_KEY",
      "GOCHAIN_KEYSTORE",
      "GOCHAIN_PRIVATE_KEY",
      "HEDERA_KEYSTORE",
      "HEDERA_PRIVATE_KEY",
      "VECHAIN_PRIVATE_KEY",
      "VECHAIN_KEYSTORE",
      "BITCOIN_WIF",
      "BITCOIN_WIF_PASSPHRASE",
      "LITECOIN_WIF",
      "LITECOIN_WIF_PASSPHRASE",
      "NEO_KEYSTORE",
      "NEO_PRIVATE_KEY",
      "NEO_WIF",
      "IMX_KEYSTORE",
      "IMX_PRIVATE_KEY",
      "ARBITRUM_KEYSTORE",
      "ARBITRUM_PRIVATE_KEY",
      "MIGRATION"
    ]
  }
}

1. Import using private key

Request Endpoint: reference

HTTP

POST /api/wallets/import
Parameter
Param Type
Value
Description

Signing-Method

Header

id:value

id: This is the ID of the signing method value: This is the value of the signing method

Parameter
Param Type
Description
Data Type
Mandatory

importWalletType

Body

The type of import (eg. MATIC_PRIVATE_KEY)

String

privateKey

Body

The private key of the existing wallet

String

userId

Body

The ID of the user you want to link this wallet to

String

pincode (Deprecated)

Body

The pincode to encrypt the wallet

String

2. Import using keystore

Request Endpoint: reference

HTTP

POST /api/wallets/import
Parameter
Param Type
Value
Description

Signing-Method

Header

id:value

id: This is the ID of the signing method value: This is the value of the signing method

Parameter
Param Type
Description
Data Type
Mandatory

importWalletType

Body

The type of import (eg. MATIC_KEYSTORE)

String

keystore

Body

JSON file that represents the wallet (warning: this is a string field so make sure the JSON body is escaped properly)

String

password

Body

The password of the Keystore

String

userId

Body

The ID of the user you want to link this wallet to

String

pincode (Deprecated)

Body

The pincode to encrypt the wallet

String

3. Import using WIF

Request Endpoint: reference

HTTP

POST /api/wallets/import
Parameter
Param Type
Value
Description

Signing-Method

Header

id:value

id: This is the ID of the signing method value: This is the value of the signing method

Parameter
Param Type
Description
Data Type
Mandatory

importWalletType

Body

The type of import (eg. BITCOIN_WIF)

String

wif

Body

The wif (wallet import format)

String

userId

Body

The ID of the user you want to link this wallet to

String

pincode (Deprecated)

Body

The pincode to encrypt the wallet

String

4. Import using WIF with a passphrase

Request Endpoint: reference

HTTP

POST /api/wallets/import
Parameter
Param Type
Value
Description

Signing-Method

Header

id:value

id: This is the ID of the signing method value: This is the value of the signing method

Parameter
Param Type
Description
Data Type
Mandatory

importWalletType

Body

The type of import (eg. LITECOIN_WIF_PASSPHRASE)

String

wif

Body

The wif (wallet import format)

String

passphrase

Body

The passphrase of the wallet

String

userId

Body

The ID of the user you want to link this wallet to

String

pincode (Deprecated)

Body

The pincode to encrypt the wallet

String

5. Import from other secret types (blockchain)

Using this endpoint, it is possible to use the same wallet (address) for a different blockchain. Currently, it is only possible to import to/from these chains:

  • ETHEREUM <-> MATIC

  • BSC <-> ETHEREUM

Request Endpoint: reference

HTTP

POST /api/wallets/import
Parameter
Param Type
Value
Description

Signing-Method

Header

id:value

id: This is the ID of the signing method value: This is the value of the signing method

Parameter
Param Type
Description
Data Type
Mandatory

importWalletType

Body

The type of import (eg. MIGRATION)

String

walletId

Body

The ID of the wallet you want to import into another secret type

String

to

Body

Destination SecretType (blockchain), ex: MATIC

Object

userId

Body

The ID of the user you want to link this wallet to

String

pincode (Deprecated)

Body

The pincode to encrypt the wallet

String

Last updated