Skip to main content

NDWallet (1.0)

Download OpenAPI specification:Download

NDWallet Server API

Endpoints

Health

Check health status

Get health status of the application including database and memory health

Responses

Response samples

Content type
application/json
{
  • "status": "ok",
  • "info": {
    },
  • "error": { },
  • "details": {
    }
}

Check health status

Get health status of the application including database and memory health

Responses

Response samples

Content type
application/json
{
  • "status": "ok",
  • "info": {
    },
  • "error": { },
  • "details": {
    }
}

Notifications

Get notifications

Retrieve notifications for a device with pagination

query Parameters
offset
number
Example: offset=0

Pagination offset

limit
number
Example: limit=50

Pagination limit

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 2
}

Get notifications

Retrieve notifications for a device with pagination

query Parameters
offset
number
Example: offset=0

Pagination offset

limit
number
Example: limit=50

Pagination limit

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 2
}

Get notification

Retrieve a specific notification by ID

path Parameters
id
required
string <uuid>
Example: 123e4567-e89b-12d3-a456-426614174000

Notification ID

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "id": "123e4567-e89b-12d3-a456-426614174000",
  • "type": "transaction",
  • "title": "Transaction Confirmed",
  • "message": "Your transfer of 1.5 ETH has been confirmed",
  • "read": false,
  • "createdAt": "2024-01-20T10:30:00Z"
}

Get notification

Retrieve a specific notification by ID

path Parameters
id
required
string <uuid>
Example: 123e4567-e89b-12d3-a456-426614174000

Notification ID

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "id": "123e4567-e89b-12d3-a456-426614174000",
  • "type": "transaction",
  • "title": "Transaction Confirmed",
  • "message": "Your transfer of 1.5 ETH has been confirmed",
  • "read": false,
  • "createdAt": "2024-01-20T10:30:00Z"
}

Mark notification as read

Mark a notification as read

path Parameters
id
required
string <uuid>
Example: 123e4567-e89b-12d3-a456-426614174000

Notification ID

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "id": "123e4567-e89b-12d3-a456-426614174000",
  • "read": true,
  • "updatedAt": "2024-01-20T10:35:00Z"
}

Mark notification as read

Mark a notification as read

path Parameters
id
required
string <uuid>
Example: 123e4567-e89b-12d3-a456-426614174000

Notification ID

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "id": "123e4567-e89b-12d3-a456-426614174000",
  • "read": true,
  • "updatedAt": "2024-01-20T10:35:00Z"
}

Mark all notifications as read

Mark all notifications for a device as read

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "count": 5,
  • "updatedAt": "2024-01-20T10:35:00Z"
}

Mark all notifications as read

Mark all notifications for a device as read

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Response samples

Content type
application/json
{
  • "count": 5,
  • "updatedAt": "2024-01-20T10:35:00Z"
}

Platforms

Get platforms

Get list of supported blockchain platforms

query Parameters
includeDisabled
boolean
Example: includeDisabled=false

Include disabled platforms in the response

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get platforms

Get list of supported blockchain platforms

query Parameters
includeDisabled
boolean
Example: includeDisabled=false

Include disabled platforms in the response

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get priority fees

Get priority fee information for a platform

path Parameters
id
required
string
Example: ethereum

Platform ID

Responses

Response samples

Content type
application/json
{
  • "slow": {
    },
  • "standard": {
    },
  • "fast": {
    }
}

Get priority fees

Get priority fee information for a platform

path Parameters
id
required
string
Example: ethereum

Platform ID

Responses

Response samples

Content type
application/json
{
  • "slow": {
    },
  • "standard": {
    },
  • "fast": {
    }
}

Estimate fees

Estimate transaction fees for a platform

path Parameters
id
required
string
Example: ethereum

Platform ID

Request Body schema: application/json
required

Transaction data

from
required
string

Sender address

to
required
string

Recipient address

value
required
string

Transaction value in wei

data
string

Transaction data

Responses

Request samples

Content type
application/json
{
  • "from": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
  • "to": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
  • "value": "1000000000000000000",
  • "data": "0x"
}

Response samples

Content type
application/json
Example
{
  • "gasLimit": "21000",
  • "maxFeePerGas": "25000000000",
  • "maxPriorityFeePerGas": "1500000000"
}

Estimate fees

Estimate transaction fees for a platform

path Parameters
id
required
string
Example: ethereum

Platform ID

Request Body schema: application/json
required

Transaction data

from
required
string

Sender address

to
required
string

Recipient address

value
required
string

Transaction value in wei

data
string

Transaction data

Responses

Request samples

Content type
application/json
{
  • "from": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
  • "to": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
  • "value": "1000000000000000000",
  • "data": "0x"
}

Response samples

Content type
application/json
Example
{
  • "gasLimit": "21000",
  • "maxFeePerGas": "25000000000",
  • "maxPriorityFeePerGas": "1500000000"
}

Tokens

Get tokens or contracts

Retrieve a list of tokens or token contracts with pagination

query Parameters
platformId
required
string
Example: platformId=ethereum

ID of the blockchain platform

offset
number
Example: offset=0

Pagination offset

limit
number
Example: limit=50

Pagination limit

includeDisabled
boolean
Example: includeDisabled=false

Include disabled tokens in the response

returnContracts
boolean
Example: returnContracts=false

Return token contract information instead of tokens

Responses

Response samples

Content type
application/json
Example
{
  • "items": [
    ],
  • "total": 2
}

Get tokens or contracts

Retrieve a list of tokens or token contracts with pagination

query Parameters
platformId
required
string
Example: platformId=ethereum

ID of the blockchain platform

offset
number
Example: offset=0

Pagination offset

limit
number
Example: limit=50

Pagination limit

includeDisabled
boolean
Example: includeDisabled=false

Include disabled tokens in the response

returnContracts
boolean
Example: returnContracts=false

Return token contract information instead of tokens

Responses

Response samples

Content type
application/json
Example
{
  • "items": [
    ],
  • "total": 2
}

Devices

Register new device

Register a new device with the application

Request Body schema: application/json
required

Device registration details

devicePlatform
required
object
Enum: "ios" "android"

Device platform (ios or android)

appVersion
required
string

App version

deviceToken
string

Device token that is used for push notifications

Responses

Request samples

Content type
application/json
Example
{
  • "devicePlatform": "ios",
  • "appVersion": "1.2.0",
  • "deviceToken": "c4d6e8f0-a2b4-4c6d-8e0f-2a4b6c8d0e2f"
}

Response samples

Content type
application/json
{
  • "deviceId": "b2c4d6e8-f0a2-4b6c-8e0f-2a4b6c8d0e2f",
  • "devicePlatform": "ios",
  • "createdAt": "2025-06-19T19:38:02.000Z"
}

Register new device

Register a new device with the application

Request Body schema: application/json
required

Device registration details

devicePlatform
required
object
Enum: "ios" "android"

Device platform (ios or android)

appVersion
required
string

App version

deviceToken
string

Device token that is used for push notifications

Responses

Request samples

Content type
application/json
Example
{
  • "devicePlatform": "ios",
  • "appVersion": "1.2.0",
  • "deviceToken": "c4d6e8f0-a2b4-4c6d-8e0f-2a4b6c8d0e2f"
}

Response samples

Content type
application/json
{
  • "deviceId": "b2c4d6e8-f0a2-4b6c-8e0f-2a4b6c8d0e2f",
  • "devicePlatform": "ios",
  • "createdAt": "2025-06-19T19:38:02.000Z"
}

Use device

Update device usage information and get version requirements

header Parameters
device-id
required
string <uuid>
Example: b2c4d6e8-f0a2-4b6c-8e0f-2a4b6c8d0e2f

Unique identifier of the device

Request Body schema: application/json
required

Device usage details

appVersion
required
string

App version

deviceToken
string

Device token

Responses

Request samples

Content type
application/json
Example
{
  • "appVersion": "1.2.0",
  • "deviceToken": "c4d6e8f0-a2b4-4c6d-8e0f-2a4b6c8d0e2f"
}

Response samples

Content type
application/json
Example
{
  • "devicePlatform": "ios",
  • "minRequiredVersion": "1.0.0"
}

Use device

Update device usage information and get version requirements

header Parameters
device-id
required
string <uuid>
Example: b2c4d6e8-f0a2-4b6c-8e0f-2a4b6c8d0e2f

Unique identifier of the device

Request Body schema: application/json
required

Device usage details

appVersion
required
string

App version

deviceToken
string

Device token

Responses

Request samples

Content type
application/json
Example
{
  • "appVersion": "1.2.0",
  • "deviceToken": "c4d6e8f0-a2b4-4c6d-8e0f-2a4b6c8d0e2f"
}

Response samples

Content type
application/json
Example
{
  • "devicePlatform": "ios",
  • "minRequiredVersion": "1.0.0"
}

Wallet addresses

Save wallet addresses

Save a list of wallet addresses associated with a device

header Parameters
device-id
required
string

Unique identifier of the device

Request Body schema: application/json
required

List of wallet addresses to save

required
Array of objects (WalletAddressDto)

List of wallet addresses

Array
address
required
string

Wallet address

platformId
required
string

Platform Id (see GET /v1/platforms)

Responses

Request samples

Content type
application/json
{
  • "addresses": [
    ]
}

Save wallet addresses

Save a list of wallet addresses associated with a device

header Parameters
device-id
required
string

Unique identifier of the device

Request Body schema: application/json
required

List of wallet addresses to save

required
Array of objects (WalletAddressDto)

List of wallet addresses

Array
address
required
string

Wallet address

platformId
required
string

Platform Id (see GET /v1/platforms)

Responses

Request samples

Content type
application/json
{
  • "addresses": [
    ]
}

Get wallet balances

Retrieve balances for a specific wallet address

path Parameters
address
required
string

Wallet address

query Parameters
platformId
required
string

Platform identifier

contracts
string

Comma-separated list of token contract IDs

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Get wallet balances

Retrieve balances for a specific wallet address

path Parameters
address
required
string

Wallet address

query Parameters
platformId
required
string

Platform identifier

contracts
string

Comma-separated list of token contract IDs

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Get wallet nonce

Retrieve the current nonce for a wallet address

path Parameters
address
required
string

Wallet address

query Parameters
platformId
required
string

Platform identifier

header Parameters
device-id
required
string

Unique identifier of the device

Responses

Get wallet nonce

Retrieve the current nonce for a wallet address

path Parameters
address
required
string

Wallet address

query Parameters
platformId
required
string

Platform identifier

header Parameters
device-id
required
string

Unique identifier of the device

Responses

WalletController_getAccountInfo

path Parameters
address
required
string
query Parameters
platformId
required
string

Responses

WalletController_getNativeStaking

path Parameters
address
required
string
query Parameters
platformId
required
string
header Parameters
device-id
required
string

Responses

WalletController_sendTransaction

path Parameters
address
required
string
header Parameters
device-id
required
string
Request Body schema: application/json
required
platformId
required
string

Platform ID

txData
required
string

Hex transaction data

Responses

Request samples

Content type
application/json
{
  • "platformId": "string",
  • "txData": "string"
}

WalletController_getLatestBlockhash

query Parameters
platformId
required
string

Responses

Response samples

Content type
application/json
"string"

Swaps

Get swap quote

Get a quote for swapping tokens

query Parameters
fromTokenId
required
string
Example: fromTokenId=123e4567-e89b-12d3-a456-426614174000

ID of the source token

toTokenId
required
string
Example: toTokenId=123e4567-e89b-12d3-a456-426614174001

ID of the destination token

amount
required
string
Example: amount=1000000000000000000

Amount of source token to swap (in wei)

slippage
number
Example: slippage=0.5

Maximum allowed slippage percentage

Request Body schema: application/json
required
inputToken
required
string

Input token

outputToken
required
string

Output token

amount
required
number

Amount

slippage
required
number

Slippage

Responses

Request samples

Content type
application/json
{
  • "inputToken": "string",
  • "outputToken": "string",
  • "amount": 0,
  • "slippage": 0
}

Response samples

Content type
application/json
{
  • "fromToken": {
    },
  • "toToken": {
    },
  • "fromAmount": "1000000000000000000",
  • "toAmount": "1850000000",
  • "exchangeRate": "1850.00",
  • "priceImpact": "0.15",
  • "fee": "0.003",
  • "route": [
    ]
}

Get swap transaction

Get transaction data for a token swap

header Parameters
device-id
required
string
Request Body schema: application/json
required
userPublicKey
required
string

User public key

platformId
required
string

Platform ID

required
object

Swap quote (received from /swap/quote)

Responses

Request samples

Content type
application/json
{
  • "userPublicKey": "string",
  • "platformId": "string",
  • "quote": {
    }
}

Response samples

Content type
application/json
{
  • "data": "string",
  • "value": "string",
  • "to": "string",
  • "gasLimit": "string"
}

Swap

Get swap quote

Get a quote for swapping tokens

query Parameters
fromTokenId
required
string
Example: fromTokenId=123e4567-e89b-12d3-a456-426614174000

ID of the source token

toTokenId
required
string
Example: toTokenId=123e4567-e89b-12d3-a456-426614174001

ID of the destination token

amount
required
string
Example: amount=1000000000000000000

Amount of source token to swap (in wei)

slippage
number
Example: slippage=0.5

Maximum allowed slippage percentage

Request Body schema: application/json
required
inputToken
required
string

Input token

outputToken
required
string

Output token

amount
required
number

Amount

slippage
required
number

Slippage

Responses

Request samples

Content type
application/json
{
  • "inputToken": "string",
  • "outputToken": "string",
  • "amount": 0,
  • "slippage": 0
}

Response samples

Content type
application/json
{
  • "fromToken": {
    },
  • "toToken": {
    },
  • "fromAmount": "1000000000000000000",
  • "toAmount": "1850000000",
  • "exchangeRate": "1850.00",
  • "priceImpact": "0.15",
  • "fee": "0.003",
  • "route": [
    ]
}

Get swap transaction

Get transaction data for a token swap

header Parameters
device-id
required
string
Request Body schema: application/json
required
userPublicKey
required
string

User public key

platformId
required
string

Platform ID

required
object

Swap quote (received from /swap/quote)

Responses

Request samples

Content type
application/json
{
  • "userPublicKey": "string",
  • "platformId": "string",
  • "quote": {
    }
}

Response samples

Content type
application/json
{
  • "data": "string",
  • "value": "string",
  • "to": "string",
  • "gasLimit": "string"
}

Transactions

Operation webhook

Handle incoming operation webhook for transaction processing

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "txId": 12345
}

Operation webhook

Handle incoming operation webhook for transaction processing

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "txId": 12345
}

Get transaction details

Retrieve detailed information about a specific transaction

path Parameters
txId
required
number

Transaction ID

query Parameters
address
required
string

Wallet address

header Parameters
device-id
required
string

Device ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "hash": "string",
  • "status": "pending",
  • "tokenContractId": 0,
  • "fromAddress": "string",
  • "toAddress": "string",
  • "amount": "string",
  • "fee": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Get transaction details

Retrieve detailed information about a specific transaction

path Parameters
txId
required
number

Transaction ID

query Parameters
address
required
string

Wallet address

header Parameters
device-id
required
string

Device ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "hash": "string",
  • "status": "pending",
  • "tokenContractId": 0,
  • "fromAddress": "string",
  • "toAddress": "string",
  • "amount": "string",
  • "fee": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "updatedAt": "2019-08-24T14:15:22Z"
}

Get transaction history

Retrieve transaction history for a device or address

query Parameters
address
string

Wallet address

tokenContractId
number

Token contract ID

platformId
string

Platform ID

offset
number
Example: offset=0

Pagination offset

limit
number
Example: limit=50

Pagination limit

header Parameters
device-id
required
string

Device ID

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 0
}

Get transaction history

Retrieve transaction history for a device or address

query Parameters
address
string

Wallet address

tokenContractId
number

Token contract ID

platformId
string

Platform ID

offset
number
Example: offset=0

Pagination offset

limit
number
Example: limit=50

Pagination limit

header Parameters
device-id
required
string

Device ID

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "total": 0
}

Settings

Get settings

Retrieve general application settings

Responses

Response samples

Content type
application/json
{
  • "minVersions": [
    ],
  • "supportedPlatforms": [
    ]
}

Get settings

Retrieve general application settings

Responses

Response samples

Content type
application/json
{
  • "minVersions": [
    ],
  • "supportedPlatforms": [
    ]
}