Nodes Reference
These endpoints let you inspect the nodes your access key has access to — check their health, query blockchain state, and retrieve block data. All requests use X-AccessKey for authentication.
List Nodes
Returns all nodes your access key is allowed to reach. Use this to discover available node IDs before calling other node endpoints.
Request
GET /api/v1/nodes
Headers
X-AccessKey— Your entity access key
Response
Returns an array of node objects.
Example response
[
{
"id": "04575EFB...",
"name": "az-tn-1-1",
"host": "https://az-tn-1-1.uledger.net",
"port": 443,
"status": "active",
"blockchains": ["08c28f29..."]
}
]
- cURL
- TypeScript
curl -X GET \
'https://your-tms-url/api/v1/nodes' \
-H 'X-AccessKey: your-entity-access-key' \
-H 'Accept: application/json'
const res = await fetch('https://your-tms-url/api/v1/nodes', {
headers: {
'X-AccessKey': 'your-entity-access-key',
'Accept': 'application/json',
},
});
const nodes = await res.json();
console.log('Available nodes:', nodes);
Get Node Health
Returns health and connectivity information for a specific node — version, peer count, peer ID, and the blockchains it tracks.
Request
POST /api/v1/nodes/info
Headers
X-AccessKey— Your entity access keyContent-Type: application/json
Body
nodeId(required) — The node ID to query
Response
Example response
{
"nodeId": "04575EFB...",
"nodeVersion": "9373386",
"network": {
"networkType": "p2p",
"peerCount": 9,
"peerId": "12D3KooW...",
"networkPeers": ["12D3KooW...", "..."]
},
"blockchains": ["08c28f29..."]
}
- cURL
- TypeScript
curl -X POST \
'https://your-tms-url/api/v1/nodes/info' \
-H 'X-AccessKey: your-entity-access-key' \
-H 'Content-Type: application/json' \
-d '{ "nodeId": "04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95" }'
const res = await fetch('https://your-tms-url/api/v1/nodes/info', {
method: 'POST',
headers: {
'X-AccessKey': 'your-entity-access-key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
nodeId: '04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95',
}),
});
const health = await res.json();
console.log('Peer count:', health.network.peerCount);
console.log('Blockchains:', health.blockchains);
List Node Blockchains
Returns the list of blockchain IDs that a specific node is currently tracking. Use this to confirm a node supports your target blockchain before submitting transactions.
Request
POST /api/v1/nodes/blockchains
Headers
X-AccessKey— Your entity access keyContent-Type: application/json
Body
nodeId(required) — The node ID to query
Response
Returns an object containing an array of blockchain IDs.
Example response
{
"blockchains": [
"08c28f29a62819120958984b761ddf8ccb45951612731409873994958fd150a2"
]
}
- cURL
- TypeScript
curl -X POST \
'https://your-tms-url/api/v1/nodes/blockchains' \
-H 'X-AccessKey: your-entity-access-key' \
-H 'Content-Type: application/json' \
-d '{ "nodeId": "04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95" }'
const res = await fetch('https://your-tms-url/api/v1/nodes/blockchains', {
method: 'POST',
headers: {
'X-AccessKey': 'your-entity-access-key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
nodeId: '04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95',
}),
});
const data = await res.json();
console.log('Blockchains:', data.blockchains);
Get Blockchain Info
Returns detailed information about a specific blockchain as seen by a given node — current height, council membership, consensus config, pending transactions, and active vote sessions.
Request
POST /api/v1/nodes/blockchain-info
Headers
X-AccessKey— Your entity access keyContent-Type: application/json
Body
nodeId(required) — The node to queryblockchain(required) — The blockchain ID
Response
Example response
{
"blockHeight": 2275,
"keyType": "secp256k1",
"isInCouncil": true,
"pendingTransactions": 0,
"councilMembers": ["02F94D90...", "..."],
"consensus": {
"consensusType": "council_leader_proposal",
"minMembers": 4,
"consensusTimeout": "30m0s"
}
}
- cURL
- TypeScript
curl -X POST \
'https://your-tms-url/api/v1/nodes/blockchain-info' \
-H 'X-AccessKey: your-entity-access-key' \
-H 'Content-Type: application/json' \
-d '{
"nodeId": "04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95",
"blockchain": "08c28f29a62819120958984b761ddf8ccb45951612731409873994958fd150a2"
}'
const res = await fetch('https://your-tms-url/api/v1/nodes/blockchain-info', {
method: 'POST',
headers: {
'X-AccessKey': 'your-entity-access-key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
nodeId: '04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95',
blockchain: '08c28f29a62819120958984b761ddf8ccb45951612731409873994958fd150a2',
}),
});
const info = await res.json();
console.log('Block height:', info.blockHeight);
console.log('In council:', info.isInCouncil);
Get Block Info
Retrieves a specific block from a blockchain on a given node by its height. Useful for inspecting transactions after a deploy or submit.
Request
POST /api/v1/nodes/blockchain-block
Headers
X-AccessKey— Your entity access keyContent-Type: application/json
Body
nodeId(required) — The node to queryblockchain(required) — The blockchain IDblockHeight(required) — The block height to retrieve
Response
Returns the full block object including all transactions at that height.
Example response
{
"height": 2301,
"blockHash": "a1b2c3...",
"merkleRoot": "d4e5f6...",
"transactions": [
{
"transactionId": "tx123...",
"payload": "hello blockchain",
"status": "confirmed"
}
],
"timestamp": "2026-05-25T19:00:00Z"
}
- cURL
- TypeScript
curl -X POST \
'https://your-tms-url/api/v1/nodes/blockchain-block' \
-H 'X-AccessKey: your-entity-access-key' \
-H 'Content-Type: application/json' \
-d '{
"nodeId": "04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95",
"blockchain": "08c28f29a62819120958984b761ddf8ccb45951612731409873994958fd150a2",
"blockHeight": 2301
}'
const res = await fetch('https://your-tms-url/api/v1/nodes/blockchain-block', {
method: 'POST',
headers: {
'X-AccessKey': 'your-entity-access-key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
nodeId: '04575EFB562CD87A9F666D44A527A23184E8306FE07E62136015FC8F7F7577A3A0AF8D37455F976939FC9D1867ED2DEB7353AFCC65AE871E05CA6BC7CB6E53AC95',
blockchain: '08c28f29a62819120958984b761ddf8ccb45951612731409873994958fd150a2',
blockHeight: 2301,
}),
});
const block = await res.json();
console.log('Block hash:', block.blockHash);
console.log('Transactions:', block.transactions);