Skip to content

API Endpoints Reference

Comprehensive reference for the SmartHoldem Core Public API. Every endpoint below is served by any public node — replace node0.smartholdem.io with any node from the public nodes list or your own.

Method badges: GET POST

Getting Started

This is the reference guide for the Public API. This API exposes all resources and data provided by an SmartHoldem Core node and is the preferred way of interacting with the SmartHoldem network.

You can use public nodes to interact with the blockchain without installing and synchronizing your own node from https://github.com/smartholdem/sth-core.

For production mode, it is recommended to install your own node.

Public SmartHoldem nodes (mainnet):

Blockchain

Retrieve Blockchain State

Used to get the latest block and supply of the blockchain.

Endpoint

GET

http
GET https://node0.smartholdem.io/api/blockchain
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/blockchain' | jq

Blocks

Blocks are added every eight seconds to the blockchain by a Delegate Node. Due to network/technical errors, a Delegate might miss a block. The time between two blocks is then 16 seconds, as the round continues to the next Delegate.

All state changes to the blockchain are in the form of blocks they contain a set of transactions and metadata. A block is rejected if one or more of the transactions is invalid or if the metadata is invalid. Thus a block returned from the Public API is always valid.

List All Blocks

The Public API may be used to query for blocks. This dataset contains millions of blocks, this for analytical purposes, we recommend

GET

http
GET https://node0.smartholdem.io/api/blocks?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/blocks?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column and order by which the resources will be sorted.no
idThe identifier of the block to be retrieved.no
heightThe height of the block to be retrieved.no
height.fromThe height from which blocks will be retrieved.no
height.toThe height to which blocks will be retrieved.no
timestampThe timestamp of the block to be retrieved.no
timestamp.fromThe timestamp from which blocks will be retrieved.no
timestamp.toThe timestamp to which blocks will be retrieved.no

First block

Retrieve first block.

Endpoint

GET

http
GET https://node0.smartholdem.io/api/blocks/{id|height}
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/blocks/{id|height}' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the block to be retrieved.no
heightThe height of the block to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
transformThe structure of response to be retrieved.no

All Transactions in a Block

Instead of deserializing the block’s payload, you can also obtain the transactions of each block as proper transaction objects directly.

Endpoint

GET

http
GET https://node0.smartholdem.io/api/blocks/{blockId|height}/transactions?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/blocks/{blockId|height}/transactions?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
blockIdThe identifier of the block to be retrieved.no
heightThe height of the block to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column and order by which the resources will be sorted.no
idThe identifier of the transaction to be retrieved.no
senderPublicKeyThe sender public key of the transactions to be retrieved.no
recipientIdThe recipient address of the transactions to be retrieved.no
vendorFieldThe vendor field (memo) of the transactions to be retrieved.no

Transactions

Transactions are signed, serialized payloads, batched together to form a block.

All Transactions

The paginated API is used to query for multiple transactions. You can apply filters through the query parameter to search for specific transactions.

GET

http
GET https://node0.smartholdem.io/api/transactions?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/transactions?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no
addressThe sender or recipient address of transaction to be retrieved.no
senderIdThe sender address of transaction to be retrieved.no
senderPublicKeyThe sender public key of transaction to be retrieved.no
recipientIdThe recipient address of transaction to be retrieved.no
idThe id of transaction to be retrieved.no
versionThe version of transaction to be retrieved.no
blockIdThe block id of transaction to be retrieved.no
sequenceThe sequence of transaction to be retrieved.no
sequence.fromThe minimum sequence of transaction to be retrieved.no
sequence.toThe maximum sequence of transaction to be retrieved.no
timestampThe timestamp of transaction to be retrieved.no
timestamp.fromThe minimum timestamp of transaction to be retrieved.no
timestamp.toThe maximum timestamp of transaction to be retrieved.no
nonceThe nonce of transaction to be retrieved.no
nonce.fromThe minimum nonce of transaction to be retrieved.no
nonce.toThe maximum nonce of transaction to be retrieved.no
typeThe type of transaction to be retrieved.no
typeGroupThe typeGroup of transaction to be retrieved.no
vendorFieldThe vendorField (memo) of transaction to be retrieved.no
amountThe amount of transaction to be retrieved.no
amount.fromThe minimum amount of transaction to be retrieved.no
amount.toThe maximum amount of transaction to be retrieved.no
feeThe fee of transaction to be retrieved.no
fee.fromThe minimum fee of transaction to be retrieved.no
fee.toThe maximum fee of transaction to be retrieved.no
assetThe asset of transaction to be retrieved.no

Get Transaction

Obtaining a transaction by ID does not require advanced logic; as the API does not return a serialized transaction, but a nicer DTO

GET

http
GET https:///node0smartholdem.io/api/transactions/{id}
cURL example
bash
curl -s 'https:///node0smartholdem.io/api/transactions/{id}' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the transaction to be retrieved.no

All Unconfirmed Transaction

Unconfirmed transactions have not been incorporated in the blockchain, but reside in the mempool. Although usually the mempool is cleared within minutes, during high network load a transaction with a low fee will live here for a considerable time. If you have set the transaction with a fee of near zero, it might not be picked up by a Delegate and will time out.

GET

http
GET https://node0.smartholdem.io.io/api/transactions/unconfirmed?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io.io/api/transactions/unconfirmed?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no

Get an Unconfirmed Transaction

As with confirmed transactions, you may query for unconfirmed transactions directly.

GET

http
GET https://node0.smartholdem.io/api/transactions/unconfirmed/{id}
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/transactions/unconfirmed/{id}' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the transaction to be retrieved.no

Broadcast Transactions

Creating the correct payload for a transaction is non-trivial, as it requires cryptographic functions and a specific serialization protocol. Our crypto SDKs provide the functionality needed in most major programming languages. You can read more about it in the send transaction section.

POST

http
POST https://node0.smartholdem.io/api/transactions
cURL example
bash
curl -s -X POST -H 'Content-Type: application/json' \
  -d '{"transactions":[]}' \
  'https://node0.smartholdem.io/api/transactions' | jq

Body Parameters

NameDescriptionRequiredExample
transactionsThe list of transactions to broadcast.yes

Transaction Fees (Non-Dynamic)

The static transaction fees are significantly higher than the dynamic transaction fees. Use the node api to find dynamic fees, and prefer using these.

GET

http
GET https://node0.smartholdem.io/api/transactions/fees
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/transactions/fees' | jq

Transaction Types

The transaction types are network specific. SmartHoldem currently supports eight different types, but BridgeChains may define more or less if needed for their business purpose.

GET

http
GET https://node0.smartholdem.io/api/transactions/types
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/transactions/types' | jq

Transaction Schemas

Get transaction schemas.

GET

http
GET https://node0.smartholdem.io/api/transactions/schemas
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/transactions/schemas' | jq

Delegates

Delegates are regular wallets (addresses) which have registered themselves eligible to become a Delegate by a registration transaction. If a Delegate is among the top 21 highest voted (by staked STH), it may run a forging Node, which produces a single block per round, awarding the Delegate any transaction fees included in that block.

Genesis Delegates are the initial, virtualized Delegates. They were not registered nor voted in, and in the SmartHoldem mainnet has been replaced by actual Delegates a long time ago.

All Delegates

You can obtain all Delegates through this paginated API. Note that all registered Delegates are returned in this response, not just the top 21 forging Delegates. If a Delegate Node is offline, it is still returned through this API; as the delegate resource is not concerned with the actual nodes, only with the on-chain registrations and wallets.

GET

http
GET https://node0.smartholdem.io/api/delegates?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/delegates?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column and order by which the resources will be sorted.no
usernameThe username of the delegate to be retrieved.no
addressThe address of the delegate to be retrieved.no
publicKeyThe public key of the delegate to be retrieved.no
votesThe votes of the delegate to be retrieved.no
votes.fromThe minimum votes of the delegates to be retrieved.no
votes.toThe maximum votes of the delegates to be retrieved.no
isResignedThe resignation status of the delegate to be retrieved.no
blocks.producedThe number of produced blocks of the delegate to be retrieved.no
blocks.produced.fromThe minimum number of produced blocks of the delegate to be retrieved.no
blocks.produced.toThe minimum number of produced blocks of the delegate to be retrieved.no
blocks.last.idThe last produced block id of the delegate to be retrieved.no
blocks.last.heightThe last produced block height of the delegate to be retrieved.no
blocks.last.timestamp.epochThe last produced block epoch timestamp of the delegate to be retrieved.no
blocks.last.timestamp.epoch.fromThe minimum last produced block epoch timestamp of the delegate to be retrieved.no
blocks.last.timestamp.epoch.toThe maximum last produced block epoch timestamp of the delegate to be retrieved.no
blocks.last.timestamp.unixThe last produced block unix timestamp of the delegate to be retrieved.no
blocks.last.timestamp.unix.fromThe minimum last produced unix epoch timestamp of the delegate to be retrieved.no
blocks.last.timestamp.unix.toThe maximum last produced unix epoch timestamp of the delegate to be retrieved.no
blocks.last.timestamp.humanThe last produced block timestamp of the delegate to be retrieved.no
production.approvalThe production approval rate of the delegate to be retrieved.no
production.approval.fromThe minimum production approval rate of the delegate to be retrieved.no
production.approval.toThe maximum production approval rate of the delegate to be retrieved.no
forged.feesThe forged fees of the delegate to be retrieved.no
forged.fees.fromThe minimum forged fees of the delegate to be retrieved.no
forged.fees.toThe maximum forged fees of the delegate to be retrieved.no
forged.rewardsThe forged rewards of the delegate to be retrieved.no
forged.rewards.fromThe minimum forged rewards of the delegate to be retrieved.no
forged.rewards.toThe maximum forged rewards of the delegate to be retrieved.no
forged.totalThe forged fees and rewards of the delegate to be retrieved.no
forged.total.fromThe minimum forged fees and rewards of the delegate to be retrieved.no
forged.total.toThe maximum forged fees and rewards of the delegate to be retrieved.no

Retrieve a Delegate

You can query for a specific delegate by username, address, and public key, thus the following queries will result in an identical response. Note that public keys are always known for delegates, as they have previously transmitted a registration transaction. This is not the case for regular wallets.

GET

http
GET https://node0.smartholdem.io/api/delegates/1
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/delegates/1' | jq

Path Parameters

NameDescriptionRequiredExample
addressThe address of the delegate to be retrieved.no1
publicKeyThe public key of the delegate to be retrieved.no
usernameThe username of the delegate to be retrieved.notechnolog

All Voters of a Delegate

Obtaining the voters of a Delegate is trivial as well. This endpoint returns active voters. To acquire historical voters, it is better to query the database directly.

GET

http
GET https://node0.smartholdem.io/api/delegates/1/voters?page=1
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/delegates/1/voters?page=1' | jq

Path Parameters

NameDescriptionRequiredExample
delegateAddressThe address of the delegate to be retrieved.no1
delegatePublicKeyThe public key of the delegate to be retrieved.no
delegateUsernameThe username of the delegate to be retrieved.notechnolog
addressThe address of the voter to be retrieved.no
publicKeyThe public key of the voter to be retrieved.no
balanceThe balance of the voter to be retrieved.no
balance.fromThe minimum balance of the voter to be retrieved.no
balance.toThe maximum balance of the voter to be retrieved.no
nonceThe nonce of the voter to be retrieved.no
nonce.fromThe minimum nonce of the voter to be retrieved.no
nonce.toThe maximum nonce of the voter to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column and order by which the resources will be sorted.no

All Blocks of a Delegate

The delegate resource allows you to obtain blocks from a specific Delegate. This is the equivalent of searching for blocks using the generatorPublicKey.

GET

http
GET https://node0.smartholdem.io/api/delegates/1/blocks?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/delegates/1/blocks?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
delegateAddressThe address of the delegate to be retrieved.no1
delegatePublicKeyThe public key of the delegate to be retrieved.no
delegateUsernameThe username of the delegate to be retrieved.notechnolog

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column and order by which the resources will be sorted.no

Entities

All Entities

The paginated API is used to query for multiple entities. You can apply filters through the query parameter to search for specific entities.

GET

http
GET https://node0.smartholdem.io/api/entities?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/entities?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column and order by which the resources will be sorted.no
idThe entity id to be retrieved.no
addressThe address for which entities are to be retrieved.no
publicKeyThe public key for which entities are to be retrieved.no
isResignedThe flag to indicate that resigned entities should be retrieved.no
typeThe type of entities to be retrieved.no
subTypeThe sub-type of entities to be retrieved.no
data.nameThe name of the entities to be retrieved.no
data.ipfsDataThe IPFS Hash of the entities to be retrieved.no

Retrieve an Entity

Specific entities can be retrieved by the ID of their registration transaction.

GET

http
GET https://node0.smartholdem.io/api/entities/{id}
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/entities/{id}' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the registration transaction of the entity to be retrieved.no

Node

The node resource is useful for service discovery, health checks, and obtaining network configurations, such as fees, API, and token information.

Configuration

Used to access a Node’s configuration and the network it is attached to (identified by the nethash).

GET

http
GET https://node0.smartholdem.io/api/node/configuration
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/node/configuration' | jq

Cryptography Configuration

Used to access a Node’s configuration for the @smartholdem/crypto package that handles all cryptography operations.

GET

http
GET https://node0.smartholdem.io/api/node/configuration/crypto
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/node/configuration/crypto' | jq

Fee Statistics

Used to access a Node’s fee statistics. By default, this endpoint returns calculations based on the 20 most-recent transactions for each type. Also note while using the days query that statistics may not be available for all transaction-types over a given period of time.

GET

http
GET https://node0.smartholdem.io/api/node/fees
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/node/fees' | jq

Query Parameters

NameDescriptionRequiredExample
daysThe number of days [1-30] to search.no

Status

The status allows for health checking, showing if the node is in sync with the network.

GET

http
GET https://node0.smartholdem.io/api/node/status
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/node/status' | jq

Syncing Status

The syncing resource is very much alike node/status, providing information on the syncing progress. If a node is not syncing but significantly behind in blocks, it might be time to perform a check.

GET

http
GET https://node0.smartholdem.io/api/node/syncing
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/node/syncing' | jq

Peers

The peers resource is much like the node resource, but only exposes the IPs and ports of connected peers. Recursively traversing this API and its responses allow you to inspect the entire network.

List All Peers

Returns all peers known by the Node. These are not necessarily all peers; only public Nodes appear here.

GET

http
GET https://node0.smartholdem.io/api/peers?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/peers?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column and order by which the resources will be sorted.no
versionThe node version by which the resources will be filtered.no

Peer

Specific peers can be found by IP address. Note that a peer may have their Public API disabled, and thus they are only reachable by the internal p2p API.

GET

http
GET https://node0.smartholdem.io/api/peers/{ip}
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/peers/{ip}' | jq

Path Parameters

NameDescriptionRequiredExample
ipThe IP address of the peer to be retrieved.no1

Votes

A vote is a specific type of transaction (type 3). A wallet votes on a different wallet, which has registered itself eligible to become a Delegate. Wallets may vote for themselves.

All Votes

All voting transactions may be obtained through this API. This is the equivalent of transactions/search with the body parameter type: 3.

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no

Vote

Votes may be retrieved using their transaction ID. Note the asset field, which contains the votes object. The first character of each item in the array indicates if it was a vote: +, or unvote: -, followed by the public key of the Delegate.

GET

http
GET https://node0.smartholdem.io/api/votes/5631f0807ac68ba3607d52a587a1c3ecc9ad31386effe564e6f4e31b1c0bfa6d
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/votes/5631f0807ac68ba3607d52a587a1c3ecc9ad31386effe564e6f4e31b1c0bfa6d' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the vote to be retrieved.no5631f0807ac68ba3607d52a587a1c3ecc9ad31386effe564e6f4e31b1c0bfa6d

HTLC Transactions

HTLC - Hash Time-Locked Contracts transactions enable two parties to exchange tokens safely and securely at the protocol level, removing the need to trust an individual who could potentially be a bad actor and withdraw from a prior agreement once they have received their tokens. Locked funds can be transfer to another party using claim transactions, or refunded to the sender after the HTLC transaction’s expiration.

Open HTLC Lock transactions

The paginated API is used to query for multiple HTLC Locs transactions. You can apply filters through the query parameter to search for specific transactions.

GET

http
GET https://node0.smartholdem.io/api/locks?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/locks?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column by which the resources will be sorted.no
lockIdThe lock id of transaction to be retrieved.no
senderPublicKeyThe sender public key of transaction to be retrieved.no
recipientIdThe recipient address of transaction to be retrieved.no
isExpiredThe expired status of transaction to be retrieved.no
expirationTypeThe expiration type of transaction to be retrieved.no
expirationValueThe expiration value of transaction to be retrieved.no
expirationValue.fromThe minimum expiration value of transaction to be retrieved.no
expirationValue.toThe maximum expiration value of transaction to be retrieved.no
secretHashThe secret hash of transaction to be retrieved.no
amountThe amount of transaction to be retrieved.no
amount.fromThe minimum amount of transaction to be retrieved.no
amount.toThe maximum amount of transaction to be retrieved.no
timestamp.epochThe epoch timestamp of the transaction to be retrieved.no
timestamp.epoch.fromThe minimum epoch timestamp of the transaction to be retrieved.no
timestamp.epoch.toThe maximum epoch timestamp of the transaction to be retrieved.no
timestamp.unixThe unix timestamp of the transaction to be retrieved.no
timestamp.unix.fromThe minimum unix timestamp of the transaction to be retrieved.no
timestamp.unix.toThe maximum unix timestamp of the transaction to be retrieved.no
timestamp.humanThe human timestamp of the transaction to be retrieved.no
vendorFieldThe vendorField of transaction to be retrieved.no

HTLC transaction

Specific HTLC transactions can be obtained by its lockId.

GET

http
GET https://node0.smartholdem.io/api/locks/{id}
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/locks/{id}' | jq

Path Parameters

NameDescriptionRequiredExample
idThe lockId of the HTLC to be retrieved.no

HTLC Lock transactions

The paginated API is used to query for multiple HTLC Lock transactions. You can apply ‘filters’ through the query parameter to search for specific transactions.

POST

http
POST https://node0.smartholdem.io/api/locks/unlocked?page=1&limit=100
cURL example
bash
curl -s -X POST -H 'Content-Type: application/json' \
  -d '{"transactions":[]}' \
  'https://node0.smartholdem.io/api/locks/unlocked?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column by which the resources will be sorted.no

Body Parameters

NameDescriptionRequiredExample
idThe ids of locks that will be returned.no

Wallets

A Wallet resource is reachable using an associated Address or PublicKey.

All Wallets

A paginated API is provided to obtain all wallets, including empty ones.

GET

http
GET https://node0.smartholdem.io/api/wallets?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets?page=1&limit=100' | jq

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column and order by which the resources will be sorted.no
addressThe address of the wallet to be retrieved.no
publicKeyThe public key of the wallet to be retrieved.no
balanceThe balance of the wallet to be retrieved.no
balance.fromThe minimum balance of the wallet to be retrieved.no
balance.toThe maximum balance of the wallet to be retrieved.no
nonceThe nonce of the wallet to be retrieved.no
nonce.fromThe minimum nonce of the wallet to be retrieved.no
nonce.toThe maximum nonce of the wallet to be retrieved.no
attributesThe attributes of the wallet to be retrieved.no

Wallet

Specific wallets can be obtained either by their publicKey or address.

GET

http
GET https://node0.smartholdem.io/api/wallets/{id}
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets/{id}' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the wallet to be retrieved.no

All Transactions of a Wallet

All transactions belonging to a wallet can be obtained using this API. Equivalent to /transactions with parameter address.

GET

http
GET https://node0.smartholdem.io/api/wallets/{walletId}/transactions?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets/{walletId}/transactions?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
walletIdThe identifier of the wallet to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no

All Sent Transactions of a Wallet

Outgoing transactions can be obtained as well, Equivalent to /transactions with parameter senderId set.

GET

http
GET https://node0.smartholdem.io/api/wallets/{id}/transactions/sent?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets/{id}/transactions/sent?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the wallet to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no

All Received Transactions of a Wallet

Incoming transactions can be obtained as well, Equivalent to /transactions with parameter recipientId set.

GET

http
GET https://node0.smartholdem.io/api/wallets/{id}/transactions/received?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets/{id}/transactions/received?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the wallet to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no

All Votes of a Wallet

Returns all votes made by the wallet. Often users create a new wallet instead of recasting their vote, as the former was historically cheaper. Equivalent to /transactions with parameter senderId and vote type set.

GET

http
GET https://node0.smartholdem.io/api/wallets/{id}/votes?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets/{id}/votes?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
idThe identifier of the wallet to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
transformThe structure of response to be retrieved.no
orderByThe column by which the resources will be sorted.no

All Lock Transactions of a Wallet

All lock transactions belonging to a wallet can be obtained using this API. Equivalent to /locks with parameter senderPublicKey.

GET

http
GET https://node0.smartholdem.io/api/wallets/{walletId}/locks?page=1&limit=100
cURL example
bash
curl -s 'https://node0.smartholdem.io/api/wallets/{walletId}/locks?page=1&limit=100' | jq

Path Parameters

NameDescriptionRequiredExample
walletIdThe identifier of the wallet to be retrieved.no

Query Parameters

NameDescriptionRequiredExample
pageThe number of the page that will be returned.no1
limitThe number of resources per page.no100
offsetThe number of resources to be skipped.no
orderByThe column and order by which the resources will be sorted.no

Code is the Law. Zero Infrastructure. Absolute Autonomy.