Download OpenAPI specification:Download
This API is designed to enable clients to efficiently query information on the RadixDLT ledger, and allow clients to simply build and submit transactions to the network.
The API is designed for use by the Radix Foundation's Desktop Wallet and Explorer, and replaces the original Olympia "Archive Node API".
The Gateway API is separated into distinct groupings:
/gateway
- Information about the Gateway API status/account/*
- To query account-related information/token/*
- To query token-related information/validator/*
and /validators
- To query validator-related information/transaction/*
- To build, finalize and submit transactions, and to read the status and content of submitted and on-ledger transactions.The Gateway API is implemented by the Network Gateway, which is configured to read from full node/s to extract and index data from the network.
The API is designed in a JSON-RPC style, using HTTP as a transport layer, which means that:
code
details
sub-object, with a type
discriminator, allowing for structured error interpretation in clients.Core API - The Core API is a low level API exposed by full nodes, and designed for use on internal networks. It is primarily designed for network integrations such as exchanges, ledger analytics providers, or hosted ledger data dashboards. The Core API provides endpoints for reading the mempool, constructing transactions and also exposes a stream of committed transactions.
System API - The System API is a private API exposed by full nodes to read system status.
The Gateway API offers a much wider range of query options and is more performant than the Core API. It is built on top of the Core API, ingesting data via the Core API transaction stream into a relational database.
The Gateway API transaction/construction endpoints operate with the concept of "actions" - these are higher-levels of intent compared with the Core API, which makes it easier for clients to use. The Core API should be used if you require more power/flexiblity for managing UTXOs, or submitting transactions which can't be mapped to a Gateway API action.
Returns the Gateway API version, network and current ledger state.
The Network
Gateway Error
{ }
{- "network_identifier": {
- "network": "mainnet"
}, - "ledger_state": null,
- "target_ledger_state": null
}
Returns the account address associated with the given public key.
required | object (NetworkIdentifier) |
required | object (PublicKey) |
Token info
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "public_key": {
- "hex": "0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"
}
}
{- "account_identifier": {
- "address": "string"
}
}
Returns an account's available and staked token balances, given an account address. If an account address is valid, but doesn't have any ledger transactions against it, this endpoint still returns a successful response.
required | object (NetworkIdentifier) |
required | object (AccountIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Balances of Account
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "account_identifier": {
- "address": "rdx1qspacch6qjqy7awspx304sev3n4em302en25jd87yrh4hp47grr692cm0kv88"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "account_balances": {
- "staked_and_unstaking_balance": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "liquid_balances": [
- {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}
]
}
}
Returns the xrd which the account has in pending and active delegated stake positions with validators, given an account address. If an account address is valid, but doesn't have any ledger transactions against it, this endpoint still returns a successful response.
required | object (NetworkIdentifier) |
required | object (AccountIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
List of Stake Positions
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "account_identifier": {
- "address": "rdx1qspacch6qjqy7awspx304sev3n4em302en25jd87yrh4hp47grr692cm0kv88"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "pending_stakes": [
- {
- "validator_identifier": {
- "address": "string"
}, - "delegated_stake": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}
}
], - "stakes": [
- {
- "validator_identifier": {
- "address": "string"
}, - "delegated_stake": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}
}
]
}
Returns the xrd which the account has in pending and temporarily-locked delegated unstake positions with validators, given an account address. If an account address is valid, but doesn't have any ledger transactions against it, this endpoint still returns a successful response.
required | object (NetworkIdentifier) |
required | object (AccountIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
List of Unstake Positions
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "account_identifier": {
- "address": "rdx1qspacch6qjqy7awspx304sev3n4em302en25jd87yrh4hp47grr692cm0kv88"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "pending_unstakes": [
- {
- "validator_identifier": {
- "address": "string"
}, - "unstaking_amount": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "epochs_until_unlocked": 0
}
], - "unstakes": [
- {
- "validator_identifier": {
- "address": "string"
}, - "unstaking_amount": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "epochs_until_unlocked": 0
}
]
}
Returns user-initiated transactions involving the given account address which have been succesfully committed to the ledger. The transactions are returned in a paginated format, ordered by most recent. If an account address is valid, but doesn't have any ledger transactions against it, this endpoint still returns a successful response.
List of Transactions
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "account_identifier": {
- "address": "rdx1qspacch6qjqy7awspx304sev3n4em302en25jd87yrh4hp47grr692cm0kv88"
}, - "cursor": "0",
- "limit": 10
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "total_count": 0,
- "next_cursor": "string",
- "transactions": [
- {
- "transaction_status": {
- "status": "CONFIRMED",
- "confirmed_time": "2021-07-27T17:35:10.726Z"
}, - "transaction_identifier": {
- "hash": "stringstringstringstringstringstringstringstringstringstringstri"
}, - "actions": [
- {
- "type": "string"
}
], - "fee_paid": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "metadata": {
- "hex": "string",
- "message": "string"
}
}
]
}
Returns information about XRD, including its Radix Resource Identifier.
required | object (NetworkIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Token info
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "token": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "token_supply": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "12014560679861300000000000000"
}, - "info": {
- "total_burned": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "11437173800000000000000"
}, - "total_minted": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "12014572117035100000000000000"
}
}, - "token_properties": {
- "is_supply_mutable": true,
- "symbol": "xrd",
- "granularity": "1",
- "name": "Radix",
- "description": "The Radix Public Network's native token, used to pay the network's required transaction fees and to secure the network through staking to its validator nodes.",
}
}
}
Returns information about any token, given its Radix Resource Identifier.
required | object (NetworkIdentifier) |
required | object (TokenIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Token info
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "token_identifier": {
- "rri": "hpyron_rr1qdukq6q534plnen70k95f80q45cktg0mhmzrzpfyz8jqmgqqqe"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "token": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "token_supply": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "12014560679861300000000000000"
}, - "info": {
- "total_burned": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "11437173800000000000000"
}, - "total_minted": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "12014572117035100000000000000"
}
}, - "token_properties": {
- "is_supply_mutable": true,
- "symbol": "xrd",
- "granularity": "1",
- "name": "Radix",
- "description": "The Radix Public Network's native token, used to pay the network's required transaction fees and to secure the network through staking to its validator nodes.",
}
}
}
Returns the Radix Resource Identifier of a token with the given symbol, created by an account with the given public key.
Token info
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "public_key": {
- "hex": "0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"
}, - "symbol": "yourtoken"
}
{- "token_identifier": {
- "rri": "string"
}
}
Returns information about a validator, given a validator address. If a validator address is valid, but has not appeared on ledger as a validator, this endpoint still returns a successful response.
required | object (NetworkIdentifier) |
required | object (ValidatorIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Validator Info
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "validator_identifier": {
- "address": "rv1qf2x63qx4jdaxj83kkw2yytehvvmu6r2xll5gcp6c9rancmrfsgfwttnczx"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "validator": {
- "validator_identifier": {
- "address": "rv1qf2x63qx4jdaxj83kkw2yytehvvmu6r2xll5gcp6c9rancmrfsgfwttnczx"
}, - "stake": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "100000000000000000000"
}, - "properties": {
- "validator_fee_percentage": 100,
- "name": "Radix Foundation eu-west-1 node0 mainnet",
- "registered": true,
- "owner_account_identifier": {
- "address": "rdx1qspldshtx0s2l2rcnaqtqpqz8vwps2y6d9se0wq25xrg92l66cmp6mcnc6pyu"
}, - "external_stake_accepted": false
}, - "info": {
- "owner_stake": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "0"
}, - "uptime": {
- "epoch_range": {
- "from": 1,
- "to": 1
}, - "uptime_percentage": 100,
- "proposals_missed": 0,
- "proposals_completed": 108320
}
}
}
}
Returns the validator address associated with the given public key.
required | object (NetworkIdentifier) |
required | object (PublicKey) |
Validator Info
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "public_key": {
- "hex": "0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"
}
}
{- "account_identifier": {
- "address": "string"
}
}
Returns information about all validators.
required | object (NetworkIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Ordered list of validators
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "validators": [
- {
- "validator_identifier": {
- "address": "rv1qf2x63qx4jdaxj83kkw2yytehvvmu6r2xll5gcp6c9rancmrfsgfwttnczx"
}, - "stake": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "100000000000000000000"
}, - "properties": {
- "validator_fee_percentage": 100,
- "name": "Radix Foundation eu-west-1 node0 mainnet",
- "registered": true,
- "owner_account_identifier": {
- "address": "rdx1qspldshtx0s2l2rcnaqtqpqz8vwps2y6d9se0wq25xrg92l66cmp6mcnc6pyu"
}, - "external_stake_accepted": false
}, - "info": {
- "owner_stake": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "0"
}, - "uptime": {
- "epoch_range": {
- "from": 1,
- "to": 1
}, - "uptime_percentage": 100,
- "proposals_missed": 0,
- "proposals_completed": 108320
}
}
}
]
}
Returns paginated results about the delegated stakes from accounts to a validator. The results are totalled by account, and ordered by account age (oldest to newest).
Page of account-validator stakes.
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "validator_identifier": {
- "address": "rv1qf2x63qx4jdaxj83kkw2yytehvvmu6r2xll5gcp6c9rancmrfsgfwttnczx"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "total_count": 0,
- "next_cursor": "string",
- "account_stake_delegations": [
- {
- "account": {
- "address": "string"
}, - "validator": {
- "address": "string"
}, - "total_pending_stake": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "total_stake": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "total_pending_unstake": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "total_unstaking": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}
}
]
}
To build, finalize and submit transactions, and to query transaction status and contents.
Returns the current rules used to build and validate transactions in the Radix Engine.
required | object (NetworkIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Rules for transaction construction
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "transaction_rules": {
- "maximum_message_length": 0,
- "minimum_stake": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}
}
}
Returns user-initiated transactions which have been succesfully committed to the ledger. The transactions are returned in a paginated format, ordered by most recent.
A page of the most recent transactions
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "limit": 10
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "next_cursor": "string",
- "transactions": [
- {
- "transaction_status": {
- "status": "CONFIRMED",
- "confirmed_time": "2021-07-27T17:35:10.726Z"
}, - "transaction_identifier": {
- "hash": "stringstringstringstringstringstringstringstringstringstringstri"
}, - "actions": [
- {
- "type": "string"
}
], - "fee_paid": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "metadata": {
- "hex": "string",
- "message": "string"
}
}
]
}
Returns a built unsigned transaction payload, from a set of intended actions.
An unsigned transaction
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "actions": [
- {
- "type": "TransferTokens",
- "from_account": {
- "address": "rdx1qspacch6qjqy7awspx304sev3n4em302en25jd87yrh4hp47grr692cm0kv88"
}, - "to_account": {
- "address": "rdx1qspcvwwuf8s549zyspz683v4n93g9kzpn6u6a9yalwzt00zghg75lmsftwv29"
}, - "amount": {
- "token_identifier": {
- "rri": "xrd_rr1qy5wfsfh"
}, - "value": "123000000000000000"
}
}
], - "fee_payer": {
- "address": "rdx1qspacch6qjqy7awspx304sev3n4em302en25jd87yrh4hp47grr692cm0kv88"
}, - "disable_token_mint_and_burn": true
}
{- "transaction_build": {
- "fee": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "unsigned_transaction": "string",
- "payload_to_sign": "string"
}
}
Returns a signed transaction payload and transaction identifier, from an unsigned transaction payload and signature.
Final Signed Transaction
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "unsigned_transaction": "0d00010776bf65acf2d25e9dcf4c716f5f39f201dccbfa173ad9c7f1c1dbcb8a86776b4d0000000101002100000000000000000000000000000000000000000000000000012901c1cf3900000200450600040279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798010000000000000000000000000000000000000000000000017afba303493b7ff8000800000200450600040279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798010000000000000000000000000000000000000000000000017afba303493b7f9402004506000402c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5010000000000000000000000000000000000000000000000000000000000000064000c003430303030366336663631363432303734363537333734363936653637323037343732363136653733363136333734363936663665",
- "signature": {
- "bytes": "3046022100cda0fcd31bf976aa65c31c180b4f595a61c866252c52898b952b8fe1d8fdcc33022100999e83036f9529c6250c07423d8b57f252dfba1b843385970bfa69f2c367658e",
- "public_key": {
- "hex": "0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"
}
}, - "submit": false
}
{- "signed_transaction": "string",
- "transaction_identifier": {
- "hash": "stringstringstringstringstringstringstringstringstringstringstri"
}
}
Submits a signed transaction payload to the network. The transaction identifier from finalize or submit can then be used to track the transaction status.
Successful Submission
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "signed_transaction": "0d00010776bf65acf2d25e9dcf4c716f5f39f201dccbfa173ad9c7f1c1dbcb8a86776b4d0000000101002100000000000000000000000000000000000000000000000000012901c1cf3900000200450600040279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798010000000000000000000000000000000000000000000000017afba303493b7ff8000800000200450600040279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798010000000000000000000000000000000000000000000000017afba303493b7f9402004506000402c6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5010000000000000000000000000000000000000000000000000000000000000064000c0034303030303663366636313634323037343635373337343639366536373230373437323631366537333631363337343639366636650b00cda0fcd31bf976aa65c31c180b4f595a61c866252c52898b952b8fe1d8fdcc33999e83036f9529c6250c07423d8b57f252dfba1b843385970bfa69f2c367658e"
}
{- "transaction_identifier": {
- "hash": "stringstringstringstringstringstringstringstringstringstringstri"
}
}
Returns the status and contents of the transaction with the given transaction identifier. Transaction identifiers which aren't recognised as either belonging to a committed transaction or a transaction submitted through this Network Gateway may return a TransactionNotFoundError
. Transaction identifiers relating to failed transactions will, after a delay, also be reported as a TransactionNotFoundError
.
required | object (NetworkIdentifier) |
required | object (TransactionIdentifier) |
object (PartialLedgerStateIdentifier) Optional. Allows a client to request a response referencing an earlier ( |
Transaction Status
Gateway Error
{- "network_identifier": {
- "network": "mainnet"
}, - "transaction_identifier": {
- "hash": "ef71a9d6c63444fce6abd2df8fab2755cfb51f6794e578f60d99337193811842"
}
}
{- "ledger_state": {
- "version": 0,
- "timestamp": "string",
- "epoch": 0,
- "round": 0
}, - "transaction": {
- "transaction_status": {
- "status": "CONFIRMED",
- "confirmed_time": "2021-07-27T17:35:10.726Z"
}, - "transaction_identifier": {
- "hash": "stringstringstringstringstringstringstringstringstringstringstri"
}, - "actions": [
- {
- "type": "string"
}
], - "fee_paid": {
- "value": "string",
- "token_identifier": {
- "rri": "string"
}
}, - "metadata": {
- "hex": "string",
- "message": "string"
}
}
}