Import wallet addresses

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Overview

Use this method to import wallet addresses of your users for further transaction processing.

When submitting the wallet data, you can send:

  • Only walletAddress, if you are ready to share the wallet addresses with Sumsub.
  • Only walletAddressHash, if you do not want to share direct wallet addresses for security reasons. Generate a SHA-256 hash of a wallet address (new Sha256Hash(walletAddress).toBase64()).
  • Both walletAddressHash and walletAddress, so you can check if your hashing function is the same as in Sumsub. In case the functions differ, the response returns an error.
📘

Note

To use this endpoint, you need to be registered as a VASP in the Sumsub system. Mind that VASPs should periodically import wallet addresses as they onboard new clients.

Request example

curl -X POST \
     `https://api.sumsub.com/resources/kyt/walletAddress/import` \
     -H 'content-type: application/json' \
     -H 'X-App-Token: <your-app-token>' \
     -H 'X-App-Access-Sig: <your-signature>' \
     -H 'X-App-Access-Ts: <unix-timestamp>' \
     -d '[
            {
              "walletAddress": "1njrRcKQtfjjLuQ",
              "asset": "USDT",
              "chain": "ETH"
            },
            {
              "walletAddressHash": "04c4926a21184665ef890493cd3c67a919f868724fc44adb933b911234567890",
              "asset": "USDT",
              "chain": "ETH"
            }
         ]'

Response explained

The response is a JSON file that contains the number of imported wallet records. If some records failed to be imported, it will be specified in the response.

The following tables explain the fields of the response body.

Root fields

FieldTypeDescription
importedCountIntegerNumber of successfully imported wallet records.
failedCountIntegerNumber of wallet records that failed to be imported. If no errors occurred, the field contains the 0 value.
errorsArray of objectsErrors that occurred during the import, one entry per failed record. If no errors occurred, this field is excluded from the response.

errors[] element fields

FieldTypeDescription
errorStringDescription of why this specific record failed to import (for example, a missing required field or a hash mismatch).
walletAddressStringThe walletAddress value from the failed record. Empty string if the record did not include one.
walletAddressHashStringThe walletAddressHash value from the failed record. Empty string if the record did not include one.

Response examples

If the request is successfully sent and all records are imported without errors, you will get a response like the following:

{
  "importedCount": 2,
  "failedCount": 0
}

If some records fail to import while others succeed, failedCount and errors reflect the failures:

{
  "importedCount": 2,
  "failedCount": 1,
  "errors": [
    {
      "error": "Either walletAddress or walletAddressHash must not be empty",
      "walletAddressHash": "",
      "walletAddress": ""
    }
  ]
}

If the request itself fails (for example, malformed JSON or an unauthorized caller), you wil lreceive an HTTP response containing an error code along with a message explaining the error. For example:

{
  "code": 400,
  "description": "Human-readable description",
  "correlationId": "0d3457fdac54803edf23c90000000000"
}
Body Params
RAW_BODY
array of objects

List of wallets.

⚠️ The number of wallets to import is limited to 10000 per request.

RAW_BODY
Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here!